UNPKG

@asyncapi/react-component

Version:

A React component for AsyncAPI specification.

34 lines 2.42 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.FieldStatusIndicator = void 0; var react_1 = __importDefault(require("react")); var FieldStatusIndicator = function (_a) { var _b, _c, _d; var schema = _a.schema, _e = _a.required, required = _e === void 0 ? false : _e, isPatternProperty = _a.isPatternProperty, dependentRequired = _a.dependentRequired; if (!schema) { return null; } var isRequired = required !== null && required !== void 0 ? required : false; var isDeprecated = (_b = schema.deprecated()) !== null && _b !== void 0 ? _b : false; var isWriteOnly = (_c = schema.writeOnly()) !== null && _c !== void 0 ? _c : false; var isReadOnly = (_d = schema.readOnly()) !== null && _d !== void 0 ? _d : false; var isPattern = isPatternProperty !== null && isPatternProperty !== void 0 ? isPatternProperty : false; return (react_1.default.createElement(react_1.default.Fragment, null, (isRequired || isDeprecated || isWriteOnly || isReadOnly || isPattern) && (react_1.default.createElement("div", { className: "flex items-center space-x-2" }, isRequired && (react_1.default.createElement("span", { className: "text-red-600 text-xs rounded" }, "required")), dependentRequired && (react_1.default.createElement(react_1.default.Fragment, null, react_1.default.createElement("div", { className: "text-gray-500 text-xs" }, "required when defined:"), react_1.default.createElement("div", { className: "text-red-600 text-xs" }, dependentRequired.join(', ')))), isDeprecated && (react_1.default.createElement("span", { className: "text-red-700 text-xs px-2 py-1 bg-red-200 border border-red-700 rounded" }, "deprecated")), isPatternProperty && (react_1.default.createElement("div", { className: "text-gray-500 text-xs italic" }, "(pattern property)")), isWriteOnly && (react_1.default.createElement("span", { className: "text-gray-600 text-xs rounded" }, "write-only")), isReadOnly && (react_1.default.createElement("span", { className: "text-gray-500 text-xs rounded" }, "read-only")))))); }; exports.FieldStatusIndicator = FieldStatusIndicator; //# sourceMappingURL=FieldStatusIndicators.js.map