@c-rex/components 0.0.9 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/package.json +28 -46
  2. package/src/autocomplete.tsx +113 -0
  3. package/src/blog-card.tsx +87 -0
  4. package/src/blur-image.tsx +23 -0
  5. package/src/breadcrumb.tsx +81 -0
  6. package/src/empty.tsx +13 -0
  7. package/src/navbar.tsx +66 -0
  8. package/src/providers/search-state-wrapper.tsx +21 -0
  9. package/src/result-list.tsx +16 -0
  10. package/src/result-view/blog-view.stories.tsx +58 -0
  11. package/src/result-view/blog.tsx +38 -0
  12. package/src/result-view/table-view.stories.tsx +55 -0
  13. package/src/result-view/table.tsx +65 -0
  14. package/src/sidebar.tsx +76 -0
  15. package/src/stories/blog-card.stories.tsx +46 -0
  16. package/src/stories/blur-image.stories.tsx +51 -0
  17. package/src/stories/breadcrumb.stories.tsx +52 -0
  18. package/src/stories/empty.stories.tsx +14 -0
  19. package/src/stories/navbar.stories.tsx +16 -0
  20. package/src/stories/sidebar.stories.tsx +94 -0
  21. package/dist/autocomplete.cjs.js +0 -215
  22. package/dist/autocomplete.cjs.js.map +0 -1
  23. package/dist/autocomplete.d.cts +0 -10
  24. package/dist/autocomplete.d.ts +0 -10
  25. package/dist/autocomplete.esm.js +0 -154
  26. package/dist/autocomplete.esm.js.map +0 -1
  27. package/dist/blog-card.cjs.js +0 -265
  28. package/dist/blog-card.cjs.js.map +0 -1
  29. package/dist/blog-card.d.cts +0 -19
  30. package/dist/blog-card.d.ts +0 -19
  31. package/dist/blog-card.esm.js +0 -192
  32. package/dist/blog-card.esm.js.map +0 -1
  33. package/dist/blur-image.cjs.js +0 -198
  34. package/dist/blur-image.cjs.js.map +0 -1
  35. package/dist/blur-image.d.cts +0 -7
  36. package/dist/blur-image.d.ts +0 -7
  37. package/dist/blur-image.esm.js +0 -125
  38. package/dist/blur-image.esm.js.map +0 -1
  39. package/dist/breadcrumb.cjs.js +0 -159
  40. package/dist/breadcrumb.cjs.js.map +0 -1
  41. package/dist/breadcrumb.d.cts +0 -10
  42. package/dist/breadcrumb.d.ts +0 -10
  43. package/dist/breadcrumb.esm.js +0 -98
  44. package/dist/breadcrumb.esm.js.map +0 -1
  45. package/dist/empty.cjs.js +0 -79
  46. package/dist/empty.cjs.js.map +0 -1
  47. package/dist/empty.d.cts +0 -5
  48. package/dist/empty.d.ts +0 -5
  49. package/dist/empty.esm.js +0 -18
  50. package/dist/empty.esm.js.map +0 -1
  51. package/dist/navbar.cjs.js +0 -134
  52. package/dist/navbar.cjs.js.map +0 -1
  53. package/dist/navbar.d.cts +0 -9
  54. package/dist/navbar.d.ts +0 -9
  55. package/dist/navbar.esm.js +0 -61
  56. package/dist/navbar.esm.js.map +0 -1
  57. package/dist/providers/search-state-wrapper.cjs.js +0 -113
  58. package/dist/providers/search-state-wrapper.cjs.js.map +0 -1
  59. package/dist/providers/search-state-wrapper.d.cts +0 -14
  60. package/dist/providers/search-state-wrapper.d.ts +0 -14
  61. package/dist/providers/search-state-wrapper.esm.js +0 -51
  62. package/dist/providers/search-state-wrapper.esm.js.map +0 -1
  63. package/dist/result-list.cjs.js +0 -321
  64. package/dist/result-list.cjs.js.map +0 -1
  65. package/dist/result-list.d.cts +0 -9
  66. package/dist/result-list.d.ts +0 -9
  67. package/dist/result-list.esm.js +0 -247
  68. package/dist/result-list.esm.js.map +0 -1
  69. package/dist/result-view/blog-view.stories.cjs.js +0 -372
  70. package/dist/result-view/blog-view.stories.cjs.js.map +0 -1
  71. package/dist/result-view/blog-view.stories.d.cts +0 -11
  72. package/dist/result-view/blog-view.stories.d.ts +0 -11
  73. package/dist/result-view/blog-view.stories.esm.js +0 -295
  74. package/dist/result-view/blog-view.stories.esm.js.map +0 -1
  75. package/dist/result-view/blog.cjs.js +0 -290
  76. package/dist/result-view/blog.cjs.js.map +0 -1
  77. package/dist/result-view/blog.d.cts +0 -9
  78. package/dist/result-view/blog.d.ts +0 -9
  79. package/dist/result-view/blog.esm.js +0 -220
  80. package/dist/result-view/blog.esm.js.map +0 -1
  81. package/dist/result-view/table-view.stories.cjs.js +0 -196
  82. package/dist/result-view/table-view.stories.cjs.js.map +0 -1
  83. package/dist/result-view/table-view.stories.d.cts +0 -11
  84. package/dist/result-view/table-view.stories.d.ts +0 -11
  85. package/dist/result-view/table-view.stories.esm.js +0 -131
  86. package/dist/result-view/table-view.stories.esm.js.map +0 -1
  87. package/dist/result-view/table.cjs.js +0 -116
  88. package/dist/result-view/table.cjs.js.map +0 -1
  89. package/dist/result-view/table.d.cts +0 -9
  90. package/dist/result-view/table.d.ts +0 -9
  91. package/dist/result-view/table.esm.js +0 -59
  92. package/dist/result-view/table.esm.js.map +0 -1
  93. package/dist/sidebar.cjs.js +0 -225
  94. package/dist/sidebar.cjs.js.map +0 -1
  95. package/dist/sidebar.d.cts +0 -12
  96. package/dist/sidebar.d.ts +0 -12
  97. package/dist/sidebar.esm.js +0 -164
  98. package/dist/sidebar.esm.js.map +0 -1
  99. package/dist/stories/blog-card.stories.cjs.js +0 -323
  100. package/dist/stories/blog-card.stories.cjs.js.map +0 -1
  101. package/dist/stories/blog-card.stories.d.cts +0 -9
  102. package/dist/stories/blog-card.stories.d.ts +0 -9
  103. package/dist/stories/blog-card.stories.esm.js +0 -242
  104. package/dist/stories/blog-card.stories.esm.js.map +0 -1
  105. package/dist/stories/blur-image.stories.cjs.js +0 -265
  106. package/dist/stories/blur-image.stories.cjs.js.map +0 -1
  107. package/dist/stories/blur-image.stories.d.cts +0 -37
  108. package/dist/stories/blur-image.stories.d.ts +0 -37
  109. package/dist/stories/blur-image.stories.esm.js +0 -180
  110. package/dist/stories/blur-image.stories.esm.js.map +0 -1
  111. package/dist/stories/breadcrumb.stories.cjs.js +0 -214
  112. package/dist/stories/breadcrumb.stories.cjs.js.map +0 -1
  113. package/dist/stories/breadcrumb.stories.d.cts +0 -9
  114. package/dist/stories/breadcrumb.stories.d.ts +0 -9
  115. package/dist/stories/breadcrumb.stories.esm.js +0 -145
  116. package/dist/stories/breadcrumb.stories.esm.js.map +0 -1
  117. package/dist/stories/empty.stories.cjs.js +0 -93
  118. package/dist/stories/empty.stories.cjs.js.map +0 -1
  119. package/dist/stories/empty.stories.d.cts +0 -13
  120. package/dist/stories/empty.stories.d.ts +0 -13
  121. package/dist/stories/empty.stories.esm.js +0 -28
  122. package/dist/stories/empty.stories.esm.js.map +0 -1
  123. package/dist/stories/navbar.stories.cjs.js +0 -151
  124. package/dist/stories/navbar.stories.cjs.js.map +0 -1
  125. package/dist/stories/navbar.stories.d.cts +0 -8
  126. package/dist/stories/navbar.stories.d.ts +0 -8
  127. package/dist/stories/navbar.stories.esm.js +0 -74
  128. package/dist/stories/navbar.stories.esm.js.map +0 -1
  129. package/dist/stories/sidebar.stories.cjs.js +0 -327
  130. package/dist/stories/sidebar.stories.cjs.js.map +0 -1
  131. package/dist/stories/sidebar.stories.d.cts +0 -30
  132. package/dist/stories/sidebar.stories.d.ts +0 -30
  133. package/dist/stories/sidebar.stories.esm.js +0 -258
  134. package/dist/stories/sidebar.stories.esm.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/periotto/Desktop/workspace/c-rex.net-web-client-foundation/packages/components/dist/autocomplete.cjs.js","../src/autocomplete.tsx"],"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","autocomplete_exports","AutoComplete","module","exports","import_cmdk","require","import_lucide_react","import_react","import_input","import_command","import_popover","import_jsx_runtime","initialValue","onSearch","onSelect","useState","query","setQuery","suggestions","setSuggestions","open","setOpen","useEffect","debounceFetch","setTimeout","then","clearTimeout","jsx","className","children","Popover","onOpenChange","jsxs","Command","shouldFilter","PopoverAnchor","asChild","CommandPrimitive","Input","onValueChange","onKeyDown","e","onMouseDown","onFocus","CommandList","PopoverContent","onOpenAutoFocus","preventDefault","onInteractOutside","Element","hasAttribute","length","CommandGroup","map","option","CommandItem","inputValue","Check","CommandEmpty"],"mappings":"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","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/autocomplete.tsx\nvar autocomplete_exports = {};\n__export(autocomplete_exports, {\n AutoComplete: () => AutoComplete\n});\nmodule.exports = __toCommonJS(autocomplete_exports);\nvar import_cmdk = require(\"cmdk\");\nvar import_lucide_react = require(\"lucide-react\");\nvar import_react = require(\"react\");\nvar import_input = require(\"@c-rex/ui/input\");\nvar import_command = require(\"@c-rex/ui/command\");\nvar import_popover = require(\"@c-rex/ui/popover\");\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar AutoComplete = ({\n initialValue,\n onSearch,\n onSelect\n}) => {\n const [query, setQuery] = (0, import_react.useState)(initialValue);\n const [suggestions, setSuggestions] = (0, import_react.useState)([]);\n const [open, setOpen] = (0, import_react.useState)(false);\n (0, import_react.useEffect)(() => {\n const debounceFetch = setTimeout(() => {\n if (query) {\n onSearch(query).then(setSuggestions);\n } else {\n setSuggestions([]);\n }\n }, 300);\n return () => clearTimeout(debounceFetch);\n }, [onSearch, query]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"div\", { className: \"flex items-center\", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_popover.Popover, { open, onOpenChange: setOpen, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_command.Command, { shouldFilter: false, children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_popover.PopoverAnchor, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\n import_cmdk.Command.Input,\n {\n asChild: true,\n value: query,\n onValueChange: setQuery,\n onKeyDown: (e) => setOpen(e.key !== \"Escape\"),\n onMouseDown: () => setOpen(false),\n onFocus: () => setOpen(true),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_input.Input, {})\n }\n ) }),\n !open && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_command.CommandList, { \"aria-hidden\": \"true\", className: \"hidden\" }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\n import_popover.PopoverContent,\n {\n asChild: true,\n onOpenAutoFocus: (e) => e.preventDefault(),\n onInteractOutside: (e) => {\n if (e.target instanceof Element && e.target.hasAttribute(\"cmdk-input\")) {\n e.preventDefault();\n }\n },\n className: \"w-[--radix-popover-trigger-width] p-0\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_command.CommandList, { children: suggestions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_command.CommandGroup, { children: suggestions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(\n import_command.CommandItem,\n {\n value: option,\n onMouseDown: (e) => e.preventDefault(),\n onSelect: (inputValue) => {\n setOpen(false);\n onSelect(inputValue ?? \"\");\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Check, { className: \"mr-2 h-4 w-4 opacity-0\" }),\n option\n ]\n },\n option\n )) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_command.CommandEmpty, { children: \"No suggestions.\" }) })\n }\n )\n ] }) }) });\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n AutoComplete\n});\n","import { Command as CommandPrimitive } from \"cmdk\";\nimport { Check } from \"lucide-react\";\nimport { useEffect, useState } from \"react\";\nimport { Input } from \"@c-rex/ui/input\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList\n} from \"@c-rex/ui/command\";\nimport {\n Popover,\n PopoverAnchor,\n PopoverContent\n} from \"@c-rex/ui/popover\";\n\ntype Props = {\n initialValue: string;\n onSelect: (value: string) => void;\n onSearch: (value: string) => Promise<string[]>;\n};\n\nexport const AutoComplete = ({\n initialValue,\n onSearch,\n onSelect,\n}: Props) => {\n const [query, setQuery] = useState(initialValue);\n const [suggestions, setSuggestions] = useState<string[]>([]);\n\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n const debounceFetch = setTimeout(() => {\n if (query) {\n onSearch(query).then(setSuggestions);\n } else {\n setSuggestions([]);\n }\n }, 300);\n\n return () => clearTimeout(debounceFetch);\n }, [onSearch, query]);\n\n return (\n <div className=\"flex items-center\">\n <Popover open={open} onOpenChange={setOpen}>\n <Command shouldFilter={false}>\n <PopoverAnchor asChild>\n <CommandPrimitive.Input\n asChild\n value={query}\n onValueChange={setQuery}\n onKeyDown={(e) => setOpen(e.key !== \"Escape\")}\n onMouseDown={() => setOpen(false)}\n onFocus={() => setOpen(true)}\n >\n <Input />\n </CommandPrimitive.Input>\n </PopoverAnchor>\n\n {!open && <CommandList aria-hidden=\"true\" className=\"hidden\" />}\n\n <PopoverContent\n asChild\n onOpenAutoFocus={(e) => e.preventDefault()}\n onInteractOutside={(e) => {\n if (\n e.target instanceof Element &&\n e.target.hasAttribute(\"cmdk-input\")\n ) {\n e.preventDefault();\n }\n }}\n className=\"w-[--radix-popover-trigger-width] p-0\"\n >\n <CommandList>\n {/*isLoading && (\n <CommandPrimitive.Loading>\n <div className=\"p-1\">\n <Skeleton className=\"h-6 w-full\" />\n </div>\n </CommandPrimitive.Loading>\n )*/}\n\n {suggestions.length > 0 ? (\n <CommandGroup>\n {suggestions.map((option) => (\n <CommandItem\n key={option}\n value={option}\n onMouseDown={(e) => e.preventDefault()}\n onSelect={(inputValue) => {\n setOpen(false);\n onSelect(inputValue ?? \"\");\n }}\n >\n <Check className=\"mr-2 h-4 w-4 opacity-0\" />\n {option}\n </CommandItem>\n ))}\n </CommandGroup>\n ) : (\n <CommandEmpty>No suggestions.</CommandEmpty>\n )}\n </CommandList>\n </PopoverContent>\n </Command>\n </Popover>\n </div>\n );\n}\n"]}
