@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.
- package/package.json +28 -46
- package/src/autocomplete.tsx +113 -0
- package/src/blog-card.tsx +87 -0
- package/src/blur-image.tsx +23 -0
- package/src/breadcrumb.tsx +81 -0
- package/src/empty.tsx +13 -0
- package/src/navbar.tsx +66 -0
- package/src/providers/search-state-wrapper.tsx +21 -0
- package/src/result-list.tsx +16 -0
- package/src/result-view/blog-view.stories.tsx +58 -0
- package/src/result-view/blog.tsx +38 -0
- package/src/result-view/table-view.stories.tsx +55 -0
- package/src/result-view/table.tsx +65 -0
- package/src/sidebar.tsx +76 -0
- package/src/stories/blog-card.stories.tsx +46 -0
- package/src/stories/blur-image.stories.tsx +51 -0
- package/src/stories/breadcrumb.stories.tsx +52 -0
- package/src/stories/empty.stories.tsx +14 -0
- package/src/stories/navbar.stories.tsx +16 -0
- package/src/stories/sidebar.stories.tsx +94 -0
- package/dist/autocomplete.cjs.js +0 -215
- package/dist/autocomplete.cjs.js.map +0 -1
- package/dist/autocomplete.d.cts +0 -10
- package/dist/autocomplete.d.ts +0 -10
- package/dist/autocomplete.esm.js +0 -154
- package/dist/autocomplete.esm.js.map +0 -1
- package/dist/blog-card.cjs.js +0 -265
- package/dist/blog-card.cjs.js.map +0 -1
- package/dist/blog-card.d.cts +0 -19
- package/dist/blog-card.d.ts +0 -19
- package/dist/blog-card.esm.js +0 -192
- package/dist/blog-card.esm.js.map +0 -1
- package/dist/blur-image.cjs.js +0 -198
- package/dist/blur-image.cjs.js.map +0 -1
- package/dist/blur-image.d.cts +0 -7
- package/dist/blur-image.d.ts +0 -7
- package/dist/blur-image.esm.js +0 -125
- package/dist/blur-image.esm.js.map +0 -1
- package/dist/breadcrumb.cjs.js +0 -159
- package/dist/breadcrumb.cjs.js.map +0 -1
- package/dist/breadcrumb.d.cts +0 -10
- package/dist/breadcrumb.d.ts +0 -10
- package/dist/breadcrumb.esm.js +0 -98
- package/dist/breadcrumb.esm.js.map +0 -1
- package/dist/empty.cjs.js +0 -79
- package/dist/empty.cjs.js.map +0 -1
- package/dist/empty.d.cts +0 -5
- package/dist/empty.d.ts +0 -5
- package/dist/empty.esm.js +0 -18
- package/dist/empty.esm.js.map +0 -1
- package/dist/navbar.cjs.js +0 -134
- package/dist/navbar.cjs.js.map +0 -1
- package/dist/navbar.d.cts +0 -9
- package/dist/navbar.d.ts +0 -9
- package/dist/navbar.esm.js +0 -61
- package/dist/navbar.esm.js.map +0 -1
- package/dist/providers/search-state-wrapper.cjs.js +0 -113
- package/dist/providers/search-state-wrapper.cjs.js.map +0 -1
- package/dist/providers/search-state-wrapper.d.cts +0 -14
- package/dist/providers/search-state-wrapper.d.ts +0 -14
- package/dist/providers/search-state-wrapper.esm.js +0 -51
- package/dist/providers/search-state-wrapper.esm.js.map +0 -1
- package/dist/result-list.cjs.js +0 -321
- package/dist/result-list.cjs.js.map +0 -1
- package/dist/result-list.d.cts +0 -9
- package/dist/result-list.d.ts +0 -9
- package/dist/result-list.esm.js +0 -247
- package/dist/result-list.esm.js.map +0 -1
- package/dist/result-view/blog-view.stories.cjs.js +0 -372
- package/dist/result-view/blog-view.stories.cjs.js.map +0 -1
- package/dist/result-view/blog-view.stories.d.cts +0 -11
- package/dist/result-view/blog-view.stories.d.ts +0 -11
- package/dist/result-view/blog-view.stories.esm.js +0 -295
- package/dist/result-view/blog-view.stories.esm.js.map +0 -1
- package/dist/result-view/blog.cjs.js +0 -290
- package/dist/result-view/blog.cjs.js.map +0 -1
- package/dist/result-view/blog.d.cts +0 -9
- package/dist/result-view/blog.d.ts +0 -9
- package/dist/result-view/blog.esm.js +0 -220
- package/dist/result-view/blog.esm.js.map +0 -1
- package/dist/result-view/table-view.stories.cjs.js +0 -196
- package/dist/result-view/table-view.stories.cjs.js.map +0 -1
- package/dist/result-view/table-view.stories.d.cts +0 -11
- package/dist/result-view/table-view.stories.d.ts +0 -11
- package/dist/result-view/table-view.stories.esm.js +0 -131
- package/dist/result-view/table-view.stories.esm.js.map +0 -1
- package/dist/result-view/table.cjs.js +0 -116
- package/dist/result-view/table.cjs.js.map +0 -1
- package/dist/result-view/table.d.cts +0 -9
- package/dist/result-view/table.d.ts +0 -9
- package/dist/result-view/table.esm.js +0 -59
- package/dist/result-view/table.esm.js.map +0 -1
- package/dist/sidebar.cjs.js +0 -225
- package/dist/sidebar.cjs.js.map +0 -1
- package/dist/sidebar.d.cts +0 -12
- package/dist/sidebar.d.ts +0 -12
- package/dist/sidebar.esm.js +0 -164
- package/dist/sidebar.esm.js.map +0 -1
- package/dist/stories/blog-card.stories.cjs.js +0 -323
- package/dist/stories/blog-card.stories.cjs.js.map +0 -1
- package/dist/stories/blog-card.stories.d.cts +0 -9
- package/dist/stories/blog-card.stories.d.ts +0 -9
- package/dist/stories/blog-card.stories.esm.js +0 -242
- package/dist/stories/blog-card.stories.esm.js.map +0 -1
- package/dist/stories/blur-image.stories.cjs.js +0 -265
- package/dist/stories/blur-image.stories.cjs.js.map +0 -1
- package/dist/stories/blur-image.stories.d.cts +0 -37
- package/dist/stories/blur-image.stories.d.ts +0 -37
- package/dist/stories/blur-image.stories.esm.js +0 -180
- package/dist/stories/blur-image.stories.esm.js.map +0 -1
- package/dist/stories/breadcrumb.stories.cjs.js +0 -214
- package/dist/stories/breadcrumb.stories.cjs.js.map +0 -1
- package/dist/stories/breadcrumb.stories.d.cts +0 -9
- package/dist/stories/breadcrumb.stories.d.ts +0 -9
- package/dist/stories/breadcrumb.stories.esm.js +0 -145
- package/dist/stories/breadcrumb.stories.esm.js.map +0 -1
- package/dist/stories/empty.stories.cjs.js +0 -93
- package/dist/stories/empty.stories.cjs.js.map +0 -1
- package/dist/stories/empty.stories.d.cts +0 -13
- package/dist/stories/empty.stories.d.ts +0 -13
- package/dist/stories/empty.stories.esm.js +0 -28
- package/dist/stories/empty.stories.esm.js.map +0 -1
- package/dist/stories/navbar.stories.cjs.js +0 -151
- package/dist/stories/navbar.stories.cjs.js.map +0 -1
- package/dist/stories/navbar.stories.d.cts +0 -8
- package/dist/stories/navbar.stories.d.ts +0 -8
- package/dist/stories/navbar.stories.esm.js +0 -74
- package/dist/stories/navbar.stories.esm.js.map +0 -1
- package/dist/stories/sidebar.stories.cjs.js +0 -327
- package/dist/stories/sidebar.stories.cjs.js.map +0 -1
- package/dist/stories/sidebar.stories.d.cts +0 -30
- package/dist/stories/sidebar.stories.d.ts +0 -30
- package/dist/stories/sidebar.stories.esm.js +0 -258
- package/dist/stories/sidebar.stories.esm.js.map +0 -1
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
// src/blur-image.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 _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 _unsupported_iterable_to_array(o, minLen) {
|
|
93
|
-
if (!o) return;
|
|
94
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
95
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
96
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
97
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
98
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
99
|
-
}
|
|
100
|
-
import { useState } from "react";
|
|
101
|
-
import Image from "next/image";
|
|
102
|
-
// ../utils/src/classMerge.ts
|
|
103
|
-
import { clsx } from "clsx";
|
|
104
|
-
import { twMerge } from "tailwind-merge";
|
|
105
|
-
function cn() {
|
|
106
|
-
for(var _len = arguments.length, inputs = new Array(_len), _key = 0; _key < _len; _key++){
|
|
107
|
-
inputs[_key] = arguments[_key];
|
|
108
|
-
}
|
|
109
|
-
return twMerge(clsx(inputs));
|
|
110
|
-
}
|
|
111
|
-
// src/blur-image.tsx
|
|
112
|
-
import { jsx } from "react/jsx-runtime";
|
|
113
|
-
var BlurImage = function(props) {
|
|
114
|
-
var _useState = _sliced_to_array(useState(true), 2), isLoading = _useState[0], setLoading = _useState[1];
|
|
115
|
-
return /* @__PURE__ */ jsx(Image, _object_spread_props(_object_spread({}, props), {
|
|
116
|
-
alt: props.alt,
|
|
117
|
-
className: cn(props.className, "duration-500 ease-in-out", isLoading ? "blur-sm" : "blur-0"),
|
|
118
|
-
onLoad: function() {
|
|
119
|
-
return setLoading(false);
|
|
120
|
-
}
|
|
121
|
-
}));
|
|
122
|
-
};
|
|
123
|
-
// src/stories/blur-image.stories.tsx
|
|
124
|
-
var meta = {
|
|
125
|
-
title: "Components/BlurImage",
|
|
126
|
-
component: BlurImage,
|
|
127
|
-
tags: [
|
|
128
|
-
"autodocs"
|
|
129
|
-
],
|
|
130
|
-
parameters: {
|
|
131
|
-
layout: "centered"
|
|
132
|
-
},
|
|
133
|
-
argTypes: {
|
|
134
|
-
src: {
|
|
135
|
-
control: "text"
|
|
136
|
-
},
|
|
137
|
-
alt: {
|
|
138
|
-
control: "text"
|
|
139
|
-
},
|
|
140
|
-
width: {
|
|
141
|
-
control: "number"
|
|
142
|
-
},
|
|
143
|
-
height: {
|
|
144
|
-
control: "number"
|
|
145
|
-
},
|
|
146
|
-
className: {
|
|
147
|
-
control: "text"
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
};
|
|
151
|
-
var blur_image_stories_default = meta;
|
|
152
|
-
var Default = {
|
|
153
|
-
args: {
|
|
154
|
-
src: "https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1",
|
|
155
|
-
alt: "Sample image with blur effect",
|
|
156
|
-
width: 400,
|
|
157
|
-
height: 300,
|
|
158
|
-
className: "rounded-lg"
|
|
159
|
-
}
|
|
160
|
-
};
|
|
161
|
-
var SmallImage = {
|
|
162
|
-
args: {
|
|
163
|
-
src: "https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1",
|
|
164
|
-
alt: "Small sample image with blur effect",
|
|
165
|
-
width: 200,
|
|
166
|
-
height: 150,
|
|
167
|
-
className: "rounded-lg"
|
|
168
|
-
}
|
|
169
|
-
};
|
|
170
|
-
var RoundedImage = {
|
|
171
|
-
args: {
|
|
172
|
-
src: "https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1",
|
|
173
|
-
alt: "Rounded sample image with blur effect",
|
|
174
|
-
width: 300,
|
|
175
|
-
height: 300,
|
|
176
|
-
className: "rounded-full"
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
export { Default, RoundedImage, SmallImage, blur_image_stories_default as default };
|
|
180
|
-
//# sourceMappingURL=blur-image.stories.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/periotto/Desktop/workspace/c-rex.net-web-client-foundation/packages/components/dist/stories/blur-image.stories.esm.js","../../src/blur-image.tsx","../../../utils/src/classMerge.ts","../../src/stories/blur-image.stories.tsx"],"names":["useState","Image","clsx","twMerge","cn","inputs","jsx","BlurImage","props","isLoading","setLoading","alt","className","onLoad","meta","title","component","tags","parameters","layout","argTypes","src","control","width","height","blur_image_stories_default","Default","args","SmallImage","RoundedImage","default"],"mappings":"AAAA,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACErB,SAASA,QAAA,QAAgB,QAAA;AAEzB,OAAOC,WAAW,aAAA;ADAlB,6BAA6B;AEJ7B,SAASC,IAAA,QAA6B,OAAA;AACtC,SAASC,OAAA,QAAe,iBAAA;AAEjB,SAASC;IAAA,IAAA,IAAA,OAAA,UAAA,QAAA,AAAMC,SAAN,UAAA,OAAA,OAAA,GAAA,OAAA,MAAA;QAAMA,OAAN,QAAA,SAAA,CAAA,KAAM;;IAClB,OAAOF,QAAQD,KAAKG;AACxB;AFMA,qBAAqB;ACAb,SAAAC,GAAA,QAAA,oBAAA;AAJD,IAAMC,YAAY,SAACC;IACtB,IAAgCR,6BAAAA,SAAS,WAAlCS,YAAyBT,cAAdU,aAAcV;IAEhC,OACI,aAAA,GAAAM,IAACL,OAAA,wCACOO;QACJG,KAAKH,MAAMG,GAAA;QACXC,WAAWR,GACPI,MAAMI,SAAA,EACN,4BACAH,YAAY,YAAY;QAE5BI,QAAQ;mBAAMH,WAAW;;;AAGrC;ADQA,qCAAqC;AG3BrC,IAAMI,OAAO;IACTC,OAAO;IACPC,WAAWT;IACXU,MAAM;QAAC;KAAU;IACjBC,YAAY;QACRC,QAAQ;IACZ;IACAC,UAAU;QACNC,KAAK;YAAEC,SAAS;QAAO;QACvBX,KAAK;YAAEW,SAAS;QAAO;QACvBC,OAAO;YAAED,SAAS;QAAS;QAC3BE,QAAQ;YAAEF,SAAS;QAAS;QAC5BV,WAAW;YAAEU,SAAS;QAAO;IACjC;AACJ;AAEA,IAAOG,6BAAQX;AAGR,IAAMY,UAAiB;IAC1BC,MAAM;QACFN,KAAK;QACLV,KAAK;QACLY,OAAO;QACPC,QAAQ;QACRZ,WAAW;IACf;AACJ;AAEO,IAAMgB,aAAoB;IAC7BD,MAAM;QACFN,KAAK;QACLV,KAAK;QACLY,OAAO;QACPC,QAAQ;QACRZ,WAAW;IACf;AACJ;AAEO,IAAMiB,eAAsB;IAC/BF,MAAM;QACFN,KAAK;QACLV,KAAK;QACLY,OAAO;QACPC,QAAQ;QACRZ,WAAW;IACf;AACJ;AHwBA,SACEc,OAAO,EACPG,YAAY,EACZD,UAAU,EACVH,8BAA8BK,OAAO,GACrC","sourcesContent":["// src/blur-image.tsx\nimport { useState } from \"react\";\nimport Image from \"next/image\";\n\n// ../utils/src/classMerge.ts\nimport { clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\nfunction cn(...inputs) {\n return twMerge(clsx(inputs));\n}\n\n// src/blur-image.tsx\nimport { jsx } from \"react/jsx-runtime\";\nvar BlurImage = (props) => {\n const [isLoading, setLoading] = useState(true);\n return /* @__PURE__ */ jsx(\n Image,\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/stories/blur-image.stories.tsx\nvar meta = {\n title: \"Components/BlurImage\",\n component: BlurImage,\n tags: [\"autodocs\"],\n parameters: {\n layout: \"centered\"\n },\n argTypes: {\n src: { control: \"text\" },\n alt: { control: \"text\" },\n width: { control: \"number\" },\n height: { control: \"number\" },\n className: { control: \"text\" }\n }\n};\nvar blur_image_stories_default = meta;\nvar Default = {\n args: {\n src: \"https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1\",\n alt: \"Sample image with blur effect\",\n width: 400,\n height: 300,\n className: \"rounded-lg\"\n }\n};\nvar SmallImage = {\n args: {\n src: \"https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1\",\n alt: \"Small sample image with blur effect\",\n width: 200,\n height: 150,\n className: \"rounded-lg\"\n }\n};\nvar RoundedImage = {\n args: {\n src: \"https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1\",\n alt: \"Rounded sample image with blur effect\",\n width: 300,\n height: 300,\n className: \"rounded-full\"\n }\n};\nexport {\n Default,\n RoundedImage,\n SmallImage,\n blur_image_stories_default as default\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","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import type { Meta, StoryObj } from '@storybook/react';\nimport { BlurImage } from '../blur-image';\n\nconst meta = {\n title: 'Components/BlurImage',\n component: BlurImage,\n tags: ['autodocs'],\n parameters: {\n layout: 'centered',\n },\n argTypes: {\n src: { control: 'text' },\n alt: { control: 'text' },\n width: { control: 'number' },\n height: { control: 'number' },\n className: { control: 'text' },\n },\n} satisfies Meta<typeof BlurImage>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {\n args: {\n src: 'https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1',\n alt: 'Sample image with blur effect',\n width: 400,\n height: 300,\n className: 'rounded-lg',\n },\n};\n\nexport const SmallImage: Story = {\n args: {\n src: 'https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1',\n alt: 'Small sample image with blur effect',\n width: 200,\n height: 150,\n className: 'rounded-lg',\n },\n};\n\nexport const RoundedImage: Story = {\n args: {\n src: 'https://images.pexels.com/photos/31712301/pexels-photo-31712301/free-photo-of-scenic-cycling-tour-in-andernach-fields.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1',\n alt: 'Rounded sample image with blur effect',\n width: 300,\n height: 300,\n className: 'rounded-full',\n },\n};"]}
|
|
@@ -1,214 +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_without_holes(arr) {
|
|
8
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
9
|
-
}
|
|
10
|
-
function _iterable_to_array(iter) {
|
|
11
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
12
|
-
}
|
|
13
|
-
function _non_iterable_spread() {
|
|
14
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
15
|
-
}
|
|
16
|
-
function _to_consumable_array(arr) {
|
|
17
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
18
|
-
}
|
|
19
|
-
function _type_of(obj) {
|
|
20
|
-
"@swc/helpers - typeof";
|
|
21
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
22
|
-
}
|
|
23
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
24
|
-
if (!o) return;
|
|
25
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
26
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
27
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
28
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
29
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
30
|
-
}
|
|
31
|
-
var __defProp = Object.defineProperty;
|
|
32
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
33
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
34
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
35
|
-
var __export = function(target, all) {
|
|
36
|
-
for(var name in all)__defProp(target, name, {
|
|
37
|
-
get: all[name],
|
|
38
|
-
enumerable: true
|
|
39
|
-
});
|
|
40
|
-
};
|
|
41
|
-
var __copyProps = function(to, from, except, desc) {
|
|
42
|
-
if (from && (typeof from === "undefined" ? "undefined" : _type_of(from)) === "object" || typeof from === "function") {
|
|
43
|
-
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
44
|
-
try {
|
|
45
|
-
var _loop = function() {
|
|
46
|
-
var key = _step.value;
|
|
47
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
48
|
-
get: function() {
|
|
49
|
-
return from[key];
|
|
50
|
-
},
|
|
51
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
52
|
-
});
|
|
53
|
-
};
|
|
54
|
-
for(var _iterator = __getOwnPropNames(from)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)_loop();
|
|
55
|
-
} catch (err) {
|
|
56
|
-
_didIteratorError = true;
|
|
57
|
-
_iteratorError = err;
|
|
58
|
-
} finally{
|
|
59
|
-
try {
|
|
60
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
61
|
-
_iterator.return();
|
|
62
|
-
}
|
|
63
|
-
} finally{
|
|
64
|
-
if (_didIteratorError) {
|
|
65
|
-
throw _iteratorError;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
return to;
|
|
71
|
-
};
|
|
72
|
-
var __toCommonJS = function(mod) {
|
|
73
|
-
return __copyProps(__defProp({}, "__esModule", {
|
|
74
|
-
value: true
|
|
75
|
-
}), mod);
|
|
76
|
-
};
|
|
77
|
-
// src/stories/breadcrumb.stories.tsx
|
|
78
|
-
var breadcrumb_stories_exports = {};
|
|
79
|
-
__export(breadcrumb_stories_exports, {
|
|
80
|
-
Default: function() {
|
|
81
|
-
return Default;
|
|
82
|
-
},
|
|
83
|
-
Loading: function() {
|
|
84
|
-
return Loading;
|
|
85
|
-
},
|
|
86
|
-
default: function() {
|
|
87
|
-
return breadcrumb_stories_default;
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
module.exports = __toCommonJS(breadcrumb_stories_exports);
|
|
91
|
-
// src/breadcrumb.tsx
|
|
92
|
-
var import_breadcrumb = require("@c-rex/ui/breadcrumb");
|
|
93
|
-
var import_skeleton = require("@c-rex/ui/skeleton");
|
|
94
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
|
95
|
-
var Breadcrumb = function(param) {
|
|
96
|
-
var items = param.items, loading = param.loading;
|
|
97
|
-
if (!items) {
|
|
98
|
-
return null;
|
|
99
|
-
}
|
|
100
|
-
if (loading) {
|
|
101
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.Breadcrumb, {
|
|
102
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_breadcrumb.BreadcrumbList, {
|
|
103
|
-
children: [
|
|
104
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, {
|
|
105
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbPage, {
|
|
106
|
-
children: "Home"
|
|
107
|
-
})
|
|
108
|
-
}),
|
|
109
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbSeparator, {}),
|
|
110
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, {
|
|
111
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_skeleton.Skeleton, {
|
|
112
|
-
className: "w-40 h-6"
|
|
113
|
-
})
|
|
114
|
-
}),
|
|
115
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbSeparator, {}),
|
|
116
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, {
|
|
117
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_skeleton.Skeleton, {
|
|
118
|
-
className: "w-40 h-6"
|
|
119
|
-
})
|
|
120
|
-
})
|
|
121
|
-
]
|
|
122
|
-
})
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
var homeItem = {
|
|
126
|
-
link: "/",
|
|
127
|
-
label: "Home",
|
|
128
|
-
id: "home",
|
|
129
|
-
active: false,
|
|
130
|
-
children: []
|
|
131
|
-
};
|
|
132
|
-
var newItemList = [
|
|
133
|
-
homeItem
|
|
134
|
-
].concat(_to_consumable_array(items));
|
|
135
|
-
var renderLink = function(showLink, item) {
|
|
136
|
-
if (showLink) {
|
|
137
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbLink, {
|
|
138
|
-
href: item.link,
|
|
139
|
-
children: item.label
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbPage, {
|
|
143
|
-
children: item.label
|
|
144
|
-
});
|
|
145
|
-
};
|
|
146
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.Breadcrumb, {
|
|
147
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbList, {
|
|
148
|
-
children: newItemList.map(function(item, index) {
|
|
149
|
-
var isLast = index === newItemList.length - 1;
|
|
150
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
|
|
151
|
-
children: [
|
|
152
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, {
|
|
153
|
-
children: renderLink(!isLast, item)
|
|
154
|
-
}, "".concat(item.label, "-item")),
|
|
155
|
-
!isLast && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbSeparator, {}, "".concat(item.label, "-separator"))
|
|
156
|
-
]
|
|
157
|
-
});
|
|
158
|
-
})
|
|
159
|
-
})
|
|
160
|
-
});
|
|
161
|
-
};
|
|
162
|
-
// src/stories/breadcrumb.stories.tsx
|
|
163
|
-
var meta = {
|
|
164
|
-
title: "Components/Breadcrumb",
|
|
165
|
-
component: Breadcrumb,
|
|
166
|
-
tags: [
|
|
167
|
-
"autodocs"
|
|
168
|
-
],
|
|
169
|
-
parameters: {
|
|
170
|
-
layout: "centered"
|
|
171
|
-
}
|
|
172
|
-
};
|
|
173
|
-
var breadcrumb_stories_default = meta;
|
|
174
|
-
var mockItems = [
|
|
175
|
-
{
|
|
176
|
-
id: "docs",
|
|
177
|
-
label: "Documentation",
|
|
178
|
-
link: "/docs",
|
|
179
|
-
active: false,
|
|
180
|
-
children: []
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
id: "components",
|
|
184
|
-
label: "Components",
|
|
185
|
-
link: "/docs/components",
|
|
186
|
-
active: false,
|
|
187
|
-
children: []
|
|
188
|
-
},
|
|
189
|
-
{
|
|
190
|
-
id: "breadcrumb",
|
|
191
|
-
label: "Breadcrumb",
|
|
192
|
-
link: "/docs/components/breadcrumb",
|
|
193
|
-
active: true,
|
|
194
|
-
children: []
|
|
195
|
-
}
|
|
196
|
-
];
|
|
197
|
-
var Default = {
|
|
198
|
-
args: {
|
|
199
|
-
items: mockItems,
|
|
200
|
-
loading: false
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
var Loading = {
|
|
204
|
-
args: {
|
|
205
|
-
items: [],
|
|
206
|
-
loading: true
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
210
|
-
0 && (module.exports = {
|
|
211
|
-
Default: Default,
|
|
212
|
-
Loading: Loading
|
|
213
|
-
});
|
|
214
|
-
//# sourceMappingURL=breadcrumb.stories.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/periotto/Desktop/workspace/c-rex.net-web-client-foundation/packages/components/dist/stories/breadcrumb.stories.cjs.js","../../src/stories/breadcrumb.stories.tsx","../../src/breadcrumb.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","breadcrumb_stories_exports","Default","Loading","default","breadcrumb_stories_default","module","exports","import_breadcrumb","require","import_skeleton","import_jsx_runtime","Breadcrumb","items","loading","jsx","BreadcrumbComponent","children","jsxs","BreadcrumbList","BreadcrumbItem","BreadcrumbPage","BreadcrumbSeparator","Skeleton","className","homeItem","link","label","id","active","newItemList","renderLink","showLink","item","BreadcrumbLink","href","map","index","isLast","length","Fragment","meta","title","component","tags","parameters","layout","mockItems","args"],"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/stories/breadcrumb.stories.tsx\nvar breadcrumb_stories_exports = {};\n__export(breadcrumb_stories_exports, {\n Default: () => Default,\n Loading: () => Loading,\n default: () => breadcrumb_stories_default\n});\nmodule.exports = __toCommonJS(breadcrumb_stories_exports);\n\n// src/breadcrumb.tsx\nvar import_breadcrumb = require(\"@c-rex/ui/breadcrumb\");\nvar import_skeleton = require(\"@c-rex/ui/skeleton\");\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar Breadcrumb = ({ items, loading }) => {\n if (!items) {\n return null;\n }\n if (loading) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.Breadcrumb, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_breadcrumb.BreadcrumbList, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbPage, { children: \"Home\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbSeparator, {}),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_skeleton.Skeleton, { className: \"w-40 h-6\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbSeparator, {}),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_skeleton.Skeleton, { className: \"w-40 h-6\" }) })\n ] }) });\n }\n const homeItem = {\n link: \"/\",\n label: \"Home\",\n id: \"home\",\n active: false,\n children: []\n };\n const newItemList = [homeItem, ...items];\n const renderLink = (showLink, item) => {\n if (showLink) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbLink, { href: item.link, children: item.label });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbPage, { children: item.label });\n };\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.Breadcrumb, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbList, { children: newItemList.map((item, index) => {\n const isLast = index === newItemList.length - 1;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbItem, { children: renderLink(!isLast, item) }, `${item.label}-item`),\n !isLast && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_breadcrumb.BreadcrumbSeparator, {}, `${item.label}-separator`)\n ] });\n }) }) });\n};\n\n// src/stories/breadcrumb.stories.tsx\nvar meta = {\n title: \"Components/Breadcrumb\",\n component: Breadcrumb,\n tags: [\"autodocs\"],\n parameters: {\n layout: \"centered\"\n }\n};\nvar breadcrumb_stories_default = meta;\nvar mockItems = [\n {\n id: \"docs\",\n label: \"Documentation\",\n link: \"/docs\",\n active: false,\n children: []\n },\n {\n id: \"components\",\n label: \"Components\",\n link: \"/docs/components\",\n active: false,\n children: []\n },\n {\n id: \"breadcrumb\",\n label: \"Breadcrumb\",\n link: \"/docs/components/breadcrumb\",\n active: true,\n children: []\n }\n];\nvar Default = {\n args: {\n items: mockItems,\n loading: false\n }\n};\nvar Loading = {\n args: {\n items: [],\n loading: true\n }\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n Default,\n Loading\n});\n","import type { Meta, StoryObj } from '@storybook/react';\nimport { Breadcrumb } from '../breadcrumb';\n\nconst meta: Meta = {\n title: 'Components/Breadcrumb',\n component: Breadcrumb,\n tags: ['autodocs'],\n parameters: {\n layout: 'centered',\n }\n} satisfies Meta;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nconst mockItems = [\n {\n id: 'docs',\n label: 'Documentation',\n link: '/docs',\n active: false,\n children: [],\n },\n {\n id: 'components',\n label: 'Components',\n link: '/docs/components',\n active: false,\n children: [],\n },\n {\n id: 'breadcrumb',\n label: 'Breadcrumb',\n link: '/docs/components/breadcrumb',\n active: true,\n children: [],\n },\n];\n\nexport const Default: Story = {\n args: {\n items: mockItems,\n loading: false,\n },\n};\n\nexport const Loading: Story = {\n args: {\n items: [],\n loading: true,\n },\n};","import { FC, ReactNode } from \"react\";\nimport {\n Breadcrumb as BreadcrumbComponent,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from \"@c-rex/ui/breadcrumb\";\nimport { Skeleton } from \"@c-rex/ui/skeleton\";\nimport { TreeOfContent } from \"@c-rex/interfaces\";\n\ninterface BreadcrumbProps {\n items: TreeOfContent[];\n loading?: boolean;\n}\n\nexport const Breadcrumb: FC<BreadcrumbProps> = ({ items, loading }) => {\n if (!items) {\n return null;\n }\n\n if (loading) {\n return (\n <BreadcrumbComponent>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbPage>Home</BreadcrumbPage>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <Skeleton className=\"w-40 h-6\" />\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <Skeleton className=\"w-40 h-6\" />\n </BreadcrumbItem>\n </BreadcrumbList>\n </BreadcrumbComponent>\n );\n }\n\n const homeItem: TreeOfContent = {\n link: \"/\",\n label: \"Home\",\n id: \"home\",\n active: false,\n children: [],\n };\n\n const newItemList: TreeOfContent[] = [homeItem, ...items];\n\n const renderLink = (showLink: boolean, item: TreeOfContent): ReactNode => {\n if (showLink) {\n return <BreadcrumbLink href={item.link}>{item.label}</BreadcrumbLink>;\n }\n\n return <BreadcrumbPage>{item.label}</BreadcrumbPage>;\n };\n\n return (\n <BreadcrumbComponent>\n <BreadcrumbList>\n {newItemList.map((item, index) => {\n const isLast = index === newItemList.length - 1;\n\n return (\n <>\n <BreadcrumbItem key={`${item.label}-item`}>\n {renderLink(!isLast, item)}\n </BreadcrumbItem>\n {!isLast && (\n <BreadcrumbSeparator key={`${item.label}-separator`} />\n )}\n </>\n );\n })}\n </BreadcrumbList>\n </BreadcrumbComponent>\n );\n};"]}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
// src/breadcrumb.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_without_holes(arr) {
|
|
8
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
9
|
-
}
|
|
10
|
-
function _iterable_to_array(iter) {
|
|
11
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
12
|
-
}
|
|
13
|
-
function _non_iterable_spread() {
|
|
14
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
15
|
-
}
|
|
16
|
-
function _to_consumable_array(arr) {
|
|
17
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
18
|
-
}
|
|
19
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
20
|
-
if (!o) return;
|
|
21
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
22
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
23
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
24
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
25
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
26
|
-
}
|
|
27
|
-
import { Breadcrumb as BreadcrumbComponent, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from "@c-rex/ui/breadcrumb";
|
|
28
|
-
import { Skeleton } from "@c-rex/ui/skeleton";
|
|
29
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
30
|
-
var Breadcrumb = function(param) {
|
|
31
|
-
var items = param.items, loading = param.loading;
|
|
32
|
-
if (!items) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
if (loading) {
|
|
36
|
-
return /* @__PURE__ */ jsx(BreadcrumbComponent, {
|
|
37
|
-
children: /* @__PURE__ */ jsxs(BreadcrumbList, {
|
|
38
|
-
children: [
|
|
39
|
-
/* @__PURE__ */ jsx(BreadcrumbItem, {
|
|
40
|
-
children: /* @__PURE__ */ jsx(BreadcrumbPage, {
|
|
41
|
-
children: "Home"
|
|
42
|
-
})
|
|
43
|
-
}),
|
|
44
|
-
/* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
|
|
45
|
-
/* @__PURE__ */ jsx(BreadcrumbItem, {
|
|
46
|
-
children: /* @__PURE__ */ jsx(Skeleton, {
|
|
47
|
-
className: "w-40 h-6"
|
|
48
|
-
})
|
|
49
|
-
}),
|
|
50
|
-
/* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
|
|
51
|
-
/* @__PURE__ */ jsx(BreadcrumbItem, {
|
|
52
|
-
children: /* @__PURE__ */ jsx(Skeleton, {
|
|
53
|
-
className: "w-40 h-6"
|
|
54
|
-
})
|
|
55
|
-
})
|
|
56
|
-
]
|
|
57
|
-
})
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
var homeItem = {
|
|
61
|
-
link: "/",
|
|
62
|
-
label: "Home",
|
|
63
|
-
id: "home",
|
|
64
|
-
active: false,
|
|
65
|
-
children: []
|
|
66
|
-
};
|
|
67
|
-
var newItemList = [
|
|
68
|
-
homeItem
|
|
69
|
-
].concat(_to_consumable_array(items));
|
|
70
|
-
var renderLink = function(showLink, item) {
|
|
71
|
-
if (showLink) {
|
|
72
|
-
return /* @__PURE__ */ jsx(BreadcrumbLink, {
|
|
73
|
-
href: item.link,
|
|
74
|
-
children: item.label
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
return /* @__PURE__ */ jsx(BreadcrumbPage, {
|
|
78
|
-
children: item.label
|
|
79
|
-
});
|
|
80
|
-
};
|
|
81
|
-
return /* @__PURE__ */ jsx(BreadcrumbComponent, {
|
|
82
|
-
children: /* @__PURE__ */ jsx(BreadcrumbList, {
|
|
83
|
-
children: newItemList.map(function(item, index) {
|
|
84
|
-
var isLast = index === newItemList.length - 1;
|
|
85
|
-
return /* @__PURE__ */ jsxs(Fragment, {
|
|
86
|
-
children: [
|
|
87
|
-
/* @__PURE__ */ jsx(BreadcrumbItem, {
|
|
88
|
-
children: renderLink(!isLast, item)
|
|
89
|
-
}, "".concat(item.label, "-item")),
|
|
90
|
-
!isLast && /* @__PURE__ */ jsx(BreadcrumbSeparator, {}, "".concat(item.label, "-separator"))
|
|
91
|
-
]
|
|
92
|
-
});
|
|
93
|
-
})
|
|
94
|
-
})
|
|
95
|
-
});
|
|
96
|
-
};
|
|
97
|
-
// src/stories/breadcrumb.stories.tsx
|
|
98
|
-
var meta = {
|
|
99
|
-
title: "Components/Breadcrumb",
|
|
100
|
-
component: Breadcrumb,
|
|
101
|
-
tags: [
|
|
102
|
-
"autodocs"
|
|
103
|
-
],
|
|
104
|
-
parameters: {
|
|
105
|
-
layout: "centered"
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
var breadcrumb_stories_default = meta;
|
|
109
|
-
var mockItems = [
|
|
110
|
-
{
|
|
111
|
-
id: "docs",
|
|
112
|
-
label: "Documentation",
|
|
113
|
-
link: "/docs",
|
|
114
|
-
active: false,
|
|
115
|
-
children: []
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
id: "components",
|
|
119
|
-
label: "Components",
|
|
120
|
-
link: "/docs/components",
|
|
121
|
-
active: false,
|
|
122
|
-
children: []
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
id: "breadcrumb",
|
|
126
|
-
label: "Breadcrumb",
|
|
127
|
-
link: "/docs/components/breadcrumb",
|
|
128
|
-
active: true,
|
|
129
|
-
children: []
|
|
130
|
-
}
|
|
131
|
-
];
|
|
132
|
-
var Default = {
|
|
133
|
-
args: {
|
|
134
|
-
items: mockItems,
|
|
135
|
-
loading: false
|
|
136
|
-
}
|
|
137
|
-
};
|
|
138
|
-
var Loading = {
|
|
139
|
-
args: {
|
|
140
|
-
items: [],
|
|
141
|
-
loading: true
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
export { Default, Loading, breadcrumb_stories_default as default };
|
|
145
|
-
//# sourceMappingURL=breadcrumb.stories.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/periotto/Desktop/workspace/c-rex.net-web-client-foundation/packages/components/dist/stories/breadcrumb.stories.esm.js","../../src/breadcrumb.tsx","../../src/stories/breadcrumb.stories.tsx"],"names":["Breadcrumb","BreadcrumbComponent","BreadcrumbItem","BreadcrumbLink","BreadcrumbList","BreadcrumbPage","BreadcrumbSeparator","Skeleton","Fragment","jsx","jsxs","items","loading","children","className","homeItem","link","label","id","active","newItemList","renderLink","showLink","item","href","map","index","isLast","length","meta","title","component","tags","parameters","layout","breadcrumb_stories_default","mockItems","Default","args","Loading","default"],"mappings":"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","sourcesContent":["// src/breadcrumb.tsx\nimport {\n Breadcrumb as BreadcrumbComponent,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from \"@c-rex/ui/breadcrumb\";\nimport { Skeleton } from \"@c-rex/ui/skeleton\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar Breadcrumb = ({ items, loading }) => {\n if (!items) {\n return null;\n }\n if (loading) {\n return /* @__PURE__ */ jsx(BreadcrumbComponent, { children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [\n /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, { children: \"Home\" }) }),\n /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),\n /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(Skeleton, { className: \"w-40 h-6\" }) }),\n /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),\n /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(Skeleton, { className: \"w-40 h-6\" }) })\n ] }) });\n }\n const homeItem = {\n link: \"/\",\n label: \"Home\",\n id: \"home\",\n active: false,\n children: []\n };\n const newItemList = [homeItem, ...items];\n const renderLink = (showLink, item) => {\n if (showLink) {\n return /* @__PURE__ */ jsx(BreadcrumbLink, { href: item.link, children: item.label });\n }\n return /* @__PURE__ */ jsx(BreadcrumbPage, { children: item.label });\n };\n return /* @__PURE__ */ jsx(BreadcrumbComponent, { children: /* @__PURE__ */ jsx(BreadcrumbList, { children: newItemList.map((item, index) => {\n const isLast = index === newItemList.length - 1;\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(BreadcrumbItem, { children: renderLink(!isLast, item) }, `${item.label}-item`),\n !isLast && /* @__PURE__ */ jsx(BreadcrumbSeparator, {}, `${item.label}-separator`)\n ] });\n }) }) });\n};\n\n// src/stories/breadcrumb.stories.tsx\nvar meta = {\n title: \"Components/Breadcrumb\",\n component: Breadcrumb,\n tags: [\"autodocs\"],\n parameters: {\n layout: \"centered\"\n }\n};\nvar breadcrumb_stories_default = meta;\nvar mockItems = [\n {\n id: \"docs\",\n label: \"Documentation\",\n link: \"/docs\",\n active: false,\n children: []\n },\n {\n id: \"components\",\n label: \"Components\",\n link: \"/docs/components\",\n active: false,\n children: []\n },\n {\n id: \"breadcrumb\",\n label: \"Breadcrumb\",\n link: \"/docs/components/breadcrumb\",\n active: true,\n children: []\n }\n];\nvar Default = {\n args: {\n items: mockItems,\n loading: false\n }\n};\nvar Loading = {\n args: {\n items: [],\n loading: true\n }\n};\nexport {\n Default,\n Loading,\n breadcrumb_stories_default as default\n};\n","import { FC, ReactNode } from \"react\";\nimport {\n Breadcrumb as BreadcrumbComponent,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from \"@c-rex/ui/breadcrumb\";\nimport { Skeleton } from \"@c-rex/ui/skeleton\";\nimport { TreeOfContent } from \"@c-rex/interfaces\";\n\ninterface BreadcrumbProps {\n items: TreeOfContent[];\n loading?: boolean;\n}\n\nexport const Breadcrumb: FC<BreadcrumbProps> = ({ items, loading }) => {\n if (!items) {\n return null;\n }\n\n if (loading) {\n return (\n <BreadcrumbComponent>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbPage>Home</BreadcrumbPage>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <Skeleton className=\"w-40 h-6\" />\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <Skeleton className=\"w-40 h-6\" />\n </BreadcrumbItem>\n </BreadcrumbList>\n </BreadcrumbComponent>\n );\n }\n\n const homeItem: TreeOfContent = {\n link: \"/\",\n label: \"Home\",\n id: \"home\",\n active: false,\n children: [],\n };\n\n const newItemList: TreeOfContent[] = [homeItem, ...items];\n\n const renderLink = (showLink: boolean, item: TreeOfContent): ReactNode => {\n if (showLink) {\n return <BreadcrumbLink href={item.link}>{item.label}</BreadcrumbLink>;\n }\n\n return <BreadcrumbPage>{item.label}</BreadcrumbPage>;\n };\n\n return (\n <BreadcrumbComponent>\n <BreadcrumbList>\n {newItemList.map((item, index) => {\n const isLast = index === newItemList.length - 1;\n\n return (\n <>\n <BreadcrumbItem key={`${item.label}-item`}>\n {renderLink(!isLast, item)}\n </BreadcrumbItem>\n {!isLast && (\n <BreadcrumbSeparator key={`${item.label}-separator`} />\n )}\n </>\n );\n })}\n </BreadcrumbList>\n </BreadcrumbComponent>\n );\n};","import type { Meta, StoryObj } from '@storybook/react';\nimport { Breadcrumb } from '../breadcrumb';\n\nconst meta: Meta = {\n title: 'Components/Breadcrumb',\n component: Breadcrumb,\n tags: ['autodocs'],\n parameters: {\n layout: 'centered',\n }\n} satisfies Meta;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nconst mockItems = [\n {\n id: 'docs',\n label: 'Documentation',\n link: '/docs',\n active: false,\n children: [],\n },\n {\n id: 'components',\n label: 'Components',\n link: '/docs/components',\n active: false,\n children: [],\n },\n {\n id: 'breadcrumb',\n label: 'Breadcrumb',\n link: '/docs/components/breadcrumb',\n active: true,\n children: [],\n },\n];\n\nexport const Default: Story = {\n args: {\n items: mockItems,\n loading: false,\n },\n};\n\nexport const Loading: Story = {\n args: {\n items: [],\n loading: true,\n },\n};"]}
|