123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.call = call;
- exports.default = void 0;
- exports.note = note;
- exports.noteOnce = noteOnce;
- exports.preMessage = void 0;
- exports.resetWarned = resetWarned;
- exports.warning = warning;
- exports.warningOnce = warningOnce;
- /* eslint-disable no-console */
- var warned = {};
- var preWarningFns = [];
- /**
- * Pre warning enable you to parse content before console.error.
- * Modify to null will prevent warning.
- */
- var preMessage = exports.preMessage = function preMessage(fn) {
- preWarningFns.push(fn);
- };
- /**
- * Warning if condition not match.
- * @param valid Condition
- * @param message Warning message
- * @example
- * ```js
- * warning(false, 'some error'); // print some error
- * warning(true, 'some error'); // print nothing
- * warning(1 === 2, 'some error'); // print some error
- * ```
- */
- function warning(valid, message) {
- if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {
- var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {
- return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'warning');
- }, message);
- if (finalMessage) {
- console.error("Warning: ".concat(finalMessage));
- }
- }
- }
- /** @see Similar to {@link warning} */
- function note(valid, message) {
- if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {
- var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {
- return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'note');
- }, message);
- if (finalMessage) {
- console.warn("Note: ".concat(finalMessage));
- }
- }
- }
- function resetWarned() {
- warned = {};
- }
- function call(method, valid, message) {
- if (!valid && !warned[message]) {
- method(false, message);
- warned[message] = true;
- }
- }
- /** @see Same as {@link warning}, but only warn once for the same message */
- function warningOnce(valid, message) {
- call(warning, valid, message);
- }
- /** @see Same as {@link warning}, but only warn once for the same message */
- function noteOnce(valid, message) {
- call(note, valid, message);
- }
- warningOnce.preMessage = preMessage;
- warningOnce.resetWarned = resetWarned;
- warningOnce.noteOnce = noteOnce;
- var _default = exports.default = warningOnce;
|