@atlaskit/adf-schema
Version:
Shared package that contains the ADF-schema (json) and ProseMirror node/mark specs
27 lines (26 loc) • 887 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getLinkAttrs = void 0;
var _isRootRelative = require("../../utils/is-root-relative");
var _isSafeUrl = require("../../utils/is-safe-url");
var _normalizeUrl = require("../../utils/normalize-url");
var getLinkAttrs = exports.getLinkAttrs = function getLinkAttrs(attribute) {
return function (domNode) {
var dom = domNode;
var href = dom.getAttribute(attribute) || '';
var attrs = {
__confluenceMetadata: dom.hasAttribute('__confluenceMetadata') ? JSON.parse(dom.getAttribute('__confluenceMetadata') || '') : undefined
};
if (!(0, _isSafeUrl.isSafeUrl)(href)) {
return false;
}
if ((0, _isRootRelative.isRootRelative)(href)) {
attrs.href = href;
return attrs;
}
attrs.href = (0, _normalizeUrl.normalizeUrl)(href);
return attrs;
};
};