@cerberus-design/react 0.19.3 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/legacy/_tsup-dts-rollup.d.cts +233 -4
- package/build/legacy/components/carousel/carousel.cjs +239 -0
- package/build/legacy/components/carousel/carousel.cjs.map +1 -0
- package/build/legacy/components/carousel/carousel.d.cts +2 -0
- package/build/legacy/components/carousel/index.cjs +257 -0
- package/build/legacy/components/carousel/index.cjs.map +1 -0
- package/build/legacy/components/carousel/index.d.cts +19 -0
- package/build/legacy/components/carousel/parts.cjs +198 -0
- package/build/legacy/components/carousel/parts.cjs.map +1 -0
- package/build/legacy/components/carousel/parts.d.cts +1 -0
- package/build/legacy/components/carousel/primitives.cjs +198 -0
- package/build/legacy/components/carousel/primitives.cjs.map +1 -0
- package/build/legacy/components/carousel/primitives.d.cts +16 -0
- package/build/legacy/index.cjs +490 -418
- package/build/legacy/index.cjs.map +1 -1
- package/build/legacy/index.d.cts +19 -0
- package/build/modern/_tsup-dts-rollup.d.ts +233 -4
- package/build/modern/{chunk-TBCTCQXG.js → chunk-2Z7IKMZC.js} +4 -4
- package/build/modern/{chunk-UAVGKLHV.js → chunk-CONG7TGJ.js} +5 -5
- package/build/modern/{chunk-JBYWQERR.js → chunk-LY6ULD43.js} +4 -4
- package/build/modern/chunk-PH3GZIQE.js +39 -0
- package/build/modern/chunk-PH3GZIQE.js.map +1 -0
- package/build/modern/chunk-RJTFRZAL.js +32 -0
- package/build/modern/chunk-RJTFRZAL.js.map +1 -0
- package/build/modern/chunk-VVZOWCNQ.js +27 -0
- package/build/modern/chunk-VVZOWCNQ.js.map +1 -0
- package/build/modern/chunk-YUAUGU3G.js +1 -0
- package/build/modern/chunk-YUAUGU3G.js.map +1 -0
- package/build/modern/components/carousel/carousel.d.ts +2 -0
- package/build/modern/components/carousel/carousel.js +15 -0
- package/build/modern/components/carousel/carousel.js.map +1 -0
- package/build/modern/components/carousel/index.d.ts +19 -0
- package/build/modern/components/carousel/index.js +36 -0
- package/build/modern/components/carousel/index.js.map +1 -0
- package/build/modern/components/carousel/parts.d.ts +1 -0
- package/build/modern/components/carousel/parts.js +12 -0
- package/build/modern/components/carousel/parts.js.map +1 -0
- package/build/modern/components/carousel/primitives.d.ts +16 -0
- package/build/modern/components/carousel/primitives.js +25 -0
- package/build/modern/components/carousel/primitives.js.map +1 -0
- package/build/modern/components/combobox/index.js +6 -6
- package/build/modern/components/cta-dialog/index.js +4 -4
- package/build/modern/components/cta-dialog/provider.js +4 -4
- package/build/modern/components/date-picker/calendar.js +2 -2
- package/build/modern/components/date-picker/index.js +8 -8
- package/build/modern/components/deprecated/Label.js +1 -1
- package/build/modern/components/dialog/index.js +3 -3
- package/build/modern/components/field/index.js +3 -3
- package/build/modern/components/file-upload/file-status.js +1 -1
- package/build/modern/components/file-upload/index.js +1 -1
- package/build/modern/components/notifications/center.js +2 -2
- package/build/modern/components/notifications/index.js +3 -3
- package/build/modern/components/radio/index.js +3 -3
- package/build/modern/components/select/index.js +3 -3
- package/build/modern/context/confirm-modal.js +1 -1
- package/build/modern/context/prompt-modal.js +2 -2
- package/build/modern/index.d.ts +19 -0
- package/build/modern/index.js +152 -125
- package/build/modern/index.js.map +1 -1
- package/package.json +4 -4
- package/src/components/carousel/carousel.tsx +55 -0
- package/src/components/carousel/index.ts +3 -0
- package/src/components/carousel/parts.ts +71 -0
- package/src/components/carousel/primitives.ts +58 -0
- package/src/index.ts +1 -0
- /package/build/modern/{chunk-TBCTCQXG.js.map → chunk-2Z7IKMZC.js.map} +0 -0
- /package/build/modern/{chunk-UAVGKLHV.js.map → chunk-CONG7TGJ.js.map} +0 -0
- /package/build/modern/{chunk-JBYWQERR.js.map → chunk-LY6ULD43.js.map} +0 -0
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
|
+
|
|
22
|
+
// src/components/carousel/index.ts
|
|
23
|
+
var carousel_exports = {};
|
|
24
|
+
__export(carousel_exports, {
|
|
25
|
+
Carousel: () => Carousel2,
|
|
26
|
+
CarouselControl: () => CarouselControl,
|
|
27
|
+
CarouselIndicator: () => CarouselIndicator,
|
|
28
|
+
CarouselIndicatorGroup: () => CarouselIndicatorGroup,
|
|
29
|
+
CarouselItem: () => CarouselItem,
|
|
30
|
+
CarouselItemGroup: () => CarouselItemGroup,
|
|
31
|
+
CarouselNextTrigger: () => CarouselNextTrigger,
|
|
32
|
+
CarouselParts: () => CarouselParts,
|
|
33
|
+
CarouselPrevTrigger: () => CarouselPrevTrigger,
|
|
34
|
+
CarouselRoot: () => CarouselRoot
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(carousel_exports);
|
|
37
|
+
|
|
38
|
+
// src/components/carousel/primitives.ts
|
|
39
|
+
var import_carousel = require("@ark-ui/react/carousel");
|
|
40
|
+
var import_recipes = require("styled-system/recipes");
|
|
41
|
+
|
|
42
|
+
// src/system/primitive-factory.tsx
|
|
43
|
+
var import_css = require("styled-system/css");
|
|
44
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
45
|
+
var CerberusPrimitive = class {
|
|
46
|
+
constructor(recipe) {
|
|
47
|
+
__publicField(this, "recipe");
|
|
48
|
+
/**
|
|
49
|
+
* Creates a Cerberus component with bare features and no recipe.
|
|
50
|
+
* @param Component - The React component to enhance with Cerberus features.
|
|
51
|
+
* Can be a string or a component reference.
|
|
52
|
+
* @returns A new React component that applies Cerberus features to the
|
|
53
|
+
* original component.
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```ts
|
|
57
|
+
* const { withNoRecipe } = createCerberusPrimitive(buttonRecipe)
|
|
58
|
+
* const Button = withNoRecipe('button')
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
__publicField(this, "withNoRecipe", (Component, options) => {
|
|
62
|
+
const { defaultProps } = options || {};
|
|
63
|
+
const El = Component;
|
|
64
|
+
const CerbComponent = (props) => {
|
|
65
|
+
const { css: customCss, className, ...nativeProps } = props;
|
|
66
|
+
const styles = this.hasStyles((0, import_css.cx)(className, (0, import_css.css)(customCss)));
|
|
67
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(El, { ...defaultProps, ...styles, ...nativeProps });
|
|
68
|
+
};
|
|
69
|
+
if (this.validateComponent(El)) {
|
|
70
|
+
const ElName = typeof El === "string" ? El : El.displayName || El.name;
|
|
71
|
+
CerbComponent.displayName = ElName;
|
|
72
|
+
}
|
|
73
|
+
return CerbComponent;
|
|
74
|
+
});
|
|
75
|
+
/**
|
|
76
|
+
* Creates a Cerberus component with the given recipe.
|
|
77
|
+
* @param Component - The React component to enhance with the recipe.
|
|
78
|
+
* @param options - Options for the recipe.
|
|
79
|
+
* @returns A new React component that applies the recipe to the original
|
|
80
|
+
* component.
|
|
81
|
+
*/
|
|
82
|
+
__publicField(this, "withRecipe", (Component, options) => {
|
|
83
|
+
const { defaultProps } = options || {};
|
|
84
|
+
const El = Component;
|
|
85
|
+
const recipe = this.recipe;
|
|
86
|
+
const CerbComponent = (internalProps) => {
|
|
87
|
+
const {
|
|
88
|
+
css: customCss,
|
|
89
|
+
className,
|
|
90
|
+
...restOfInternalProps
|
|
91
|
+
} = internalProps;
|
|
92
|
+
const [variantOptions, nativeProps] = recipe.splitVariantProps(restOfInternalProps);
|
|
93
|
+
const recipeStyles = recipe(variantOptions);
|
|
94
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
95
|
+
Component,
|
|
96
|
+
{
|
|
97
|
+
...defaultProps,
|
|
98
|
+
...nativeProps,
|
|
99
|
+
className: (0, import_css.cx)(className, recipeStyles, (0, import_css.css)(customCss))
|
|
100
|
+
}
|
|
101
|
+
);
|
|
102
|
+
};
|
|
103
|
+
if (this.validateComponent(El)) {
|
|
104
|
+
const ElName = typeof El === "string" ? El : El.displayName || El.name;
|
|
105
|
+
CerbComponent.displayName = ElName;
|
|
106
|
+
}
|
|
107
|
+
return CerbComponent;
|
|
108
|
+
});
|
|
109
|
+
/**
|
|
110
|
+
* Creates a Cerberus component with a slot recipe applied.
|
|
111
|
+
* @param Component - The React component to enhance with Cerberus features.
|
|
112
|
+
* @param recipe - The slot recipe to apply to the component.
|
|
113
|
+
* @returns A new React component that applies Cerberus features and the
|
|
114
|
+
* specified slot recipe to the original component.
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* const { withSlotRecipe } = createCerberusPrimitive(field)
|
|
118
|
+
* const Field = withSlotRecipe(RawField, field)
|
|
119
|
+
* ```
|
|
120
|
+
*/
|
|
121
|
+
__publicField(this, "withSlotRecipe", (Component, slot, options) => {
|
|
122
|
+
const { defaultProps } = options || {};
|
|
123
|
+
const El = Component;
|
|
124
|
+
const recipe = this.recipe;
|
|
125
|
+
const CerbComponent = (internalProps) => {
|
|
126
|
+
const {
|
|
127
|
+
css: customCss,
|
|
128
|
+
className,
|
|
129
|
+
...restOfInternalProps
|
|
130
|
+
} = internalProps;
|
|
131
|
+
const [variantOptions, nativeProps] = recipe.splitVariantProps(restOfInternalProps);
|
|
132
|
+
const styles = recipe(variantOptions);
|
|
133
|
+
const slotStyles = styles[slot];
|
|
134
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
135
|
+
Component,
|
|
136
|
+
{
|
|
137
|
+
...defaultProps,
|
|
138
|
+
...nativeProps,
|
|
139
|
+
className: (0, import_css.cx)(className, slotStyles, (0, import_css.css)(customCss))
|
|
140
|
+
}
|
|
141
|
+
);
|
|
142
|
+
};
|
|
143
|
+
if (this.validateComponent(El)) {
|
|
144
|
+
const ElName = typeof El === "string" ? El : El.displayName || El.name;
|
|
145
|
+
CerbComponent.displayName = ElName;
|
|
146
|
+
}
|
|
147
|
+
return CerbComponent;
|
|
148
|
+
});
|
|
149
|
+
this.recipe = recipe ?? null;
|
|
150
|
+
}
|
|
151
|
+
hasStyles(styles) {
|
|
152
|
+
if (styles) {
|
|
153
|
+
return {
|
|
154
|
+
className: styles
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
return {};
|
|
158
|
+
}
|
|
159
|
+
validateComponent(Component) {
|
|
160
|
+
if (typeof Component !== "function" && typeof Component !== "object") {
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
return true;
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
// src/system/index.ts
|
|
168
|
+
function createCerberusPrimitive(recipe) {
|
|
169
|
+
return new CerberusPrimitive(recipe);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
// src/components/carousel/primitives.ts
|
|
173
|
+
var { withSlotRecipe } = createCerberusPrimitive(import_recipes.carousel);
|
|
174
|
+
var CarouselRoot = withSlotRecipe(import_carousel.Carousel.Root, "root");
|
|
175
|
+
var CarouselControl = withSlotRecipe(import_carousel.Carousel.Control, "control");
|
|
176
|
+
var CarouselPrevTrigger = withSlotRecipe(
|
|
177
|
+
import_carousel.Carousel.PrevTrigger,
|
|
178
|
+
"prevTrigger"
|
|
179
|
+
);
|
|
180
|
+
var CarouselNextTrigger = withSlotRecipe(
|
|
181
|
+
import_carousel.Carousel.NextTrigger,
|
|
182
|
+
"nextTrigger"
|
|
183
|
+
);
|
|
184
|
+
var CarouselIndicatorGroup = withSlotRecipe(
|
|
185
|
+
import_carousel.Carousel.IndicatorGroup,
|
|
186
|
+
"indicatorGroup"
|
|
187
|
+
);
|
|
188
|
+
var CarouselIndicator = withSlotRecipe(import_carousel.Carousel.Indicator, "indicator");
|
|
189
|
+
var CarouselItemGroup = withSlotRecipe(import_carousel.Carousel.ItemGroup, "itemGroup");
|
|
190
|
+
var CarouselItem = withSlotRecipe(import_carousel.Carousel.Item, "item");
|
|
191
|
+
|
|
192
|
+
// src/components/carousel/parts.ts
|
|
193
|
+
var CarouselParts = {
|
|
194
|
+
Root: CarouselRoot,
|
|
195
|
+
Control: CarouselControl,
|
|
196
|
+
PrevTrigger: CarouselPrevTrigger,
|
|
197
|
+
NextTrigger: CarouselNextTrigger,
|
|
198
|
+
IndicatorGroup: CarouselIndicatorGroup,
|
|
199
|
+
Indicator: CarouselIndicator,
|
|
200
|
+
ItemGroup: CarouselItemGroup,
|
|
201
|
+
Item: CarouselItem
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
// src/components/show/show.tsx
|
|
205
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
206
|
+
function Show(props) {
|
|
207
|
+
const { when, children, fallback } = props;
|
|
208
|
+
if (when) {
|
|
209
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children });
|
|
210
|
+
}
|
|
211
|
+
if (fallback) {
|
|
212
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: fallback });
|
|
213
|
+
}
|
|
214
|
+
return null;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
// src/components/for/for.tsx
|
|
218
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
219
|
+
function For(props) {
|
|
220
|
+
var _a;
|
|
221
|
+
if (!props.each || !props.each.length) {
|
|
222
|
+
return props.fallback || null;
|
|
223
|
+
}
|
|
224
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: (_a = props.each) == null ? void 0 : _a.map(props.children) });
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
// src/components/carousel/carousel.tsx
|
|
228
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
229
|
+
function CarouselEl(props) {
|
|
230
|
+
const { showIndicators = false, children, ...rootProps } = props;
|
|
231
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(CarouselParts.Root, { ...rootProps, children: [
|
|
232
|
+
children,
|
|
233
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Show, { when: showIndicators, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(CarouselParts.IndicatorGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(For, { each: Array.from({ length: props.slideCount ?? 0 }), children: (_, idx) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(CarouselParts.Indicator, { index: idx }, idx) }) }) })
|
|
234
|
+
] });
|
|
235
|
+
}
|
|
236
|
+
var Carousel2 = {
|
|
237
|
+
Root: CarouselEl,
|
|
238
|
+
ItemGroup: CarouselParts.ItemGroup,
|
|
239
|
+
Item: CarouselParts.Item,
|
|
240
|
+
Control: CarouselParts.Control,
|
|
241
|
+
PrevTrigger: CarouselParts.PrevTrigger,
|
|
242
|
+
NextTrigger: CarouselParts.NextTrigger
|
|
243
|
+
};
|
|
244
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
245
|
+
0 && (module.exports = {
|
|
246
|
+
Carousel,
|
|
247
|
+
CarouselControl,
|
|
248
|
+
CarouselIndicator,
|
|
249
|
+
CarouselIndicatorGroup,
|
|
250
|
+
CarouselItem,
|
|
251
|
+
CarouselItemGroup,
|
|
252
|
+
CarouselNextTrigger,
|
|
253
|
+
CarouselParts,
|
|
254
|
+
CarouselPrevTrigger,
|
|
255
|
+
CarouselRoot
|
|
256
|
+
});
|
|
257
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/carousel/index.ts","../../../../src/components/carousel/primitives.ts","../../../../src/system/primitive-factory.tsx","../../../../src/system/index.ts","../../../../src/components/carousel/parts.ts","../../../../src/components/show/show.tsx","../../../../src/components/for/for.tsx","../../../../src/components/carousel/carousel.tsx"],"sourcesContent":["export * from './parts'\nexport * from './primitives'\nexport * from './carousel'\n","import {\n Carousel,\n type CarouselRootProps as ArkRootProps,\n type CarouselControlProps as ArkControlProps,\n type CarouselPrevTriggerProps as ArkPrevTriggerProps,\n type CarouselNextTriggerProps as ArkNextTriggerProps,\n type CarouselIndicatorGroupProps as ArkIndicatorGroupProps,\n type CarouselIndicatorProps as ArkIndicatorProps,\n type CarouselItemGroupProps as ArkItemGroupProps,\n type CarouselItemProps as ArkItemProps,\n} from '@ark-ui/react/carousel'\nimport { carousel, type CarouselVariantProps } from 'styled-system/recipes'\nimport { createCerberusPrimitive } from '../../system/index'\n\n/**\n * This module contains the carousel primitives.\n * @module carousel/primitives\n */\n\nconst { withSlotRecipe } = createCerberusPrimitive(carousel)\n\n// Primitives\n\nexport type CarouselRootProps = CarouselVariantProps & ArkRootProps\nexport const CarouselRoot = withSlotRecipe(Carousel.Root, 'root')\n\nexport type CarouselControlProps = CarouselVariantProps & ArkControlProps\nexport const CarouselControl = withSlotRecipe(Carousel.Control, 'control')\n\nexport type CarouselPrevTriggerProps = CarouselVariantProps &\n ArkPrevTriggerProps\nexport const CarouselPrevTrigger = withSlotRecipe(\n Carousel.PrevTrigger,\n 'prevTrigger',\n)\n\nexport type CarouselNextTriggerProps = CarouselVariantProps &\n ArkNextTriggerProps\nexport const CarouselNextTrigger = withSlotRecipe(\n Carousel.NextTrigger,\n 'nextTrigger',\n)\n\nexport type CarouselIndicatorGroupProps = CarouselVariantProps &\n ArkIndicatorGroupProps\nexport const CarouselIndicatorGroup = withSlotRecipe(\n Carousel.IndicatorGroup,\n 'indicatorGroup',\n)\n\nexport type CarouselIndicatorProps = CarouselVariantProps & ArkIndicatorProps\nexport const CarouselIndicator = withSlotRecipe(Carousel.Indicator, 'indicator')\n\nexport type CarouselItemGroupProps = CarouselVariantProps & ArkItemGroupProps\nexport const CarouselItemGroup = withSlotRecipe(Carousel.ItemGroup, 'itemGroup')\n\nexport type CarouselItemProps = CarouselVariantProps & ArkItemProps\nexport const CarouselItem = withSlotRecipe(Carousel.Item, 'item')\n","import { css, cx } from 'styled-system/css'\nimport type { RecipeVariantRecord } from 'styled-system/types'\nimport {\n type ComponentType,\n type ElementType,\n type HTMLAttributes,\n type PropsWithChildren,\n} from 'react'\nimport type { WithCss } from '../types'\nimport type {\n CerberusPrimitiveEl,\n CerberusPrimitiveRecipe,\n CerberusRecipe,\n CerberusSlotRecipe,\n WithRecipeOptions,\n} from './types'\n\n/**\n * This module contains a factory for creating Cerberus primitives.\n * @module @cerberus/core/system/factory\n */\n\nexport class CerberusPrimitive {\n recipe: CerberusPrimitiveRecipe | null\n\n constructor(recipe?: CerberusPrimitiveRecipe) {\n this.recipe = recipe ?? null\n }\n\n private hasStyles(styles: string | undefined): Record<string, unknown> {\n if (styles) {\n return {\n className: styles,\n }\n }\n return {}\n }\n\n private validateComponent<P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n ) {\n if (typeof Component !== 'function' && typeof Component !== 'object') {\n return false\n }\n return true\n }\n\n /**\n * Creates a Cerberus component with bare features and no recipe.\n * @param Component - The React component to enhance with Cerberus features.\n * Can be a string or a component reference.\n * @returns A new React component that applies Cerberus features to the\n * original component.\n *\n * @example\n * ```ts\n * const { withNoRecipe } = createCerberusPrimitive(buttonRecipe)\n * const Button = withNoRecipe('button')\n * ```\n */\n withNoRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P> => {\n const { defaultProps } = options || {}\n const El = Component as ComponentType<P> | ElementType\n\n const CerbComponent = (props: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = props\n const styles = this.hasStyles(cx(className, css(customCss)))\n return <El {...defaultProps} {...styles} {...(nativeProps as P)} />\n }\n\n if (this.validateComponent(El)) {\n const ElName = typeof El === 'string' ? El : El.displayName || El.name\n CerbComponent.displayName = ElName\n }\n\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with the given recipe.\n * @param Component - The React component to enhance with the recipe.\n * @param options - Options for the recipe.\n * @returns A new React component that applies the recipe to the original\n * component.\n */\n withRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P & WithRecipeOptions['defaultProps']> => {\n const { defaultProps } = options || {}\n const El = Component as ComponentType<P> | ElementType\n\n const recipe = this.recipe as CerberusRecipe\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const {\n css: customCss,\n className,\n ...restOfInternalProps\n } = internalProps\n\n const [variantOptions, nativeProps] =\n recipe.splitVariantProps(restOfInternalProps)\n const recipeStyles = recipe(variantOptions)\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, recipeStyles, css(customCss))}\n />\n )\n }\n\n if (this.validateComponent(El)) {\n const ElName = typeof El === 'string' ? El : El.displayName || El.name\n CerbComponent.displayName = ElName\n }\n\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with a slot recipe applied.\n * @param Component - The React component to enhance with Cerberus features.\n * @param recipe - The slot recipe to apply to the component.\n * @returns A new React component that applies Cerberus features and the\n * specified slot recipe to the original component.\n * @example\n * ```typescript\n * const { withSlotRecipe } = createCerberusPrimitive(field)\n * const Field = withSlotRecipe(RawField, field)\n * ```\n */\n withSlotRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n slot: keyof RecipeVariantRecord,\n options?: WithRecipeOptions,\n ) => {\n const { defaultProps } = options || {}\n const El = Component as ComponentType<P> | ElementType\n\n const recipe = this.recipe as CerberusSlotRecipe<typeof slot>\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const {\n css: customCss,\n className,\n ...restOfInternalProps\n } = internalProps\n\n const [variantOptions, nativeProps] =\n recipe.splitVariantProps(restOfInternalProps)\n const styles = recipe(variantOptions)\n const slotStyles = styles[slot as keyof typeof styles]\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, slotStyles, css(customCss))}\n />\n )\n }\n\n if (this.validateComponent(El)) {\n const ElName = typeof El === 'string' ? El : El.displayName || El.name\n CerbComponent.displayName = ElName\n }\n\n return CerbComponent\n }\n}\n","import { CerberusPrimitive } from './primitive-factory'\nimport type { CerberusFactory, CerberusPrimitiveRecipe } from './types'\nimport { cerberusFactoryProxy } from './factory'\n\n/**\n * This module contains the user interface for creating Cerberus primitives.\n * @module @cerberus/core/system/create-cerb-primitive\n */\n\n/**\n * A factory function that creates a Cerberus primitive instance with the given\n * recipe.\n * @param recipe\n * @returns An object with three methods: `withNoRecipe`, `withRecipe`, and `withSlotRecipe` that\n * apply the recipes and special Cerberus helpers like `css`.\n *\n * @example\n * ```tsx\n * const { withRecipe } = createCerberusPrimitive(myCustomRecipe);\n * export const Button = withRecipe(MyCustomButton)\n * ```\n */\nexport function createCerberusPrimitive<T extends CerberusPrimitiveRecipe>(\n recipe?: T,\n) {\n return new CerberusPrimitive(recipe)\n}\n\n/**\n * A utility function to access Cerberus components by their name.\n * @param component - The name of the Cerberus component to access.\n * @returns The Cerberus component corresponding to the provided name.\n * @throws An error if the component name is not valid.\n *\n * @example\n * ```tsx\n * import { cerberus } from '@cerberus/react'\n * const Button = cerberus('button')\n *\n * <Button css={{ color: 'blue' }} asChild>\n * <Link href=\"/some-page\">Click me</Link>\n * </Button>\n * ```\n */\nexport const cerberus = cerberusFactoryProxy as CerberusFactory\n\nexport * from './types'\n","import type { ElementType } from 'react'\nimport {\n CarouselRoot,\n CarouselControl,\n CarouselPrevTrigger,\n CarouselNextTrigger,\n CarouselIndicatorGroup,\n CarouselIndicator,\n CarouselItemGroup,\n CarouselItem,\n} from './primitives'\n\n/**\n * This module contains the parts of the Carousel component.\n * @module 'carousel/parts'\n */\n\ninterface CarouselPartsValue {\n /**\n * The context provider of the carousel.\n */\n Root: ElementType\n /**\n * The control of the carousel.\n */\n Control: ElementType\n /**\n * The previous trigger of the carousel.\n */\n PrevTrigger: ElementType\n /**\n * The next trigger of the carousel.\n */\n NextTrigger: ElementType\n /**\n * The indicator group of the carousel.\n */\n IndicatorGroup: ElementType\n /**\n * The indicator of the carousel.\n */\n Indicator: ElementType\n /**\n * The item group of the carousel.\n */\n ItemGroup: ElementType\n /**\n * The item of the carousel.\n */\n Item: ElementType\n}\n\n/**\n * An Object containing the parts of the Button component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the CarouselParts object and\n * the entire family of components vs. only what you use.\n */\nexport const CarouselParts: CarouselPartsValue = {\n Root: CarouselRoot,\n Control: CarouselControl,\n PrevTrigger: CarouselPrevTrigger,\n NextTrigger: CarouselNextTrigger,\n IndicatorGroup: CarouselIndicatorGroup,\n Indicator: CarouselIndicator,\n ItemGroup: CarouselItemGroup,\n Item: CarouselItem,\n}\n","import { type PropsWithChildren, type ReactNode } from 'react'\n\n/**\n * This module contains the Show component.\n * @module\n */\n\nexport interface ShowProps<T> {\n /**\n * The condition to render memoized children or the fallback content.\n */\n when: T | boolean | null | undefined\n /**\n * The children to render when the condition is false.\n */\n fallback?: ReactNode\n}\n\n/**\n * Conditionally render a memoized version of the children or optional fallback\n * content.\n * @see https://cerberus.digitalu.design/react/show\n * @example\n * ```tsx\n * <Show when={isLoggedIn} fallback={<Navigate to=\"/login\" />}>\n * <Dashboard />\n * </Show>\n */\nexport function Show<T>(props: PropsWithChildren<ShowProps<T>>) {\n const { when, children, fallback } = props\n\n if (when) {\n return <>{children}</>\n }\n\n if (fallback) {\n return <>{fallback}</>\n }\n\n return null\n}\n","import type { ReactNode, JSX } from 'react'\n\nexport interface ForProps<T extends readonly unknown[], U extends JSX.Element> {\n /**\n * The array to iterate over.\n */\n each: T | undefined | null | false\n /**\n * The fallback to render when the array is empty.\n */\n fallback?: JSX.Element\n /**\n * The children to render for each item in the array.\n */\n children: (item: T[number], index: number) => U\n}\n\n/**\n * The For component is used to iterate over an array and render a list of\n * components or display a fallback when the array is empty.\n * Inspired by the `<For>` component from SolidJS.\n *\n * @example\n * ```tsx\n * <For each={['a', 'b', 'c']}>\n * {(item, index) => <div key={index}>{item}</div>}\n * </For>\n * ```\n */\nexport function For<T extends readonly unknown[], U extends JSX.Element>(\n props: ForProps<T, U>,\n) {\n if (!props.each || !props.each.length) {\n return props.fallback || null\n }\n\n return <>{props.each?.map(props.children) as ReactNode}</>\n}\n","import type { PropsWithChildren } from 'react'\nimport { Show } from '../show/show'\nimport { For } from '../for/for'\nimport { CarouselParts } from './parts'\nimport type { CarouselRootProps } from './primitives'\n\n/**\n * This module contains an abstraction of the carousel family of components.\n * @module carousel\n */\n\nexport interface CarouselProps extends CarouselRootProps {\n /**\n * Whether to show the carousel indicators (dot list).\n * @default false\n */\n showIndicators?: boolean\n}\n\n/**\n * The Carousel component is an abstraction of the carousel family of\n * components. It provides a simple interface for creating carousels with\n * various configurations.\n *\n * @remarks\n * This component uses the `CarouselParts` object to provide the necessary\n * parts. For customization, we recommend using the `CarouselParts` object\n * directly in combination with the `css` prop.\n */\nfunction CarouselEl(props: PropsWithChildren<CarouselProps>) {\n const { showIndicators = false, children, ...rootProps } = props\n\n return (\n <CarouselParts.Root {...rootProps}>\n {children}\n\n <Show when={showIndicators}>\n <CarouselParts.IndicatorGroup>\n <For each={Array.from({ length: props.slideCount ?? 0 })}>\n {(_, idx) => <CarouselParts.Indicator key={idx} index={idx} />}\n </For>\n </CarouselParts.IndicatorGroup>\n </Show>\n </CarouselParts.Root>\n )\n}\n\nexport const Carousel = {\n Root: CarouselEl,\n ItemGroup: CarouselParts.ItemGroup,\n Item: CarouselParts.Item,\n Control: CarouselParts.Control,\n PrevTrigger: CarouselParts.PrevTrigger,\n NextTrigger: CarouselParts.NextTrigger,\n}\n"],"mappings":"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","names":["Carousel","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","Carousel"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export { CarouselParts_alias_1 as CarouselParts } from '../../_tsup-dts-rollup.cjs';
|
|
2
|
+
export { CarouselRootProps_alias_1 as CarouselRootProps } from '../../_tsup-dts-rollup.cjs';
|
|
3
|
+
export { CarouselRoot_alias_1 as CarouselRoot } from '../../_tsup-dts-rollup.cjs';
|
|
4
|
+
export { CarouselControlProps_alias_1 as CarouselControlProps } from '../../_tsup-dts-rollup.cjs';
|
|
5
|
+
export { CarouselControl_alias_1 as CarouselControl } from '../../_tsup-dts-rollup.cjs';
|
|
6
|
+
export { CarouselPrevTriggerProps_alias_1 as CarouselPrevTriggerProps } from '../../_tsup-dts-rollup.cjs';
|
|
7
|
+
export { CarouselPrevTrigger_alias_1 as CarouselPrevTrigger } from '../../_tsup-dts-rollup.cjs';
|
|
8
|
+
export { CarouselNextTriggerProps_alias_1 as CarouselNextTriggerProps } from '../../_tsup-dts-rollup.cjs';
|
|
9
|
+
export { CarouselNextTrigger_alias_1 as CarouselNextTrigger } from '../../_tsup-dts-rollup.cjs';
|
|
10
|
+
export { CarouselIndicatorGroupProps_alias_1 as CarouselIndicatorGroupProps } from '../../_tsup-dts-rollup.cjs';
|
|
11
|
+
export { CarouselIndicatorGroup_alias_1 as CarouselIndicatorGroup } from '../../_tsup-dts-rollup.cjs';
|
|
12
|
+
export { CarouselIndicatorProps_alias_1 as CarouselIndicatorProps } from '../../_tsup-dts-rollup.cjs';
|
|
13
|
+
export { CarouselIndicator_alias_1 as CarouselIndicator } from '../../_tsup-dts-rollup.cjs';
|
|
14
|
+
export { CarouselItemGroupProps_alias_1 as CarouselItemGroupProps } from '../../_tsup-dts-rollup.cjs';
|
|
15
|
+
export { CarouselItemGroup_alias_1 as CarouselItemGroup } from '../../_tsup-dts-rollup.cjs';
|
|
16
|
+
export { CarouselItemProps_alias_1 as CarouselItemProps } from '../../_tsup-dts-rollup.cjs';
|
|
17
|
+
export { CarouselItem_alias_1 as CarouselItem } from '../../_tsup-dts-rollup.cjs';
|
|
18
|
+
export { CarouselProps_alias_2 as CarouselProps } from '../../_tsup-dts-rollup.cjs';
|
|
19
|
+
export { Carousel_alias_2 as Carousel } from '../../_tsup-dts-rollup.cjs';
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
|
+
|
|
22
|
+
// src/components/carousel/parts.ts
|
|
23
|
+
var parts_exports = {};
|
|
24
|
+
__export(parts_exports, {
|
|
25
|
+
CarouselParts: () => CarouselParts
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(parts_exports);
|
|
28
|
+
|
|
29
|
+
// src/components/carousel/primitives.ts
|
|
30
|
+
var import_carousel = require("@ark-ui/react/carousel");
|
|
31
|
+
var import_recipes = require("styled-system/recipes");
|
|
32
|
+
|
|
33
|
+
// src/system/primitive-factory.tsx
|
|
34
|
+
var import_css = require("styled-system/css");
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var CerberusPrimitive = class {
|
|
37
|
+
constructor(recipe) {
|
|
38
|
+
__publicField(this, "recipe");
|
|
39
|
+
/**
|
|
40
|
+
* Creates a Cerberus component with bare features and no recipe.
|
|
41
|
+
* @param Component - The React component to enhance with Cerberus features.
|
|
42
|
+
* Can be a string or a component reference.
|
|
43
|
+
* @returns A new React component that applies Cerberus features to the
|
|
44
|
+
* original component.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* const { withNoRecipe } = createCerberusPrimitive(buttonRecipe)
|
|
49
|
+
* const Button = withNoRecipe('button')
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
__publicField(this, "withNoRecipe", (Component, options) => {
|
|
53
|
+
const { defaultProps } = options || {};
|
|
54
|
+
const El = Component;
|
|
55
|
+
const CerbComponent = (props) => {
|
|
56
|
+
const { css: customCss, className, ...nativeProps } = props;
|
|
57
|
+
const styles = this.hasStyles((0, import_css.cx)(className, (0, import_css.css)(customCss)));
|
|
58
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(El, { ...defaultProps, ...styles, ...nativeProps });
|
|
59
|
+
};
|
|
60
|
+
if (this.validateComponent(El)) {
|
|
61
|
+
const ElName = typeof El === "string" ? El : El.displayName || El.name;
|
|
62
|
+
CerbComponent.displayName = ElName;
|
|
63
|
+
}
|
|
64
|
+
return CerbComponent;
|
|
65
|
+
});
|
|
66
|
+
/**
|
|
67
|
+
* Creates a Cerberus component with the given recipe.
|
|
68
|
+
* @param Component - The React component to enhance with the recipe.
|
|
69
|
+
* @param options - Options for the recipe.
|
|
70
|
+
* @returns A new React component that applies the recipe to the original
|
|
71
|
+
* component.
|
|
72
|
+
*/
|
|
73
|
+
__publicField(this, "withRecipe", (Component, options) => {
|
|
74
|
+
const { defaultProps } = options || {};
|
|
75
|
+
const El = Component;
|
|
76
|
+
const recipe = this.recipe;
|
|
77
|
+
const CerbComponent = (internalProps) => {
|
|
78
|
+
const {
|
|
79
|
+
css: customCss,
|
|
80
|
+
className,
|
|
81
|
+
...restOfInternalProps
|
|
82
|
+
} = internalProps;
|
|
83
|
+
const [variantOptions, nativeProps] = recipe.splitVariantProps(restOfInternalProps);
|
|
84
|
+
const recipeStyles = recipe(variantOptions);
|
|
85
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
86
|
+
Component,
|
|
87
|
+
{
|
|
88
|
+
...defaultProps,
|
|
89
|
+
...nativeProps,
|
|
90
|
+
className: (0, import_css.cx)(className, recipeStyles, (0, import_css.css)(customCss))
|
|
91
|
+
}
|
|
92
|
+
);
|
|
93
|
+
};
|
|
94
|
+
if (this.validateComponent(El)) {
|
|
95
|
+
const ElName = typeof El === "string" ? El : El.displayName || El.name;
|
|
96
|
+
CerbComponent.displayName = ElName;
|
|
97
|
+
}
|
|
98
|
+
return CerbComponent;
|
|
99
|
+
});
|
|
100
|
+
/**
|
|
101
|
+
* Creates a Cerberus component with a slot recipe applied.
|
|
102
|
+
* @param Component - The React component to enhance with Cerberus features.
|
|
103
|
+
* @param recipe - The slot recipe to apply to the component.
|
|
104
|
+
* @returns A new React component that applies Cerberus features and the
|
|
105
|
+
* specified slot recipe to the original component.
|
|
106
|
+
* @example
|
|
107
|
+
* ```typescript
|
|
108
|
+
* const { withSlotRecipe } = createCerberusPrimitive(field)
|
|
109
|
+
* const Field = withSlotRecipe(RawField, field)
|
|
110
|
+
* ```
|
|
111
|
+
*/
|
|
112
|
+
__publicField(this, "withSlotRecipe", (Component, slot, options) => {
|
|
113
|
+
const { defaultProps } = options || {};
|
|
114
|
+
const El = Component;
|
|
115
|
+
const recipe = this.recipe;
|
|
116
|
+
const CerbComponent = (internalProps) => {
|
|
117
|
+
const {
|
|
118
|
+
css: customCss,
|
|
119
|
+
className,
|
|
120
|
+
...restOfInternalProps
|
|
121
|
+
} = internalProps;
|
|
122
|
+
const [variantOptions, nativeProps] = recipe.splitVariantProps(restOfInternalProps);
|
|
123
|
+
const styles = recipe(variantOptions);
|
|
124
|
+
const slotStyles = styles[slot];
|
|
125
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
126
|
+
Component,
|
|
127
|
+
{
|
|
128
|
+
...defaultProps,
|
|
129
|
+
...nativeProps,
|
|
130
|
+
className: (0, import_css.cx)(className, slotStyles, (0, import_css.css)(customCss))
|
|
131
|
+
}
|
|
132
|
+
);
|
|
133
|
+
};
|
|
134
|
+
if (this.validateComponent(El)) {
|
|
135
|
+
const ElName = typeof El === "string" ? El : El.displayName || El.name;
|
|
136
|
+
CerbComponent.displayName = ElName;
|
|
137
|
+
}
|
|
138
|
+
return CerbComponent;
|
|
139
|
+
});
|
|
140
|
+
this.recipe = recipe ?? null;
|
|
141
|
+
}
|
|
142
|
+
hasStyles(styles) {
|
|
143
|
+
if (styles) {
|
|
144
|
+
return {
|
|
145
|
+
className: styles
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
return {};
|
|
149
|
+
}
|
|
150
|
+
validateComponent(Component) {
|
|
151
|
+
if (typeof Component !== "function" && typeof Component !== "object") {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
return true;
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
// src/system/index.ts
|
|
159
|
+
function createCerberusPrimitive(recipe) {
|
|
160
|
+
return new CerberusPrimitive(recipe);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
// src/components/carousel/primitives.ts
|
|
164
|
+
var { withSlotRecipe } = createCerberusPrimitive(import_recipes.carousel);
|
|
165
|
+
var CarouselRoot = withSlotRecipe(import_carousel.Carousel.Root, "root");
|
|
166
|
+
var CarouselControl = withSlotRecipe(import_carousel.Carousel.Control, "control");
|
|
167
|
+
var CarouselPrevTrigger = withSlotRecipe(
|
|
168
|
+
import_carousel.Carousel.PrevTrigger,
|
|
169
|
+
"prevTrigger"
|
|
170
|
+
);
|
|
171
|
+
var CarouselNextTrigger = withSlotRecipe(
|
|
172
|
+
import_carousel.Carousel.NextTrigger,
|
|
173
|
+
"nextTrigger"
|
|
174
|
+
);
|
|
175
|
+
var CarouselIndicatorGroup = withSlotRecipe(
|
|
176
|
+
import_carousel.Carousel.IndicatorGroup,
|
|
177
|
+
"indicatorGroup"
|
|
178
|
+
);
|
|
179
|
+
var CarouselIndicator = withSlotRecipe(import_carousel.Carousel.Indicator, "indicator");
|
|
180
|
+
var CarouselItemGroup = withSlotRecipe(import_carousel.Carousel.ItemGroup, "itemGroup");
|
|
181
|
+
var CarouselItem = withSlotRecipe(import_carousel.Carousel.Item, "item");
|
|
182
|
+
|
|
183
|
+
// src/components/carousel/parts.ts
|
|
184
|
+
var CarouselParts = {
|
|
185
|
+
Root: CarouselRoot,
|
|
186
|
+
Control: CarouselControl,
|
|
187
|
+
PrevTrigger: CarouselPrevTrigger,
|
|
188
|
+
NextTrigger: CarouselNextTrigger,
|
|
189
|
+
IndicatorGroup: CarouselIndicatorGroup,
|
|
190
|
+
Indicator: CarouselIndicator,
|
|
191
|
+
ItemGroup: CarouselItemGroup,
|
|
192
|
+
Item: CarouselItem
|
|
193
|
+
};
|
|
194
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
195
|
+
0 && (module.exports = {
|
|
196
|
+
CarouselParts
|
|
197
|
+
});
|
|
198
|
+
//# sourceMappingURL=parts.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/carousel/parts.ts","../../../../src/components/carousel/primitives.ts","../../../../src/system/primitive-factory.tsx","../../../../src/system/index.ts"],"sourcesContent":["import type { ElementType } from 'react'\nimport {\n CarouselRoot,\n CarouselControl,\n CarouselPrevTrigger,\n CarouselNextTrigger,\n CarouselIndicatorGroup,\n CarouselIndicator,\n CarouselItemGroup,\n CarouselItem,\n} from './primitives'\n\n/**\n * This module contains the parts of the Carousel component.\n * @module 'carousel/parts'\n */\n\ninterface CarouselPartsValue {\n /**\n * The context provider of the carousel.\n */\n Root: ElementType\n /**\n * The control of the carousel.\n */\n Control: ElementType\n /**\n * The previous trigger of the carousel.\n */\n PrevTrigger: ElementType\n /**\n * The next trigger of the carousel.\n */\n NextTrigger: ElementType\n /**\n * The indicator group of the carousel.\n */\n IndicatorGroup: ElementType\n /**\n * The indicator of the carousel.\n */\n Indicator: ElementType\n /**\n * The item group of the carousel.\n */\n ItemGroup: ElementType\n /**\n * The item of the carousel.\n */\n Item: ElementType\n}\n\n/**\n * An Object containing the parts of the Button component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the CarouselParts object and\n * the entire family of components vs. only what you use.\n */\nexport const CarouselParts: CarouselPartsValue = {\n Root: CarouselRoot,\n Control: CarouselControl,\n PrevTrigger: CarouselPrevTrigger,\n NextTrigger: CarouselNextTrigger,\n IndicatorGroup: CarouselIndicatorGroup,\n Indicator: CarouselIndicator,\n ItemGroup: CarouselItemGroup,\n Item: CarouselItem,\n}\n","import {\n Carousel,\n type CarouselRootProps as ArkRootProps,\n type CarouselControlProps as ArkControlProps,\n type CarouselPrevTriggerProps as ArkPrevTriggerProps,\n type CarouselNextTriggerProps as ArkNextTriggerProps,\n type CarouselIndicatorGroupProps as ArkIndicatorGroupProps,\n type CarouselIndicatorProps as ArkIndicatorProps,\n type CarouselItemGroupProps as ArkItemGroupProps,\n type CarouselItemProps as ArkItemProps,\n} from '@ark-ui/react/carousel'\nimport { carousel, type CarouselVariantProps } from 'styled-system/recipes'\nimport { createCerberusPrimitive } from '../../system/index'\n\n/**\n * This module contains the carousel primitives.\n * @module carousel/primitives\n */\n\nconst { withSlotRecipe } = createCerberusPrimitive(carousel)\n\n// Primitives\n\nexport type CarouselRootProps = CarouselVariantProps & ArkRootProps\nexport const CarouselRoot = withSlotRecipe(Carousel.Root, 'root')\n\nexport type CarouselControlProps = CarouselVariantProps & ArkControlProps\nexport const CarouselControl = withSlotRecipe(Carousel.Control, 'control')\n\nexport type CarouselPrevTriggerProps = CarouselVariantProps &\n ArkPrevTriggerProps\nexport const CarouselPrevTrigger = withSlotRecipe(\n Carousel.PrevTrigger,\n 'prevTrigger',\n)\n\nexport type CarouselNextTriggerProps = CarouselVariantProps &\n ArkNextTriggerProps\nexport const CarouselNextTrigger = withSlotRecipe(\n Carousel.NextTrigger,\n 'nextTrigger',\n)\n\nexport type CarouselIndicatorGroupProps = CarouselVariantProps &\n ArkIndicatorGroupProps\nexport const CarouselIndicatorGroup = withSlotRecipe(\n Carousel.IndicatorGroup,\n 'indicatorGroup',\n)\n\nexport type CarouselIndicatorProps = CarouselVariantProps & ArkIndicatorProps\nexport const CarouselIndicator = withSlotRecipe(Carousel.Indicator, 'indicator')\n\nexport type CarouselItemGroupProps = CarouselVariantProps & ArkItemGroupProps\nexport const CarouselItemGroup = withSlotRecipe(Carousel.ItemGroup, 'itemGroup')\n\nexport type CarouselItemProps = CarouselVariantProps & ArkItemProps\nexport const CarouselItem = withSlotRecipe(Carousel.Item, 'item')\n","import { css, cx } from 'styled-system/css'\nimport type { RecipeVariantRecord } from 'styled-system/types'\nimport {\n type ComponentType,\n type ElementType,\n type HTMLAttributes,\n type PropsWithChildren,\n} from 'react'\nimport type { WithCss } from '../types'\nimport type {\n CerberusPrimitiveEl,\n CerberusPrimitiveRecipe,\n CerberusRecipe,\n CerberusSlotRecipe,\n WithRecipeOptions,\n} from './types'\n\n/**\n * This module contains a factory for creating Cerberus primitives.\n * @module @cerberus/core/system/factory\n */\n\nexport class CerberusPrimitive {\n recipe: CerberusPrimitiveRecipe | null\n\n constructor(recipe?: CerberusPrimitiveRecipe) {\n this.recipe = recipe ?? null\n }\n\n private hasStyles(styles: string | undefined): Record<string, unknown> {\n if (styles) {\n return {\n className: styles,\n }\n }\n return {}\n }\n\n private validateComponent<P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n ) {\n if (typeof Component !== 'function' && typeof Component !== 'object') {\n return false\n }\n return true\n }\n\n /**\n * Creates a Cerberus component with bare features and no recipe.\n * @param Component - The React component to enhance with Cerberus features.\n * Can be a string or a component reference.\n * @returns A new React component that applies Cerberus features to the\n * original component.\n *\n * @example\n * ```ts\n * const { withNoRecipe } = createCerberusPrimitive(buttonRecipe)\n * const Button = withNoRecipe('button')\n * ```\n */\n withNoRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P> => {\n const { defaultProps } = options || {}\n const El = Component as ComponentType<P> | ElementType\n\n const CerbComponent = (props: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = props\n const styles = this.hasStyles(cx(className, css(customCss)))\n return <El {...defaultProps} {...styles} {...(nativeProps as P)} />\n }\n\n if (this.validateComponent(El)) {\n const ElName = typeof El === 'string' ? El : El.displayName || El.name\n CerbComponent.displayName = ElName\n }\n\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with the given recipe.\n * @param Component - The React component to enhance with the recipe.\n * @param options - Options for the recipe.\n * @returns A new React component that applies the recipe to the original\n * component.\n */\n withRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P & WithRecipeOptions['defaultProps']> => {\n const { defaultProps } = options || {}\n const El = Component as ComponentType<P> | ElementType\n\n const recipe = this.recipe as CerberusRecipe\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const {\n css: customCss,\n className,\n ...restOfInternalProps\n } = internalProps\n\n const [variantOptions, nativeProps] =\n recipe.splitVariantProps(restOfInternalProps)\n const recipeStyles = recipe(variantOptions)\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, recipeStyles, css(customCss))}\n />\n )\n }\n\n if (this.validateComponent(El)) {\n const ElName = typeof El === 'string' ? El : El.displayName || El.name\n CerbComponent.displayName = ElName\n }\n\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with a slot recipe applied.\n * @param Component - The React component to enhance with Cerberus features.\n * @param recipe - The slot recipe to apply to the component.\n * @returns A new React component that applies Cerberus features and the\n * specified slot recipe to the original component.\n * @example\n * ```typescript\n * const { withSlotRecipe } = createCerberusPrimitive(field)\n * const Field = withSlotRecipe(RawField, field)\n * ```\n */\n withSlotRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P> | string,\n slot: keyof RecipeVariantRecord,\n options?: WithRecipeOptions,\n ) => {\n const { defaultProps } = options || {}\n const El = Component as ComponentType<P> | ElementType\n\n const recipe = this.recipe as CerberusSlotRecipe<typeof slot>\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const {\n css: customCss,\n className,\n ...restOfInternalProps\n } = internalProps\n\n const [variantOptions, nativeProps] =\n recipe.splitVariantProps(restOfInternalProps)\n const styles = recipe(variantOptions)\n const slotStyles = styles[slot as keyof typeof styles]\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, slotStyles, css(customCss))}\n />\n )\n }\n\n if (this.validateComponent(El)) {\n const ElName = typeof El === 'string' ? El : El.displayName || El.name\n CerbComponent.displayName = ElName\n }\n\n return CerbComponent\n }\n}\n","import { CerberusPrimitive } from './primitive-factory'\nimport type { CerberusFactory, CerberusPrimitiveRecipe } from './types'\nimport { cerberusFactoryProxy } from './factory'\n\n/**\n * This module contains the user interface for creating Cerberus primitives.\n * @module @cerberus/core/system/create-cerb-primitive\n */\n\n/**\n * A factory function that creates a Cerberus primitive instance with the given\n * recipe.\n * @param recipe\n * @returns An object with three methods: `withNoRecipe`, `withRecipe`, and `withSlotRecipe` that\n * apply the recipes and special Cerberus helpers like `css`.\n *\n * @example\n * ```tsx\n * const { withRecipe } = createCerberusPrimitive(myCustomRecipe);\n * export const Button = withRecipe(MyCustomButton)\n * ```\n */\nexport function createCerberusPrimitive<T extends CerberusPrimitiveRecipe>(\n recipe?: T,\n) {\n return new CerberusPrimitive(recipe)\n}\n\n/**\n * A utility function to access Cerberus components by their name.\n * @param component - The name of the Cerberus component to access.\n * @returns The Cerberus component corresponding to the provided name.\n * @throws An error if the component name is not valid.\n *\n * @example\n * ```tsx\n * import { cerberus } from '@cerberus/react'\n * const Button = cerberus('button')\n *\n * <Button css={{ color: 'blue' }} asChild>\n * <Link href=\"/some-page\">Click me</Link>\n * </Button>\n * ```\n */\nexport const cerberus = cerberusFactoryProxy as CerberusFactory\n\nexport * from './types'\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { CarouselParts_alias_2 as CarouselParts } from '../../_tsup-dts-rollup.cjs';
|