System.register(["src/client/poid.js", "./bibliography-scheme.js"], function (_export, _context) {
  "use strict";

  var PolymorphicIdentifier, BibliographyScheme, AuthorScheme, __SystemJSRewritingHack;
  _export("AuthorScheme", void 0);
  return {
    setters: [function (_srcClientPoidJs) {
      PolymorphicIdentifier = _srcClientPoidJs.default;
    }, function (_bibliographySchemeJs) {
      BibliographyScheme = _bibliographySchemeJs.default;
    }],
    execute: function () {
      __SystemJSRewritingHack = {};
      _recorder_._https__lively_kernel_org_lively4_lively4_ansgar_src_client_protocols_author_js = _recorder_._https__lively_kernel_org_lively4_lively4_ansgar_src_client_protocols_author_js || {};
      Object.defineProperty(_recorder_._https__lively_kernel_org_lively4_lively4_ansgar_src_client_protocols_author_js, "PolymorphicIdentifier", {
        get() {
          return PolymorphicIdentifier;
        },
        set(thisIsVererySecretVariableName) {
          PolymorphicIdentifier = thisIsVererySecretVariableName;
          return true;
        },
        enumerable: true,
        configurable: true
      });
      Object.defineProperty(_recorder_._https__lively_kernel_org_lively4_lively4_ansgar_src_client_protocols_author_js, "BibliographyScheme", {
        get() {
          return BibliographyScheme;
        },
        set(thisIsVererySecretVariableName) {
          BibliographyScheme = thisIsVererySecretVariableName;
          return true;
        },
        enumerable: true,
        configurable: true
      });
      _export("AuthorScheme", AuthorScheme = class AuthorScheme extends BibliographyScheme {
        get scheme() {
          return "author";
        }
        searchEntries(entries, query) {
          var author = query;
          return entries.filter(entry => entry.authors && entry.authors.find(ea => ea.match(author)));
        }
      });
      Object.defineProperty(_recorder_._https__lively_kernel_org_lively4_lively4_ansgar_src_client_protocols_author_js, "AuthorScheme", {
        get() {
          return AuthorScheme;
        },
        set(thisIsVererySecretVariableName) {
          _export("AuthorScheme", AuthorScheme = thisIsVererySecretVariableName);
          return true;
        },
        enumerable: true,
        configurable: true
      });
      PolymorphicIdentifier.register(AuthorScheme);
    }
  };
});