Files
HRM-System/node_modules/react-country-flag/dist/react-country-flag.cjs.development.js
2026-04-13 08:19:53 +08:00

82 lines
2.5 KiB
JavaScript

'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
function _extends() {
_extends = Object.assign ? Object.assign.bind() : function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
var _excluded = ["cdnSuffix", "cdnUrl", "countryCode", "style", "svg"];
var DEFAULT_CDN_URL = 'https://cdn.jsdelivr.net/gh/lipis/flag-icons/flags/4x3/';
var DEFAULT_CDN_SUFFIX = 'svg';
// offset between uppercase ascii and regional indicator symbols
var OFFSET = 127397;
var ReactCountryFlag = function ReactCountryFlag(_ref) {
var _ref$cdnSuffix = _ref.cdnSuffix,
cdnSuffix = _ref$cdnSuffix === void 0 ? DEFAULT_CDN_SUFFIX : _ref$cdnSuffix,
_ref$cdnUrl = _ref.cdnUrl,
cdnUrl = _ref$cdnUrl === void 0 ? DEFAULT_CDN_URL : _ref$cdnUrl,
countryCode = _ref.countryCode,
style = _ref.style,
_ref$svg = _ref.svg,
svg = _ref$svg === void 0 ? false : _ref$svg,
props = _objectWithoutPropertiesLoose(_ref, _excluded);
if (typeof countryCode !== 'string') {
return null;
}
if (svg) {
var flagUrl = "" + cdnUrl + countryCode.toLowerCase() + "." + cdnSuffix;
return React.createElement("img", Object.assign({}, props, {
src: flagUrl,
style: _extends({
display: 'inline-block',
width: '1em',
height: '1em',
verticalAlign: 'middle'
}, style)
}));
}
var emoji = countryCode.toUpperCase().replace(/./g, function (_char) {
return String.fromCodePoint(_char.charCodeAt(0) + OFFSET);
});
return React.createElement("span", Object.assign({
role: "img"
}, props, {
style: _extends({
display: 'inline-block',
fontSize: '1em',
lineHeight: '1em',
verticalAlign: 'middle'
}, style)
}), emoji);
};
exports.ReactCountryFlag = ReactCountryFlag;
exports.default = ReactCountryFlag;
//# sourceMappingURL=react-country-flag.cjs.development.js.map