System.register([], function (_export, _context) {
  "use strict";

  return {
    setters: [],
    execute: function () {
      const __SystemJSRewritingHack = {};
      _recorder_._src_client_sort_js = _recorder_._src_client_sort_js || {};
      Object.defineProperty(_recorder_._src_client_sort_js, "sortAlphaNum", {
        get() {
          return sortAlphaNum;
        },

        set(thisIsVererySecretVariableName) {
          _export("sortAlphaNum", sortAlphaNum = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });

      var reA = /[^a-zA-Z]/g;
      Object.defineProperty(_recorder_._src_client_sort_js, "reA", {
        get() {
          return reA;
        },

        set(thisIsVererySecretVariableName) {
          reA = thisIsVererySecretVariableName;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      var reN = /[^0-9]/g;

      /**
       * @usage: ["A1", "A10", "A11", "A12", "A2", "A3", "A4", "B10", "B2", "F1", "F12", "F3"].sort(sortAlphaNum);
       */
      Object.defineProperty(_recorder_._src_client_sort_js, "reN", {
        get() {
          return reN;
        },

        set(thisIsVererySecretVariableName) {
          reN = thisIsVererySecretVariableName;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      function sortAlphaNum(a, b) {
        a = a.toString();
        b = b.toString();
        const aA = a.replace(reA, "");
        const bA = b.replace(reA, "");
        if (aA === bA) {
          const aN = parseInt(a.replace(reN, ""), 10);
          const bN = parseInt(b.replace(reN, ""), 10);
          return aN === bN ? 0 : aN > bN ? 1 : -1;
        } else {
          return aA > bA ? 1 : -1;
        }
      }

      _export("sortAlphaNum", sortAlphaNum);
    }
  };
});