UNPKG

@openshift-assisted/ui-lib

Version:

React component library for the Assisted Installer UI

38 lines 2.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SimpleAIPrismTheme = void 0; const tslib_1 = require("tslib"); const react_1 = tslib_1.__importDefault(require("react")); const prism_react_renderer_1 = tslib_1.__importStar(require("prism-react-renderer")); const react_core_1 = require("@patternfly/react-core"); const global_Color_100_1 = require("@patternfly/react-tokens/dist/js/global_Color_100"); const global_palette_purple_400_1 = require("@patternfly/react-tokens/dist/js/global_palette_purple_400"); const global_palette_blue_300_1 = require("@patternfly/react-tokens/dist/js/global_palette_blue_300"); const github_1 = tslib_1.__importDefault(require("prism-react-renderer/themes/github")); require("./PrismCode.css"); exports.SimpleAIPrismTheme = { plain: { color: global_Color_100_1.global_Color_100.value, backgroundColor: github_1.default.plain.backgroundColor, fontSize: '.93em', }, styles: [ { types: ['variable'], style: { color: global_palette_blue_300_1.global_palette_blue_300.value, }, }, { types: ['class-name', 'function', 'tag', 'attr-name'], style: { color: global_palette_purple_400_1.global_palette_purple_400.value, }, }, ], }; const PrismCode = ({ code, language = 'bash', theme = github_1.default, copiable = false, }) => (react_1.default.createElement(prism_react_renderer_1.default, Object.assign({}, prism_react_renderer_1.defaultProps, { code: code, language: language, theme: theme }), ({ className, style, tokens, getLineProps, getTokenProps }) => (react_1.default.createElement(react_core_1.Text, { component: react_core_1.TextVariants.pre, className: className, style: style }, copiable && (react_1.default.createElement(react_core_1.ClipboardCopy, { isReadOnly: true, variant: 'inline-compact', onCopy: (e) => (0, react_core_1.clipboardCopyFunc)(e, code), style: { float: 'right', background: 'inherit' } }, '')), tokens.map((line, i) => (react_1.default.createElement("div", Object.assign({ key: i }, getLineProps({ line, key: i })), line.map((token, key) => (react_1.default.createElement("span", Object.assign({ key: key }, getTokenProps({ token, key })))))))))))); exports.default = PrismCode; //# sourceMappingURL=PrismCode.js.map