rn-custom-style-sheet
Version:
React Native component to select a specific value from a range of values.
41 lines (40 loc) • 1.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _hyphenateStyleName = _interopRequireDefault(require("hyphenate-style-name"));
var _Components = require("../../Components");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function negate(cond) {
return `not ${cond}`;
}
function keyVal(k, v) {
const realKey = (0, _hyphenateStyleName.default)(k);
// px shorthand
if (typeof v === 'number') {
v = `${v}px`;
}
if (v === true) {
return realKey;
}
if (v === false) {
return negate(realKey);
}
return `(${realKey}: ${v})`;
}
function join(conditions) {
return conditions.join(' and ');
}
function toQuery(obj) {
const rules = [];
Object.keys(_Components.MediaQueryProps.all).forEach(k => {
const v = obj[k];
if (v != null) {
rules.push(keyVal(k, v));
}
});
return join(rules);
}
var _default = exports.default = toQuery;
//# sourceMappingURL=ToQuery.js.map