"use strict"; /** * Decorator function that marks a function as a decorator implementation. * * When a function has @decorator in its JSDoc comment, it whitelists that function * to be used as a decorator on other methods throughout the codebase. * * The function itself performs no operation - it simply returns its input unchanged. * Its purpose is purely as a marker for the manifest validation system. * * Usage: * // /** * // * My custom decorator implementation * // * @decorator * // *\/ * function my_custom_decorator(target, key, descriptor) { * // Decorator implementation * } * * This allows my_custom_decorator to be used as @my_custom_decorator on static methods. * * TODO: This is probably no longer necessary? maybe? */ function decorator(value) { return value; } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWNvcmF0b3IiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbImFwcC9SU3BhZGUvQ29yZS9Kcy9kZWNvcmF0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBEZWNvcmF0b3IgZnVuY3Rpb24gdGhhdCBtYXJrcyBhIGZ1bmN0aW9uIGFzIGEgZGVjb3JhdG9yIGltcGxlbWVudGF0aW9uLlxuICpcbiAqIFdoZW4gYSBmdW5jdGlvbiBoYXMgQGRlY29yYXRvciBpbiBpdHMgSlNEb2MgY29tbWVudCwgaXQgd2hpdGVsaXN0cyB0aGF0IGZ1bmN0aW9uXG4gKiB0byBiZSB1c2VkIGFzIGEgZGVjb3JhdG9yIG9uIG90aGVyIG1ldGhvZHMgdGhyb3VnaG91dCB0aGUgY29kZWJhc2UuXG4gKlxuICogVGhlIGZ1bmN0aW9uIGl0c2VsZiBwZXJmb3JtcyBubyBvcGVyYXRpb24gLSBpdCBzaW1wbHkgcmV0dXJucyBpdHMgaW5wdXQgdW5jaGFuZ2VkLlxuICogSXRzIHB1cnBvc2UgaXMgcHVyZWx5IGFzIGEgbWFya2VyIGZvciB0aGUgbWFuaWZlc3QgdmFsaWRhdGlvbiBzeXN0ZW0uXG4gKlxuICogVXNhZ2U6XG4gKiAgIC8vIC8qKlxuICogICAvLyAgKiBNeSBjdXN0b20gZGVjb3JhdG9yIGltcGxlbWVudGF0aW9uXG4gKiAgIC8vICAqIEBkZWNvcmF0b3JcbiAqICAgLy8gICpcXC9cbiAqICAgZnVuY3Rpb24gbXlfY3VzdG9tX2RlY29yYXRvcih0YXJnZXQsIGtleSwgZGVzY3JpcHRvcikge1xuICogICAgICAgLy8gRGVjb3JhdG9yIGltcGxlbWVudGF0aW9uXG4gKiAgIH1cbiAqXG4gKiBUaGlzIGFsbG93cyBteV9jdXN0b21fZGVjb3JhdG9yIHRvIGJlIHVzZWQgYXMgQG15X2N1c3RvbV9kZWNvcmF0b3Igb24gc3RhdGljIG1ldGhvZHMuXG4gKlxuICogVE9ETzogVGhpcyBpcyBwcm9iYWJseSBubyBsb25nZXIgbmVjZXNzYXJ5PyBtYXliZT9cbiAqL1xuZnVuY3Rpb24gZGVjb3JhdG9yKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsU0FBU0EsQ0FBQ0MsS0FBSyxFQUFFO0VBQ3RCLE9BQU9BLEtBQUs7QUFDaEIiLCJpZ25vcmVMaXN0IjpbXX0=