const require_runtime = require("../../../../_virtual/_rolldown/runtime.js");
const require_objectSpread2 = require("../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectSpread2.js");
const require_objectWithoutProperties = require("../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectWithoutProperties.js");
const require_Action = require("../Action/Action.js");
const require_Handle = require("../Handle/Handle.js");
const require_Remove = require("../Remove/Remove.js");
let react = require("react");
react = require_runtime.__toESM(react);
let classnames = require("classnames");
classnames = require_runtime.__toESM(classnames);
require("./TreeItem.less");
//#region src/components/pisellDraggable/components/TreeItem/TreeItem.tsx
const _excluded = [
	"childCount",
	"clone",
	"depth",
	"disableSelection",
	"disableInteraction",
	"ghost",
	"handleProps",
	"indentationWidth",
	"indicator",
	"collapsed",
	"onCollapse",
	"onRemove",
	"style",
	"wrapperRef",
	"item",
	"renderItem",
	"isBlocked",
	"__designMode"
];
const TreeItem = (0, react.forwardRef)((props, ref) => {
	const { childCount, clone, depth, disableSelection, disableInteraction, ghost, handleProps, indentationWidth, indicator, collapsed, onCollapse, onRemove, style, wrapperRef, item, renderItem, isBlocked, __designMode } = props, otherProps = require_objectWithoutProperties._objectWithoutProperties(props, _excluded);
	if (renderItem) return renderItem(props, ref);
	return /* @__PURE__ */ react.default.createElement("li", require_objectSpread2._objectSpread2({
		className: (0, classnames.default)("Wrapper", clone && "clone", ghost && "ghost", indicator && "indicator", disableSelection && "disableSelection", disableInteraction && "disableInteraction"),
		ref: wrapperRef,
		style: { "--spacing": `${indentationWidth * depth}px` }
	}, otherProps), /* @__PURE__ */ react.default.createElement("div", {
		className: "TreeItem",
		ref,
		style
	}, /* @__PURE__ */ react.default.createElement(require_Handle.Handle, __designMode === "design" ? {} : require_objectSpread2._objectSpread2({}, handleProps)), onCollapse && /* @__PURE__ */ react.default.createElement(require_Action.Action, {
		onClick: onCollapse,
		className: (0, classnames.default)("Collapse", collapsed && "collapsed")
	}, collapseIcon), /* @__PURE__ */ react.default.createElement("span", { className: "Text" }, item.id), !clone && onRemove && /* @__PURE__ */ react.default.createElement(require_Remove.Remove, { onClick: onRemove }), clone && childCount && childCount > 1 ? /* @__PURE__ */ react.default.createElement("span", { className: "Count" }, childCount) : null));
});
const collapseIcon = /* @__PURE__ */ react.default.createElement("svg", {
	width: "10",
	xmlns: "http://www.w3.org/2000/svg",
	viewBox: "0 0 70 41"
}, /* @__PURE__ */ react.default.createElement("path", { d: "M30.76 39.2402C31.885 40.3638 33.41 40.995 35 40.995C36.59 40.995 38.115 40.3638 39.24 39.2402L68.24 10.2402C69.2998 9.10284 69.8768 7.59846 69.8494 6.04406C69.822 4.48965 69.1923 3.00657 68.093 1.90726C66.9937 0.807959 65.5106 0.178263 63.9562 0.150837C62.4018 0.123411 60.8974 0.700397 59.76 1.76024L35 26.5102L10.24 1.76024C9.10259 0.700397 7.59822 0.123411 6.04381 0.150837C4.4894 0.178263 3.00632 0.807959 1.90702 1.90726C0.807714 3.00657 0.178019 4.48965 0.150593 6.04406C0.123167 7.59846 0.700153 9.10284 1.75999 10.2402L30.76 39.2402Z" }));
//#endregion
exports.TreeItem = TreeItem;
