@pnp/spfx-controls-react
Version:
Reusable React controls for SharePoint Framework solutions
39 lines • 1.85 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FieldUrlRenderer = void 0;
var tslib_1 = require("tslib");
var React = tslib_1.__importStar(require("react"));
var Utilities_1 = require("@fluentui/react/lib/Utilities");
var Link_1 = require("@fluentui/react/lib/Link");
var telemetry = tslib_1.__importStar(require("../../../common/telemetry"));
var FieldUrlRenderer_module_scss_1 = tslib_1.__importDefault(require("./FieldUrlRenderer.module.scss"));
/**
* Field URL Renderer.
* Used for:
* - URL (Hyperlink, Image)
*/
var FieldUrlRenderer = /** @class */ (function (_super) {
tslib_1.__extends(FieldUrlRenderer, _super);
function FieldUrlRenderer(props, state) {
var _this = _super.call(this, props, state) || this;
telemetry.track('FieldUrlRenderer', {});
_this.state = {};
return _this;
}
FieldUrlRenderer.prototype.render = function () {
var isImageUrl = this.props.isImageUrl;
if (isImageUrl) {
return (React.createElement("div", { className: (0, Utilities_1.css)(this.props.className, FieldUrlRenderer_module_scss_1.default.image), style: this.props.cssProps, onClick: this._onImgClick.bind(this) },
React.createElement("img", { src: this.props.url, alt: this.props.text })));
}
else {
return (React.createElement(Link_1.Link, { className: (0, Utilities_1.css)(this.props.className, FieldUrlRenderer_module_scss_1.default.link), target: '_blank', href: this.props.url, style: this.props.cssProps }, this.props.text));
}
};
FieldUrlRenderer.prototype._onImgClick = function () {
window.open(this.props.url, '_blank');
};
return FieldUrlRenderer;
}(React.Component));
exports.FieldUrlRenderer = FieldUrlRenderer;
//# sourceMappingURL=FieldUrlRenderer.js.map