firebase-bolt
Advanced tools
Comparing version 0.7.0 to 0.7.1
@@ -1,2 +0,1 @@ | ||
changed - Path expressions should now use path template syntax instead of wildcard variables. | ||
changed - Deprecate fn(x) = exp; function definition format (with deprecation warning). | ||
fixed - Parse errors are more granular - reporting the source of the error line rather than just failing a whole type or path statement. |
@@ -53,10 +53,15 @@ # Firebase Bolt Security and Modeling Language | ||
Property names in type statements should be valid Identifiers (see below). If you need | ||
to use any other character in a property name, you can enclose them in quotes (note | ||
that Firebase allows any character in a path *except* for `.`, `$`, `#`, `[`, `[`, `/`, | ||
or control characters). | ||
Built-in base types are also similar to JavaScript types: | ||
String - Stings | ||
String - Character strings | ||
Number - Integer or floating point | ||
Boolean - Values true or false | ||
Boolean - Values `true` or `false` | ||
Object - A structured object containing named properties. | ||
Any - Every non-null value is of type Any. | ||
Null - Value null (same as absence of a value, or deleted) | ||
Null - Value `null` (same as absence of a value, or deleted) | ||
Map<Key, Value> - A generic type - maps string valued keys to corresponding | ||
@@ -274,2 +279,7 @@ values (similar to an Object type). | ||
# Identifiers | ||
Identifiers in expressions, property names, and path captured parts, must begin with one of | ||
alphabetic, _ or $ characters and can contain any alphabetic, numeric, _ or $. | ||
# Expressions | ||
@@ -281,2 +291,5 @@ | ||
- Binary operators: +, -, *, /, % | ||
- String constants can be expressed using single or double quotes and can | ||
include Hex escape characters (\xXX), Unicode escape characters (\uXXXX) | ||
or special escape characters \b, \f, \n, \r, or \t. | ||
@@ -283,0 +296,0 @@ # Global variables |
@@ -40,3 +40,8 @@ /* | ||
function error(s) { | ||
lastMessage = errorString(s); | ||
var err = errorString(s); | ||
// De-dup identical messages | ||
if (err === lastMessage) { | ||
return; | ||
} | ||
lastMessage = err; | ||
lastError = lastMessage; | ||
@@ -50,3 +55,8 @@ if (!silenceOutput) { | ||
function warn(s) { | ||
lastMessage = errorString(s); | ||
var err = errorString(s); | ||
// De-dup identical messages | ||
if (err === lastMessage) { | ||
return; | ||
} | ||
lastMessage = err; | ||
if (!silenceOutput) { | ||
@@ -85,2 +95,2 @@ console.warn(lastMessage); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvZ2dlci50cyJdLCJuYW1lcyI6WyJyZXNldCIsInNpbGVudCIsInNldENvbnRleHQiLCJlcnJvciIsIndhcm4iLCJnZXRMYXN0TWVzc2FnZSIsImVycm9yU3RyaW5nIiwiaGFzRXJyb3JzIiwiZXJyb3JTdW1tYXJ5Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILDBDQUEwQztBQUUxQyxJQUFJLFNBQWlCLENBQUM7QUFDdEIsSUFBSSxXQUFtQixDQUFDO0FBQ3hCLElBQUksVUFBa0IsQ0FBQztBQUN2QixJQUFJLGFBQXNCLENBQUM7QUFFM0IsSUFBSSxVQUFVLEdBQUcsY0FBTSxPQUFBLENBQWdCLEVBQUUsQ0FBQyxFQUFuQixDQUFtQixDQUFDO0FBRTNDLEtBQUssRUFBRSxDQUFDO0FBRVI7SUFDRUEsU0FBU0EsR0FBR0EsU0FBU0EsQ0FBQ0E7SUFDdEJBLFdBQVdBLEdBQUdBLFNBQVNBLENBQUNBO0lBQ3hCQSxVQUFVQSxHQUFHQSxDQUFDQSxDQUFDQTtJQUNmQSxhQUFhQSxHQUFHQSxLQUFLQSxDQUFDQTtBQUN4QkEsQ0FBQ0E7QUFMZSxhQUFLLFFBS3BCLENBQUE7QUFFRCxnQkFBdUIsQ0FBUTtJQUFSQyxpQkFBUUEsR0FBUkEsUUFBUUE7SUFDN0JBLGFBQWFBLEdBQUdBLENBQUNBLENBQUNBO0FBQ3BCQSxDQUFDQTtBQUZlLGNBQU0sU0FFckIsQ0FBQTtBQU9ELG9CQUEyQixFQUFzQjtJQUMvQ0MsVUFBVUEsR0FBR0EsRUFBRUEsQ0FBQ0E7QUFDbEJBLENBQUNBO0FBRmUsa0JBQVUsYUFFekIsQ0FBQTtBQUVELGVBQXNCLENBQVM7SUFDN0JDLFdBQVdBLEdBQUdBLFdBQVdBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO0lBQzdCQSxTQUFTQSxHQUFHQSxXQUFXQSxDQUFDQTtJQUN4QkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsYUFBYUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDbkJBLE9BQU9BLENBQUNBLEtBQUtBLENBQUNBLFNBQVNBLENBQUNBLENBQUNBO0lBQzNCQSxDQUFDQTtJQUNEQSxVQUFVQSxJQUFJQSxDQUFDQSxDQUFDQTtBQUNsQkEsQ0FBQ0E7QUFQZSxhQUFLLFFBT3BCLENBQUE7QUFFRCxjQUFxQixDQUFTO0lBQzVCQyxXQUFXQSxHQUFHQSxXQUFXQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtJQUM3QkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsYUFBYUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDbkJBLE9BQU9BLENBQUNBLElBQUlBLENBQUNBLFdBQVdBLENBQUNBLENBQUNBO0lBQzVCQSxDQUFDQTtBQUNIQSxDQUFDQTtBQUxlLFlBQUksT0FLbkIsQ0FBQTtBQUVEO0lBQ0VDLE1BQU1BLENBQUNBLFdBQVdBLENBQUNBO0FBQ3JCQSxDQUFDQTtBQUZlLHNCQUFjLGlCQUU3QixDQUFBO0FBRUQscUJBQXFCLENBQVM7SUFDNUJDLElBQUlBLEdBQUdBLEdBQUdBLFVBQVVBLEVBQUVBLENBQUNBO0lBQ3ZCQSxFQUFFQSxDQUFDQSxDQUFDQSxHQUFHQSxDQUFDQSxJQUFJQSxLQUFLQSxTQUFTQSxJQUFJQSxHQUFHQSxDQUFDQSxNQUFNQSxLQUFLQSxTQUFTQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUN2REEsTUFBTUEsQ0FBQ0EsT0FBT0EsR0FBR0EsR0FBR0EsQ0FBQ0EsSUFBSUEsR0FBR0EsR0FBR0EsR0FBR0EsR0FBR0EsQ0FBQ0EsTUFBTUEsR0FBR0EsSUFBSUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7SUFDMURBLENBQUNBO0lBQUNBLElBQUlBLENBQUNBLENBQUNBO1FBQ05BLE1BQU1BLENBQUNBLFFBQVFBLEdBQUdBLENBQUNBLENBQUNBO0lBQ3RCQSxDQUFDQTtBQUNIQSxDQUFDQTtBQUVEO0lBQ0VDLE1BQU1BLENBQUNBLFVBQVVBLEdBQUdBLENBQUNBLENBQUNBO0FBQ3hCQSxDQUFDQTtBQUZlLGlCQUFTLFlBRXhCLENBQUE7QUFFRDtJQUNFQyxFQUFFQSxDQUFDQSxDQUFDQSxVQUFVQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNyQkEsTUFBTUEsQ0FBQ0EsU0FBU0EsQ0FBQ0E7SUFDbkJBLENBQUNBO0lBRURBLEVBQUVBLENBQUNBLENBQUNBLFVBQVVBLEtBQUtBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1FBQ3JCQSxNQUFNQSxDQUFDQSxnQkFBZ0JBLEdBQUdBLFVBQVVBLENBQUNBO0lBQ3ZDQSxDQUFDQTtJQUNEQSxNQUFNQSxDQUFDQSxFQUFFQSxDQUFDQTtBQUNaQSxDQUFDQTtBQVRlLG9CQUFZLGVBUzNCLENBQUEiLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vLy8gPHJlZmVyZW5jZSBwYXRoPVwidHlwaW5ncy9ub2RlLmQudHNcIiAvPlxuXG5sZXQgbGFzdEVycm9yOiBzdHJpbmc7XG5sZXQgbGFzdE1lc3NhZ2U6IHN0cmluZztcbmxldCBlcnJvckNvdW50OiBudW1iZXI7XG5sZXQgc2lsZW5jZU91dHB1dDogYm9vbGVhbjtcblxubGV0IGdldENvbnRleHQgPSAoKSA9PiAoPEVycm9yQ29udGV4dD4ge30pO1xuXG5yZXNldCgpO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVzZXQoKSB7XG4gIGxhc3RFcnJvciA9IHVuZGVmaW5lZDtcbiAgbGFzdE1lc3NhZ2UgPSB1bmRlZmluZWQ7XG4gIGVycm9yQ291bnQgPSAwO1xuICBzaWxlbmNlT3V0cHV0ID0gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWxlbnQoZiA9IHRydWUpIHtcbiAgc2lsZW5jZU91dHB1dCA9IGY7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXJyb3JDb250ZXh0IHtcbiAgbGluZT86IG51bWJlcjtcbiAgY29sdW1uPzogbnVtYmVyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0Q29udGV4dChmbjogKCkgPT4gRXJyb3JDb250ZXh0KSB7XG4gIGdldENvbnRleHQgPSBmbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVycm9yKHM6IHN0cmluZykge1xuICBsYXN0TWVzc2FnZSA9IGVycm9yU3RyaW5nKHMpO1xuICBsYXN0RXJyb3IgPSBsYXN0TWVzc2FnZTtcbiAgaWYgKCFzaWxlbmNlT3V0cHV0KSB7XG4gICAgY29uc29sZS5lcnJvcihsYXN0RXJyb3IpO1xuICB9XG4gIGVycm9yQ291bnQgKz0gMTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdhcm4oczogc3RyaW5nKSB7XG4gIGxhc3RNZXNzYWdlID0gZXJyb3JTdHJpbmcocyk7XG4gIGlmICghc2lsZW5jZU91dHB1dCkge1xuICAgIGNvbnNvbGUud2FybihsYXN0TWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExhc3RNZXNzYWdlKCk6IHN0cmluZyB7XG4gIHJldHVybiBsYXN0TWVzc2FnZTtcbn1cblxuZnVuY3Rpb24gZXJyb3JTdHJpbmcoczogc3RyaW5nKSB7XG4gIGxldCBjdHggPSBnZXRDb250ZXh0KCk7XG4gIGlmIChjdHgubGluZSAhPT0gdW5kZWZpbmVkICYmIGN0eC5jb2x1bW4gIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiAnYm9sdDonICsgY3R4LmxpbmUgKyAnOicgKyBjdHguY29sdW1uICsgJzogJyArIHM7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuICdib2x0OiAnICsgcztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXJyb3JDb3VudCA+IDA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlcnJvclN1bW1hcnkoKTogc3RyaW5nIHtcbiAgaWYgKGVycm9yQ291bnQgPT09IDEpIHtcbiAgICByZXR1cm4gbGFzdEVycm9yO1xuICB9XG5cbiAgaWYgKGVycm9yQ291bnQgIT09IDApIHtcbiAgICByZXR1cm4gXCJGYXRhbCBlcnJvcnM6IFwiICsgZXJyb3JDb3VudDtcbiAgfVxuICByZXR1cm4gXCJcIjtcbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvZ2dlci50cyJdLCJuYW1lcyI6WyJyZXNldCIsInNpbGVudCIsInNldENvbnRleHQiLCJlcnJvciIsIndhcm4iLCJnZXRMYXN0TWVzc2FnZSIsImVycm9yU3RyaW5nIiwiaGFzRXJyb3JzIiwiZXJyb3JTdW1tYXJ5Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILDBDQUEwQztBQUUxQyxJQUFJLFNBQWlCLENBQUM7QUFDdEIsSUFBSSxXQUFtQixDQUFDO0FBQ3hCLElBQUksVUFBa0IsQ0FBQztBQUN2QixJQUFJLGFBQXNCLENBQUM7QUFFM0IsSUFBSSxVQUFVLEdBQUcsY0FBTSxPQUFBLENBQWdCLEVBQUUsQ0FBQyxFQUFuQixDQUFtQixDQUFDO0FBRTNDLEtBQUssRUFBRSxDQUFDO0FBRVI7SUFDRUEsU0FBU0EsR0FBR0EsU0FBU0EsQ0FBQ0E7SUFDdEJBLFdBQVdBLEdBQUdBLFNBQVNBLENBQUNBO0lBQ3hCQSxVQUFVQSxHQUFHQSxDQUFDQSxDQUFDQTtJQUNmQSxhQUFhQSxHQUFHQSxLQUFLQSxDQUFDQTtBQUN4QkEsQ0FBQ0E7QUFMZSxhQUFLLFFBS3BCLENBQUE7QUFFRCxnQkFBdUIsQ0FBUTtJQUFSQyxpQkFBUUEsR0FBUkEsUUFBUUE7SUFDN0JBLGFBQWFBLEdBQUdBLENBQUNBLENBQUNBO0FBQ3BCQSxDQUFDQTtBQUZlLGNBQU0sU0FFckIsQ0FBQTtBQU9ELG9CQUEyQixFQUFzQjtJQUMvQ0MsVUFBVUEsR0FBR0EsRUFBRUEsQ0FBQ0E7QUFDbEJBLENBQUNBO0FBRmUsa0JBQVUsYUFFekIsQ0FBQTtBQUVELGVBQXNCLENBQVM7SUFDN0JDLElBQUlBLEdBQUdBLEdBQUdBLFdBQVdBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO0lBQ3pCQSw0QkFBNEJBO0lBQzVCQSxFQUFFQSxDQUFDQSxDQUFDQSxHQUFHQSxLQUFNQSxXQUFXQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUN6QkEsTUFBTUEsQ0FBQ0E7SUFDVEEsQ0FBQ0E7SUFDREEsV0FBV0EsR0FBR0EsR0FBR0EsQ0FBQ0E7SUFDbEJBLFNBQVNBLEdBQUdBLFdBQVdBLENBQUNBO0lBQ3hCQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxhQUFhQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNuQkEsT0FBT0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsU0FBU0EsQ0FBQ0EsQ0FBQ0E7SUFDM0JBLENBQUNBO0lBQ0RBLFVBQVVBLElBQUlBLENBQUNBLENBQUNBO0FBQ2xCQSxDQUFDQTtBQVplLGFBQUssUUFZcEIsQ0FBQTtBQUVELGNBQXFCLENBQVM7SUFDNUJDLElBQUlBLEdBQUdBLEdBQUdBLFdBQVdBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO0lBQ3pCQSw0QkFBNEJBO0lBQzVCQSxFQUFFQSxDQUFDQSxDQUFDQSxHQUFHQSxLQUFLQSxXQUFXQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUN4QkEsTUFBTUEsQ0FBQ0E7SUFDVEEsQ0FBQ0E7SUFDREEsV0FBV0EsR0FBR0EsR0FBR0EsQ0FBQ0E7SUFDbEJBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLGFBQWFBLENBQUNBLENBQUNBLENBQUNBO1FBQ25CQSxPQUFPQSxDQUFDQSxJQUFJQSxDQUFDQSxXQUFXQSxDQUFDQSxDQUFDQTtJQUM1QkEsQ0FBQ0E7QUFDSEEsQ0FBQ0E7QUFWZSxZQUFJLE9BVW5CLENBQUE7QUFFRDtJQUNFQyxNQUFNQSxDQUFDQSxXQUFXQSxDQUFDQTtBQUNyQkEsQ0FBQ0E7QUFGZSxzQkFBYyxpQkFFN0IsQ0FBQTtBQUVELHFCQUFxQixDQUFTO0lBQzVCQyxJQUFJQSxHQUFHQSxHQUFHQSxVQUFVQSxFQUFFQSxDQUFDQTtJQUN2QkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsSUFBSUEsS0FBS0EsU0FBU0EsSUFBSUEsR0FBR0EsQ0FBQ0EsTUFBTUEsS0FBS0EsU0FBU0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDdkRBLE1BQU1BLENBQUNBLE9BQU9BLEdBQUdBLEdBQUdBLENBQUNBLElBQUlBLEdBQUdBLEdBQUdBLEdBQUdBLEdBQUdBLENBQUNBLE1BQU1BLEdBQUdBLElBQUlBLEdBQUdBLENBQUNBLENBQUNBO0lBQzFEQSxDQUFDQTtJQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtRQUNOQSxNQUFNQSxDQUFDQSxRQUFRQSxHQUFHQSxDQUFDQSxDQUFDQTtJQUN0QkEsQ0FBQ0E7QUFDSEEsQ0FBQ0E7QUFFRDtJQUNFQyxNQUFNQSxDQUFDQSxVQUFVQSxHQUFHQSxDQUFDQSxDQUFDQTtBQUN4QkEsQ0FBQ0E7QUFGZSxpQkFBUyxZQUV4QixDQUFBO0FBRUQ7SUFDRUMsRUFBRUEsQ0FBQ0EsQ0FBQ0EsVUFBVUEsS0FBS0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDckJBLE1BQU1BLENBQUNBLFNBQVNBLENBQUNBO0lBQ25CQSxDQUFDQTtJQUVEQSxFQUFFQSxDQUFDQSxDQUFDQSxVQUFVQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNyQkEsTUFBTUEsQ0FBQ0EsZ0JBQWdCQSxHQUFHQSxVQUFVQSxDQUFDQTtJQUN2Q0EsQ0FBQ0E7SUFDREEsTUFBTUEsQ0FBQ0EsRUFBRUEsQ0FBQ0E7QUFDWkEsQ0FBQ0E7QUFUZSxvQkFBWSxlQVMzQixDQUFBIiwiZmlsZSI6ImxvZ2dlci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLy8vIDxyZWZlcmVuY2UgcGF0aD1cInR5cGluZ3Mvbm9kZS5kLnRzXCIgLz5cblxubGV0IGxhc3RFcnJvcjogc3RyaW5nO1xubGV0IGxhc3RNZXNzYWdlOiBzdHJpbmc7XG5sZXQgZXJyb3JDb3VudDogbnVtYmVyO1xubGV0IHNpbGVuY2VPdXRwdXQ6IGJvb2xlYW47XG5cbmxldCBnZXRDb250ZXh0ID0gKCkgPT4gKDxFcnJvckNvbnRleHQ+IHt9KTtcblxucmVzZXQoKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0KCkge1xuICBsYXN0RXJyb3IgPSB1bmRlZmluZWQ7XG4gIGxhc3RNZXNzYWdlID0gdW5kZWZpbmVkO1xuICBlcnJvckNvdW50ID0gMDtcbiAgc2lsZW5jZU91dHB1dCA9IGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2lsZW50KGYgPSB0cnVlKSB7XG4gIHNpbGVuY2VPdXRwdXQgPSBmO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVycm9yQ29udGV4dCB7XG4gIGxpbmU/OiBudW1iZXI7XG4gIGNvbHVtbj86IG51bWJlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldENvbnRleHQoZm46ICgpID0+IEVycm9yQ29udGV4dCkge1xuICBnZXRDb250ZXh0ID0gZm47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlcnJvcihzOiBzdHJpbmcpIHtcbiAgbGV0IGVyciA9IGVycm9yU3RyaW5nKHMpO1xuICAvLyBEZS1kdXAgaWRlbnRpY2FsIG1lc3NhZ2VzXG4gIGlmIChlcnIgID09PSBsYXN0TWVzc2FnZSkge1xuICAgIHJldHVybjtcbiAgfVxuICBsYXN0TWVzc2FnZSA9IGVycjtcbiAgbGFzdEVycm9yID0gbGFzdE1lc3NhZ2U7XG4gIGlmICghc2lsZW5jZU91dHB1dCkge1xuICAgIGNvbnNvbGUuZXJyb3IobGFzdEVycm9yKTtcbiAgfVxuICBlcnJvckNvdW50ICs9IDE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3YXJuKHM6IHN0cmluZykge1xuICBsZXQgZXJyID0gZXJyb3JTdHJpbmcocyk7XG4gIC8vIERlLWR1cCBpZGVudGljYWwgbWVzc2FnZXNcbiAgaWYgKGVyciA9PT0gbGFzdE1lc3NhZ2UpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgbGFzdE1lc3NhZ2UgPSBlcnI7XG4gIGlmICghc2lsZW5jZU91dHB1dCkge1xuICAgIGNvbnNvbGUud2FybihsYXN0TWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExhc3RNZXNzYWdlKCk6IHN0cmluZyB7XG4gIHJldHVybiBsYXN0TWVzc2FnZTtcbn1cblxuZnVuY3Rpb24gZXJyb3JTdHJpbmcoczogc3RyaW5nKSB7XG4gIGxldCBjdHggPSBnZXRDb250ZXh0KCk7XG4gIGlmIChjdHgubGluZSAhPT0gdW5kZWZpbmVkICYmIGN0eC5jb2x1bW4gIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiAnYm9sdDonICsgY3R4LmxpbmUgKyAnOicgKyBjdHguY29sdW1uICsgJzogJyArIHM7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuICdib2x0OiAnICsgcztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXJyb3JDb3VudCA+IDA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlcnJvclN1bW1hcnkoKTogc3RyaW5nIHtcbiAgaWYgKGVycm9yQ291bnQgPT09IDEpIHtcbiAgICByZXR1cm4gbGFzdEVycm9yO1xuICB9XG5cbiAgaWYgKGVycm9yQ291bnQgIT09IDApIHtcbiAgICByZXR1cm4gXCJGYXRhbCBlcnJvcnM6IFwiICsgZXJyb3JDb3VudDtcbiAgfVxuICByZXR1cm4gXCJcIjtcbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== |
{ | ||
"name": "firebase-bolt", | ||
"description": "Firebase Bolt Security and Modeling Language Compiler", | ||
"version": "0.7.0", | ||
"version": "0.7.1", | ||
"author": { | ||
@@ -6,0 +6,0 @@ "name": "Firebase", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3899103
54871