@@ -1,10 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
-
3
- type Props = {
4
- initialValue: string;
5
- onSelect: (value: string) => void;
6
- onSearch: (value: string) => Promise<string[]>;
7
- };
8
- declare const AutoComplete: ({ initialValue, onSearch, onSelect, }: Props) => react_jsx_runtime.JSX.Element;
9
-
10
- export { AutoComplete };
@@ -1,10 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
-
3
- type Props = {
4
- initialValue: string;
5
- onSelect: (value: string) => void;
6
- onSearch: (value: string) => Promise<string[]>;
7
- };
8
- declare const AutoComplete: ({ initialValue, onSearch, onSelect, }: Props) => react_jsx_runtime.JSX.Element;
9
-
10
- export { AutoComplete };
@@ -1,154 +0,0 @@
1
- // src/autocomplete.tsx
2
- function _array_like_to_array(arr, len) {
3
- if (len == null || len > arr.length) len = arr.length;
4
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
5
- return arr2;
6
- }
7
- function _array_with_holes(arr) {
8
- if (Array.isArray(arr)) return arr;
9
- }
10
- function _instanceof(left, right) {
11
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
12
- return !!right[Symbol.hasInstance](left);
13
- } else {
14
- return left instanceof right;
15
- }
16
- }
17
- function _iterable_to_array_limit(arr, i) {
18
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
19
- if (_i == null) return;
20
- var _arr = [];
21
- var _n = true;
22
- var _d = false;
23
- var _s, _e;
24
- try {
25
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
26
- _arr.push(_s.value);
27
- if (i && _arr.length === i) break;
28
- }
29
- } catch (err) {
30
- _d = true;
31
- _e = err;
32
- } finally{
33
- try {
34
- if (!_n && _i["return"] != null) _i["return"]();
35
- } finally{
36
- if (_d) throw _e;
37
- }
38
- }
39
- return _arr;
40
- }
41
- function _non_iterable_rest() {
42
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43
- }
44
- function _sliced_to_array(arr, i) {
45
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
46
- }
47
- function _unsupported_iterable_to_array(o, minLen) {
48
- if (!o) return;
49
- if (typeof o === "string") return _array_like_to_array(o, minLen);
50
- var n = Object.prototype.toString.call(o).slice(8, -1);
51
- if (n === "Object" && o.constructor) n = o.constructor.name;
52
- if (n === "Map" || n === "Set") return Array.from(n);
53
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
54
- }
55
- import { Command as CommandPrimitive } from "cmdk";
56
- import { Check } from "lucide-react";
57
- import { useEffect, useState } from "react";
58
- import { Input } from "@c-rex/ui/input";
59
- import { Command, CommandEmpty, CommandGroup, CommandItem, CommandList } from "@c-rex/ui/command";
60
- import { Popover, PopoverAnchor, PopoverContent } from "@c-rex/ui/popover";
61
- import { jsx, jsxs } from "react/jsx-runtime";
62
- var AutoComplete = function(param) {
63
- var initialValue = param.initialValue, onSearch = param.onSearch, onSelect = param.onSelect;
64
- var _useState = _sliced_to_array(useState(initialValue), 2), query = _useState[0], setQuery = _useState[1];
65
- var _useState1 = _sliced_to_array(useState([]), 2), suggestions = _useState1[0], setSuggestions = _useState1[1];
66
- var _useState2 = _sliced_to_array(useState(false), 2), open = _useState2[0], setOpen = _useState2[1];
67
- useEffect(function() {
68
- var debounceFetch = setTimeout(function() {
69
- if (query) {
70
- onSearch(query).then(setSuggestions);
71
- } else {
72
- setSuggestions([]);
73
- }
74
- }, 300);
75
- return function() {
76
- return clearTimeout(debounceFetch);
77
- };
78
- }, [
79
- onSearch,
80
- query
81
- ]);
82
- return /* @__PURE__ */ jsx("div", {
83
- className: "flex items-center",
84
- children: /* @__PURE__ */ jsx(Popover, {
85
- open: open,
86
- onOpenChange: setOpen,
87
- children: /* @__PURE__ */ jsxs(Command, {
88
- shouldFilter: false,
89
- children: [
90
- /* @__PURE__ */ jsx(PopoverAnchor, {
91
- asChild: true,
92
- children: /* @__PURE__ */ jsx(CommandPrimitive.Input, {
93
- asChild: true,
94
- value: query,
95
- onValueChange: setQuery,
96
- onKeyDown: function(e) {
97
- return setOpen(e.key !== "Escape");
98
- },
99
- onMouseDown: function() {
100
- return setOpen(false);
101
- },
102
- onFocus: function() {
103
- return setOpen(true);
104
- },
105
- children: /* @__PURE__ */ jsx(Input, {})
106
- })
107
- }),
108
- !open && /* @__PURE__ */ jsx(CommandList, {
109
- "aria-hidden": "true",
110
- className: "hidden"
111
- }),
112
- /* @__PURE__ */ jsx(PopoverContent, {
113
- asChild: true,
114
- onOpenAutoFocus: function(e) {
115
- return e.preventDefault();
116
- },
117
- onInteractOutside: function(e) {
118
- if (_instanceof(e.target, Element) && e.target.hasAttribute("cmdk-input")) {
119
- e.preventDefault();
120
- }
121
- },
122
- className: "w-[--radix-popover-trigger-width] p-0",
123
- children: /* @__PURE__ */ jsx(CommandList, {
124
- children: suggestions.length > 0 ? /* @__PURE__ */ jsx(CommandGroup, {
125
- children: suggestions.map(function(option) {
126
- return /* @__PURE__ */ jsxs(CommandItem, {
127
- value: option,
128
- onMouseDown: function(e) {
129
- return e.preventDefault();
130
- },
131
- onSelect: function(inputValue) {
132
- setOpen(false);
133
- onSelect(inputValue !== null && inputValue !== void 0 ? inputValue : "");
134
- },
135
- children: [
136
- /* @__PURE__ */ jsx(Check, {
137
- className: "mr-2 h-4 w-4 opacity-0"
138
- }),
139
- option
140
- ]
141
- }, option);
142
- })
143
- }) : /* @__PURE__ */ jsx(CommandEmpty, {
144
- children: "No suggestions."
145
- })
146
- })
147
- })
148
- ]
149
- })
150
- })
151
- });
152
- };
153
- export { AutoComplete };
154
- //# sourceMappingURL=autocomplete.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/periotto/Desktop/workspace/c-rex.net-web-client-foundation/packages/components/dist/autocomplete.esm.js","../src/autocomplete.tsx"],"names":["Command","CommandPrimitive","Check","useEffect","useState","Input","CommandEmpty","CommandGroup","CommandItem","CommandList","Popover","PopoverAnchor","PopoverContent","jsx","jsxs","AutoComplete","initialValue","onSearch","onSelect","query","setQuery","suggestions","setSuggestions","open","setOpen","debounceFetch","setTimeout","then","clearTimeout","className","children","onOpenChange","shouldFilter","asChild","value","onValueChange","onKeyDown","e","key","onMouseDown","onFocus","onOpenAutoFocus","preventDefault","onInteractOutside","target","Element","hasAttribute","length","map","option","inputValue"],"mappings":"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","sourcesContent":["// src/autocomplete.tsx\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { Check } from \"lucide-react\";\nimport { useEffect, useState } from \"react\";\nimport { Input } from \"@c-rex/ui/input\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList\n} from \"@c-rex/ui/command\";\nimport {\n Popover,\n PopoverAnchor,\n PopoverContent\n} from \"@c-rex/ui/popover\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar AutoComplete = ({\n initialValue,\n onSearch,\n onSelect\n}) => {\n const [query, setQuery] = useState(initialValue);\n const [suggestions, setSuggestions] = useState([]);\n const [open, setOpen] = useState(false);\n useEffect(() => {\n const debounceFetch = setTimeout(() => {\n if (query) {\n onSearch(query).then(setSuggestions);\n } else {\n setSuggestions([]);\n }\n }, 300);\n return () => clearTimeout(debounceFetch);\n }, [onSearch, query]);\n return /* @__PURE__ */ jsx(\"div\", { className: \"flex items-center\", children: /* @__PURE__ */ jsx(Popover, { open, onOpenChange: setOpen, children: /* @__PURE__ */ jsxs(Command, { shouldFilter: false, children: [\n /* @__PURE__ */ jsx(PopoverAnchor, { asChild: true, children: /* @__PURE__ */ jsx(\n CommandPrimitive.Input,\n {\n asChild: true,\n value: query,\n onValueChange: setQuery,\n onKeyDown: (e) => setOpen(e.key !== \"Escape\"),\n onMouseDown: () => setOpen(false),\n onFocus: () => setOpen(true),\n children: /* @__PURE__ */ jsx(Input, {})\n }\n ) }),\n !open && /* @__PURE__ */ jsx(CommandList, { \"aria-hidden\": \"true\", className: \"hidden\" }),\n /* @__PURE__ */ jsx(\n PopoverContent,\n {\n asChild: true,\n onOpenAutoFocus: (e) => e.preventDefault(),\n onInteractOutside: (e) => {\n if (e.target instanceof Element && e.target.hasAttribute(\"cmdk-input\")) {\n e.preventDefault();\n }\n },\n className: \"w-[--radix-popover-trigger-width] p-0\",\n children: /* @__PURE__ */ jsx(CommandList, { children: suggestions.length > 0 ? /* @__PURE__ */ jsx(CommandGroup, { children: suggestions.map((option) => /* @__PURE__ */ jsxs(\n CommandItem,\n {\n value: option,\n onMouseDown: (e) => e.preventDefault(),\n onSelect: (inputValue) => {\n setOpen(false);\n onSelect(inputValue ?? \"\");\n },\n children: [\n /* @__PURE__ */ jsx(Check, { className: \"mr-2 h-4 w-4 opacity-0\" }),\n option\n ]\n },\n option\n )) }) : /* @__PURE__ */ jsx(CommandEmpty, { children: \"No suggestions.\" }) })\n }\n )\n ] }) }) });\n};\nexport {\n AutoComplete\n};\n","import { Command as CommandPrimitive } from \"cmdk\";\nimport { Check } from \"lucide-react\";\nimport { useEffect, useState } from \"react\";\nimport { Input } from \"@c-rex/ui/input\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList\n} from \"@c-rex/ui/command\";\nimport {\n Popover,\n PopoverAnchor,\n PopoverContent\n} from \"@c-rex/ui/popover\";\n\ntype Props = {\n initialValue: string;\n onSelect: (value: string) => void;\n onSearch: (value: string) => Promise<string[]>;\n};\n\nexport const AutoComplete = ({\n initialValue,\n onSearch,\n onSelect,\n}: Props) => {\n const [query, setQuery] = useState(initialValue);\n const [suggestions, setSuggestions] = useState<string[]>([]);\n\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n const debounceFetch = setTimeout(() => {\n if (query) {\n onSearch(query).then(setSuggestions);\n } else {\n setSuggestions([]);\n }\n }, 300);\n\n return () => clearTimeout(debounceFetch);\n }, [onSearch, query]);\n\n return (\n <div className=\"flex items-center\">\n <Popover open={open} onOpenChange={setOpen}>\n <Command shouldFilter={false}>\n <PopoverAnchor asChild>\n <CommandPrimitive.Input\n asChild\n value={query}\n onValueChange={setQuery}\n onKeyDown={(e) => setOpen(e.key !== \"Escape\")}\n onMouseDown={() => setOpen(false)}\n onFocus={() => setOpen(true)}\n >\n <Input />\n </CommandPrimitive.Input>\n </PopoverAnchor>\n\n {!open && <CommandList aria-hidden=\"true\" className=\"hidden\" />}\n\n <PopoverContent\n asChild\n onOpenAutoFocus={(e) => e.preventDefault()}\n onInteractOutside={(e) => {\n if (\n e.target instanceof Element &&\n e.target.hasAttribute(\"cmdk-input\")\n ) {\n e.preventDefault();\n }\n }}\n className=\"w-[--radix-popover-trigger-width] p-0\"\n >\n <CommandList>\n {/*isLoading && (\n <CommandPrimitive.Loading>\n <div className=\"p-1\">\n <Skeleton className=\"h-6 w-full\" />\n </div>\n </CommandPrimitive.Loading>\n )*/}\n\n {suggestions.length > 0 ? (\n <CommandGroup>\n {suggestions.map((option) => (\n <CommandItem\n key={option}\n value={option}\n onMouseDown={(e) => e.preventDefault()}\n onSelect={(inputValue) => {\n setOpen(false);\n onSelect(inputValue ?? \"\");\n }}\n >\n <Check className=\"mr-2 h-4 w-4 opacity-0\" />\n {option}\n </CommandItem>\n ))}\n </CommandGroup>\n ) : (\n <CommandEmpty>No suggestions.</CommandEmpty>\n )}\n </CommandList>\n </PopoverContent>\n </Command>\n </Popover>\n </div>\n );\n}\n"]}
@@ -1,265 +0,0 @@
1
- "use strict";
2
- function _array_like_to_array(arr, len) {
3
- if (len == null || len > arr.length) len = arr.length;
4
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
5
- return arr2;
6
- }
7
- function _array_with_holes(arr) {
8
- if (Array.isArray(arr)) return arr;
9
- }
10
- function _define_property(obj, key, value) {
11
- if (key in obj) {
12
- Object.defineProperty(obj, key, {
13
- value: value,
14
- enumerable: true,
15
- configurable: true,
16
- writable: true
17
- });
18
- } else {
19
- obj[key] = value;
20
- }
21
- return obj;
22
- }
23
- function _iterable_to_array_limit(arr, i) {
24
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
25
- if (_i == null) return;
26
- var _arr = [];
27
- var _n = true;
28
- var _d = false;
29
- var _s, _e;
30
- try {
31
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
32
- _arr.push(_s.value);
33
- if (i && _arr.length === i) break;
34
- }
35
- } catch (err) {
36
- _d = true;
37
- _e = err;
38
- } finally{
39
- try {
40
- if (!_n && _i["return"] != null) _i["return"]();
41
- } finally{
42
- if (_d) throw _e;
43
- }
44
- }
45
- return _arr;
46
- }
47
- function _non_iterable_rest() {
48
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
49
- }
50
- function _object_spread(target) {
51
- for(var i = 1; i < arguments.length; i++){
52
- var source = arguments[i] != null ? arguments[i] : {};
53
- var ownKeys = Object.keys(source);
54
- if (typeof Object.getOwnPropertySymbols === "function") {
55
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
56
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
57
- }));
58
- }
59
- ownKeys.forEach(function(key) {
60
- _define_property(target, key, source[key]);
61
- });
62
- }
63
- return target;
64
- }
65
- function ownKeys(object, enumerableOnly) {
66
- var keys = Object.keys(object);
67
- if (Object.getOwnPropertySymbols) {
68
- var symbols = Object.getOwnPropertySymbols(object);
69
- if (enumerableOnly) {
70
- symbols = symbols.filter(function(sym) {
71
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
72
- });
73
- }
74
- keys.push.apply(keys, symbols);
75
- }
76
- return keys;
77
- }
78
- function _object_spread_props(target, source) {
79
- source = source != null ? source : {};
80
- if (Object.getOwnPropertyDescriptors) {
81
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
82
- } else {
83
- ownKeys(Object(source)).forEach(function(key) {
84
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
85
- });
86
- }
87
- return target;
88
- }
89
- function _sliced_to_array(arr, i) {
90
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
91
- }
92
- function _type_of(obj) {
93
- "@swc/helpers - typeof";
94
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
95
- }
96
- function _unsupported_iterable_to_array(o, minLen) {
97
- if (!o) return;
98
- if (typeof o === "string") return _array_like_to_array(o, minLen);
99
- var n = Object.prototype.toString.call(o).slice(8, -1);
100
- if (n === "Object" && o.constructor) n = o.constructor.name;
101
- if (n === "Map" || n === "Set") return Array.from(n);
102
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
103
- }
104
- var __create = Object.create;
105
- var __defProp = Object.defineProperty;
106
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
107
- var __getOwnPropNames = Object.getOwnPropertyNames;
108
- var __getProtoOf = Object.getPrototypeOf;
109
- var __hasOwnProp = Object.prototype.hasOwnProperty;
110
- var __export = function(target, all) {
111
- for(var name in all)__defProp(target, name, {
112
- get: all[name],
113
- enumerable: true
114
- });
115
- };
116
- var __copyProps = function(to, from, except, desc) {
117
- if (from && (typeof from === "undefined" ? "undefined" : _type_of(from)) === "object" || typeof from === "function") {
118
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
119
- try {
120
- var _loop = function() {
121
- var key = _step.value;
122
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
123
- get: function() {
124
- return from[key];
125
- },
126
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
127
- });
128
- };
129
- for(var _iterator = __getOwnPropNames(from)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)_loop();
130
- } catch (err) {
131
- _didIteratorError = true;
132
- _iteratorError = err;
133
- } finally{
134
- try {
135
- if (!_iteratorNormalCompletion && _iterator.return != null) {
136
- _iterator.return();
137
- }
138
- } finally{
139
- if (_didIteratorError) {
140
- throw _iteratorError;
141
- }
142
- }
143
- }
144
- }
145
- return to;
146
- };
147
- var __toESM = function(mod, isNodeMode, target) {
148
- return target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(// If the importer is in node compatibility mode or this is not an ESM
149
- // file that has been converted to a CommonJS file using a Babel-
150
- // compatible transform (i.e. "__esModule" has not been set), then set
151
- // "default" to the CommonJS "module.exports" for node compatibility.
152
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
153
- value: mod,
154
- enumerable: true
155
- }) : target, mod);
156
- };
157
- var __toCommonJS = function(mod) {
158
- return __copyProps(__defProp({}, "__esModule", {
159
- value: true
160
- }), mod);
161
- };
162
- // src/blog-card.tsx
163
- var blog_card_exports = {};
164
- __export(blog_card_exports, {
165
- BlogCard: function() {
166
- return BlogCard;
167
- }
168
- });
169
- module.exports = __toCommonJS(blog_card_exports);
170
- var import_link = __toESM(require("next/link"), 1);
171
- // ../utils/src/classMerge.ts
172
- var import_clsx = require("clsx");
173
- var import_tailwind_merge = require("tailwind-merge");
174
- function cn() {
175
- for(var _len = arguments.length, inputs = new Array(_len), _key = 0; _key < _len; _key++){
176
- inputs[_key] = arguments[_key];
177
- }
178
- return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
179
- }
180
- // src/blur-image.tsx
181
- var import_react = require("react");
182
- var import_image = __toESM(require("next/image"), 1);
183
- var import_jsx_runtime = require("react/jsx-runtime");
184
- var BlurImage = function(props) {
185
- var _ref = _sliced_to_array((0, import_react.useState)(true), 2), isLoading = _ref[0], setLoading = _ref[1];
186
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_image.default, _object_spread_props(_object_spread({}, props), {
187
- alt: props.alt,
188
- className: cn(props.className, "duration-500 ease-in-out", isLoading ? "blur-sm" : "blur-0"),
189
- onLoad: function() {
190
- return setLoading(false);
191
- }
192
- }));
193
- };
194
- // src/blog-card.tsx
195
- var import_jsx_runtime2 = require("react/jsx-runtime");
196
- var BlogCard = function(param) {
197
- var data = param.data, priority = param.priority, _param_horizontal = param.horizontal, horizontal = _param_horizontal === void 0 ? false : _param_horizontal;
198
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("article", {
199
- className: cn("group relative", horizontal ? "grid grid-cols-1 gap-3 md:grid-cols-2 md:gap-6" : "flex flex-col space-y-2"),
200
- children: [
201
- data.image && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", {
202
- className: "w-full overflow-hidden rounded-xl border",
203
- children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(BlurImage, {
204
- alt: data.title,
205
- blurDataURL: data.blurDataURL,
206
- className: cn("size-full object-cover object-center", horizontal ? "lg:h-72" : null),
207
- width: 800,
208
- height: 400,
209
- priority: priority,
210
- placeholder: "blur",
211
- src: data.image,
212
- sizes: "(max-width: 768px) 750px, 600px"
213
- })
214
- }),
215
- /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", {
216
- className: cn("flex flex-1 flex-col", horizontal ? "justify-center" : "justify-between"),
217
- children: [
218
- /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", {
219
- className: "w-full",
220
- children: [
221
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("h2", {
222
- className: "my-1.5 line-clamp-2 font-heading text-2xl",
223
- children: data.title
224
- }),
225
- data.description && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", {
226
- className: "line-clamp-2 text-muted-foreground",
227
- children: data.description
228
- })
229
- ]
230
- }),
231
- /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", {
232
- className: "mt-4 flex items-center space-x-3",
233
- children: [
234
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", {
235
- className: "flex items-center -space-x-2",
236
- children: data.authors && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", {
237
- className: "text-sm text-muted-foreground",
238
- children: data.authors
239
- })
240
- }),
241
- data.date && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", {
242
- className: "text-sm text-muted-foreground",
243
- children: data.date
244
- })
245
- ]
246
- })
247
- ]
248
- }),
249
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_link.default, {
250
- href: data.slug,
251
- className: "absolute inset-0",
252
- target: "_blank",
253
- children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", {
254
- className: "sr-only",
255
- children: "View Article"
256
- })
257
- })
258
- ]
259
- });
260
- };
261
- // Annotate the CommonJS export names for ESM import in node:
262
- 0 && (module.exports = {
263
- BlogCard: BlogCard
264
- });
265
- //# sourceMappingURL=blog-card.cjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/periotto/Desktop/workspace/c-rex.net-web-client-foundation/packages/components/dist/blog-card.cjs.js","../src/blog-card.tsx","../../utils/src/classMerge.ts","../src/blur-image.tsx"],"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","blog_card_exports","BlogCard","module","exports","import_link","require","import_clsx","import_tailwind_merge","cn","inputs","twMerge","clsx","import_react","import_image","import_jsx_runtime","BlurImage","props","useState","isLoading","setLoading","jsx","Image","alt","className","onLoad","data","priority","horizontal","import_jsx_runtime2","jsxs","children","image","title","blurDataURL","width","height","placeholder","src","sizes","description","authors","date","Link","href","slug"],"mappings":"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","sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/blog-card.tsx\nvar blog_card_exports = {};\n__export(blog_card_exports, {\n BlogCard: () => BlogCard\n});\nmodule.exports = __toCommonJS(blog_card_exports);\nvar import_link = __toESM(require(\"next/link\"), 1);\n\n// ../utils/src/classMerge.ts\nvar import_clsx = require(\"clsx\");\nvar import_tailwind_merge = require(\"tailwind-merge\");\nfunction cn(...inputs) {\n return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));\n}\n\n// src/blur-image.tsx\nvar import_react = require(\"react\");\nvar import_image = __toESM(require(\"next/image\"), 1);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar BlurImage = (props) => {\n const [isLoading, setLoading] = (0, import_react.useState)(true);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\n import_image.default,\n {\n ...props,\n alt: props.alt,\n className: cn(\n props.className,\n \"duration-500 ease-in-out\",\n isLoading ? \"blur-sm\" : \"blur-0\"\n ),\n onLoad: () => setLoading(false)\n }\n );\n};\n\n// src/blog-card.tsx\nvar import_jsx_runtime2 = require(\"react/jsx-runtime\");\nvar BlogCard = ({\n data,\n priority,\n horizontal = false\n}) => {\n return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(\n \"article\",\n {\n className: cn(\n \"group relative\",\n horizontal ? \"grid grid-cols-1 gap-3 md:grid-cols-2 md:gap-6\" : \"flex flex-col space-y-2\"\n ),\n children: [\n data.image && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"div\", { className: \"w-full overflow-hidden rounded-xl border\", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\n BlurImage,\n {\n alt: data.title,\n blurDataURL: data.blurDataURL,\n className: cn(\n \"size-full object-cover object-center\",\n horizontal ? \"lg:h-72\" : null\n ),\n width: 800,\n height: 400,\n priority,\n placeholder: \"blur\",\n src: data.image,\n sizes: \"(max-width: 768px) 750px, 600px\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(\n \"div\",\n {\n className: cn(\n \"flex flex-1 flex-col\",\n horizontal ? \"justify-center\" : \"justify-between\"\n ),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"h2\", { className: \"my-1.5 line-clamp-2 font-heading text-2xl\", children: data.title }),\n data.description && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"p\", { className: \"line-clamp-2 text-muted-foreground\", children: data.description })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(\"div\", { className: \"mt-4 flex items-center space-x-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"div\", { className: \"flex items-center -space-x-2\", children: data.authors && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"p\", { className: \"text-sm text-muted-foreground\", children: data.authors }) }),\n data.date && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"p\", { className: \"text-sm text-muted-foreground\", children: data.date })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_link.default, { href: data.slug, className: \"absolute inset-0\", target: \"_blank\", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\"span\", { className: \"sr-only\", children: \"View Article\" }) })\n ]\n }\n );\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n BlogCard\n});\n","import Link from \"next/link\";\nimport { cn } from \"@c-rex/utils\";\nimport { BlurImage } from \"./blur-image\";\n\n//import Author from \"./author\";\n\ninterface BlogCardProp {\n data: {\n title: string;\n blurDataURL: string;\n image: string;\n description: string;\n authors: string;\n _id: string;\n date: string;\n slug: string;\n };\n priority?: boolean;\n horizontal?: boolean;\n}\n\nexport const BlogCard = ({\n data,\n priority,\n horizontal = false,\n}: BlogCardProp) => {\n return (\n <article\n className={cn(\n \"group relative\",\n horizontal\n ? \"grid grid-cols-1 gap-3 md:grid-cols-2 md:gap-6\"\n : \"flex flex-col space-y-2\",\n )}\n >\n {data.image && (\n <div className=\"w-full overflow-hidden rounded-xl border\">\n <BlurImage\n alt={data.title}\n blurDataURL={data.blurDataURL}\n className={cn(\n \"size-full object-cover object-center\",\n horizontal ? \"lg:h-72\" : null,\n )}\n width={800}\n height={400}\n priority={priority}\n placeholder=\"blur\"\n src={data.image}\n sizes=\"(max-width: 768px) 750px, 600px\"\n />\n </div>\n )}\n <div\n className={cn(\n \"flex flex-1 flex-col\",\n horizontal ? \"justify-center\" : \"justify-between\",\n )}\n >\n <div className=\"w-full\">\n <h2 className=\"my-1.5 line-clamp-2 font-heading text-2xl\">\n {data.title}\n </h2>\n {data.description && (\n <p className=\"line-clamp-2 text-muted-foreground\">\n {data.description}\n </p>\n )}\n </div>\n <div className=\"mt-4 flex items-center space-x-3\">\n <div className=\"flex items-center -space-x-2\">\n {data.authors && (\n <p className=\"text-sm text-muted-foreground\">{data.authors}</p>\n )}\n </div>\n\n {data.date && (\n <p className=\"text-sm text-muted-foreground\">{data.date}</p>\n )}\n </div>\n </div>\n <Link href={data.slug} className=\"absolute inset-0\" target=\"_blank\">\n <span className=\"sr-only\">View Article</span>\n </Link>\n </article>\n );\n};\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","\"use client\";\n\nimport { useState } from \"react\";\nimport type { ComponentProps } from \"react\";\nimport Image from \"next/image\";\nimport { cn } from \"@c-rex/utils\";\n\nexport const BlurImage = (props: ComponentProps<typeof Image>) => {\n const [isLoading, setLoading] = useState(true);\n\n return (\n <Image\n {...props}\n alt={props.alt}\n className={cn(\n props.className,\n \"duration-500 ease-in-out\",\n isLoading ? \"blur-sm\" : \"blur-0\",\n )}\n onLoad={() => setLoading(false)}\n />\n );\n}\n"]}
@@ -1,19 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
-
3
- interface BlogCardProp {
4
- data: {
5
- title: string;
6
- blurDataURL: string;
7
- image: string;
8
- description: string;
9
- authors: string;
10
- _id: string;
11
- date: string;
12
- slug: string;
13
- };
14
- priority?: boolean;
15
- horizontal?: boolean;
16
- }
17
- declare const BlogCard: ({ data, priority, horizontal, }: BlogCardProp) => react_jsx_runtime.JSX.Element;
18
-
19
- export { BlogCard };
@@ -1,19 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
-
3
- interface BlogCardProp {
4
- data: {
5
- title: string;
6
- blurDataURL: string;
7
- image: string;
8
- description: string;
9
- authors: string;
10
- _id: string;
11
- date: string;
12
- slug: string;
13
- };
14
- priority?: boolean;
15
- horizontal?: boolean;
16
- }
17
- declare const BlogCard: ({ data, priority, horizontal, }: BlogCardProp) => react_jsx_runtime.JSX.Element;
18
-
19
- export { BlogCard };