@bettercms-ai/ui 0.12.0 → 0.14.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/dist/{Video-BPXQ-e0c.d.ts → Video-c2HnnOCp.d.ts} +4 -2
- package/dist/blocks.d.ts +1 -1
- package/dist/blocks.js +6 -2
- package/dist/blocks.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +18 -5
- package/dist/index.js.map +1 -1
- package/dist/registry.js +6 -2
- package/dist/registry.js.map +1 -1
- package/dist/renderer.js +18 -5
- package/dist/renderer.js.map +1 -1
- package/dist/resolve.d.ts +6 -5
- package/dist/resolve.js +17 -1
- package/dist/resolve.js.map +1 -1
- package/package.json +4 -3
package/dist/index.js
CHANGED
|
@@ -555,7 +555,8 @@ function Image({
|
|
|
555
555
|
"data-bcms-field": field,
|
|
556
556
|
"data-bcms-kind": kind
|
|
557
557
|
}) {
|
|
558
|
-
|
|
558
|
+
const sized = typeof width === "number" && width > 0;
|
|
559
|
+
return /* @__PURE__ */ jsxs2("figure", { className: cn(sized ? "max-w-full" : "w-full", className), children: [
|
|
559
560
|
/* @__PURE__ */ jsx4(
|
|
560
561
|
"img",
|
|
561
562
|
{
|
|
@@ -566,7 +567,8 @@ function Image({
|
|
|
566
567
|
sizes,
|
|
567
568
|
"data-bcms-field": field,
|
|
568
569
|
"data-bcms-kind": kind,
|
|
569
|
-
|
|
570
|
+
style: sized ? { width: `${width}px`, maxWidth: "100%", height: "auto" } : void 0,
|
|
571
|
+
className: cn(!sized && "w-full", "h-auto rounded-md object-cover"),
|
|
570
572
|
loading: "lazy"
|
|
571
573
|
}
|
|
572
574
|
),
|
|
@@ -588,6 +590,7 @@ function Button({
|
|
|
588
590
|
newTab = false,
|
|
589
591
|
align = "left",
|
|
590
592
|
className = "",
|
|
593
|
+
style,
|
|
591
594
|
"data-bcms-field": field,
|
|
592
595
|
"data-bcms-kind": kind
|
|
593
596
|
}) {
|
|
@@ -622,6 +625,7 @@ function Button({
|
|
|
622
625
|
...newTab === true ? { target: "_blank", rel: "noopener noreferrer" } : {},
|
|
623
626
|
"data-bcms-field": field,
|
|
624
627
|
"data-bcms-kind": kind,
|
|
628
|
+
style,
|
|
625
629
|
className: cn(baseStyles, variantStyles[buttonVariantOf(variant)], alignClass, sizeClass, fullClass, className),
|
|
626
630
|
children: [
|
|
627
631
|
icon && /* @__PURE__ */ jsx5("span", { className: "mr-2 inline-flex", dangerouslySetInnerHTML: { __html: buttonIconSvg(icon, "bcms-btn-icon") } }),
|
|
@@ -953,6 +957,9 @@ var BLOCK_REGISTRY = {
|
|
|
953
957
|
};
|
|
954
958
|
var BLOCK_TYPES = Object.keys(BLOCK_REGISTRY);
|
|
955
959
|
|
|
960
|
+
// src/renderer.tsx
|
|
961
|
+
import { splitButtonStyle } from "@bettercms-ai/types";
|
|
962
|
+
|
|
956
963
|
// src/blockStyle.ts
|
|
957
964
|
import { blockStyleToCss } from "@bettercms-ai/types";
|
|
958
965
|
function blockStyleToReactStyle(style) {
|
|
@@ -963,6 +970,11 @@ function blockStyleToReactStyle(style) {
|
|
|
963
970
|
import "react";
|
|
964
971
|
import { jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
965
972
|
var CONTAINER_TYPES = /* @__PURE__ */ new Set(["columns", "section", "slider", "tabs"]);
|
|
973
|
+
function styleOf(block) {
|
|
974
|
+
if (block.type !== "button") return { wrapper: blockStyleToReactStyle(block.style), paint: {} };
|
|
975
|
+
const { placement, paint } = splitButtonStyle(block.style);
|
|
976
|
+
return { wrapper: blockStyleToReactStyle(placement), paint: paint ? { style: paint } : {} };
|
|
977
|
+
}
|
|
966
978
|
function bindingProps(block, annotate) {
|
|
967
979
|
if (!annotate || !block.id) return {};
|
|
968
980
|
switch (block.type) {
|
|
@@ -993,8 +1005,8 @@ function resolveBlock(block, className, annotate = false) {
|
|
|
993
1005
|
);
|
|
994
1006
|
}
|
|
995
1007
|
const Component = entry.component;
|
|
996
|
-
const blockStyle =
|
|
997
|
-
const el = /* @__PURE__ */ jsx15(Component, { ...block.props, className, ...bindingProps(block, annotate) });
|
|
1008
|
+
const { wrapper: blockStyle, paint } = styleOf(block);
|
|
1009
|
+
const el = /* @__PURE__ */ jsx15(Component, { ...block.props, ...paint, className, ...bindingProps(block, annotate) });
|
|
998
1010
|
return blockStyle ? /* @__PURE__ */ jsx15("div", { style: blockStyle, children: el }) : el;
|
|
999
1011
|
}
|
|
1000
1012
|
function BlockRenderer({
|
|
@@ -1018,11 +1030,12 @@ function BlockRenderer({
|
|
|
1018
1030
|
}
|
|
1019
1031
|
const Component = entry.component;
|
|
1020
1032
|
const containerProps = CONTAINER_TYPES.has(block.type) ? { renderBlock: renderBlock ?? ((child) => resolveBlock(child, void 0, annotate)) } : {};
|
|
1021
|
-
const blockStyle =
|
|
1033
|
+
const { wrapper: blockStyle, paint } = styleOf(block);
|
|
1022
1034
|
const el = /* @__PURE__ */ jsx15(
|
|
1023
1035
|
Component,
|
|
1024
1036
|
{
|
|
1025
1037
|
...block.props,
|
|
1038
|
+
...paint,
|
|
1026
1039
|
className,
|
|
1027
1040
|
...containerProps,
|
|
1028
1041
|
...bindingProps(block, annotate)
|