payload 2.22.1 → 2.22.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/admin/components/utilities/Auth/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsE,MAAM,OAAO,CAAA;AAK1F,OAAO,KAAK,EAAe,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAW1C,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAwRhE,CAAA;AAED,eAAO,MAAM,OAAO,gCAAyE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/admin/components/utilities/Auth/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsE,MAAM,OAAO,CAAA;AAK1F,OAAO,KAAK,EAAe,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAW1C,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CA+RhE,CAAA;AAED,eAAO,MAAM,OAAO,gCAAyE,CAAA"}
@@ -78,6 +78,7 @@ const AuthProvider = ({ children })=>{
78
78
  const [user, setUser] = (0, _react.useState)();
79
79
  const [tokenInMemory, setTokenInMemory] = (0, _react.useState)();
80
80
  const [tokenExpiration, setTokenExpiration] = (0, _react.useState)();
81
+ const [strategy, setStrategy] = (0, _react.useState)();
81
82
  const { pathname } = (0, _reactrouterdom.useLocation)();
82
83
  const { push } = (0, _reactrouterdom.useHistory)();
83
84
  const { code } = (0, _Locale.useLocale)();
@@ -106,12 +107,16 @@ const AuthProvider = ({ children })=>{
106
107
  const revokeTokenAndExpire = (0, _react.useCallback)(()=>{
107
108
  setTokenInMemory(undefined);
108
109
  setTokenExpiration(undefined);
110
+ setStrategy(undefined);
109
111
  }, []);
110
112
  const setTokenAndExpiration = (0, _react.useCallback)((json)=>{
111
113
  const token = json?.token || json?.refreshedToken;
112
114
  if (token && json?.exp) {
113
115
  setTokenInMemory(token);
114
116
  setTokenExpiration(json.exp);
117
+ if (json.strategy) {
118
+ setStrategy(json.strategy);
119
+ }
115
120
  } else {
116
121
  revokeTokenAndExpire();
117
122
  }
@@ -349,11 +354,13 @@ const AuthProvider = ({ children })=>{
349
354
  refreshCookieAsync,
350
355
  refreshPermissions,
351
356
  setUser,
357
+ strategy,
352
358
  token: tokenInMemory,
359
+ tokenExpiration,
353
360
  user
354
361
  }
355
362
  }, children);
356
363
  };
357
364
  const useAuth = ()=>(0, _react.useContext)(Context);
358
365
 
359
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hZG1pbi9jb21wb25lbnRzL3V0aWxpdGllcy9BdXRoL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNb2RhbCB9IGZyb20gJ0BmYWNlbGVzcy11aS9tb2RhbCdcbmltcG9ydCBxcyBmcm9tICdxcydcbmltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlQ29udGV4dCwgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJ1xuaW1wb3J0IHsgdG9hc3QgfSBmcm9tICdyZWFjdC10b2FzdGlmeSdcblxuaW1wb3J0IHR5cGUgeyBQZXJtaXNzaW9ucywgVXNlciB9IGZyb20gJy4uLy4uLy4uLy4uL2F1dGgvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEF1dGhDb250ZXh0IH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgcmVxdWVzdHMgfSBmcm9tICcuLi8uLi8uLi9hcGknXG5pbXBvcnQgdXNlRGVib3VuY2UgZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRGVib3VuY2UnXG5pbXBvcnQgeyB1c2VDb25maWcgfSBmcm9tICcuLi9Db25maWcnXG5pbXBvcnQgeyB1c2VMb2NhbGUgfSBmcm9tICcuLi9Mb2NhbGUnXG5cbmNvbnN0IENvbnRleHQgPSBjcmVhdGVDb250ZXh0KHt9IGFzIEF1dGhDb250ZXh0KVxuXG5jb25zdCBtYXhUaW1lb3V0VGltZSA9IDIxNDc0ODM2NDdcblxuZXhwb3J0IGNvbnN0IEF1dGhQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCBbdXNlciwgc2V0VXNlcl0gPSB1c2VTdGF0ZTxVc2VyIHwgbnVsbD4oKVxuICBjb25zdCBbdG9rZW5Jbk1lbW9yeSwgc2V0VG9rZW5Jbk1lbW9yeV0gPSB1c2VTdGF0ZTxzdHJpbmc+KClcbiAgY29uc3QgW3Rva2VuRXhwaXJhdGlvbiwgc2V0VG9rZW5FeHBpcmF0aW9uXSA9IHVzZVN0YXRlPG51bWJlcj4oKVxuICBjb25zdCB7IHBhdGhuYW1lIH0gPSB1c2VMb2NhdGlvbigpXG4gIGNvbnN0IHsgcHVzaCB9ID0gdXNlSGlzdG9yeSgpXG4gIGNvbnN0IHsgY29kZSB9ID0gdXNlTG9jYWxlKClcblxuICBjb25zdCBjb25maWcgPSB1c2VDb25maWcoKVxuXG4gIGNvbnN0IHtcbiAgICBhZG1pbjogeyBhdXRvTG9naW4sIGluYWN0aXZpdHlSb3V0ZTogbG9nb3V0SW5hY3Rpdml0eVJvdXRlLCB1c2VyOiB1c2VyU2x1ZyB9LFxuICAgIHJvdXRlczogeyBhZG1pbiwgYXBpIH0sXG4gICAgc2VydmVyVVJMLFxuICB9ID0gY29uZmlnXG5cbiAgY29uc3QgW3Blcm1pc3Npb25zLCBzZXRQZXJtaXNzaW9uc10gPSB1c2VTdGF0ZTxQZXJtaXNzaW9ucz4oKVxuXG4gIGNvbnN0IHsgaTE4biB9ID0gdXNlVHJhbnNsYXRpb24oKVxuICBjb25zdCB7IGNsb3NlQWxsTW9kYWxzLCBvcGVuTW9kYWwgfSA9IHVzZU1vZGFsKClcbiAgY29uc3QgW2xhc3RMb2NhdGlvbkNoYW5nZSwgc2V0TGFzdExvY2F0aW9uQ2hhbmdlXSA9IHVzZVN0YXRlKDApXG4gIGNvbnN0IGRlYm91bmNlZExvY2F0aW9uQ2hhbmdlID0gdXNlRGVib3VuY2UobGFzdExvY2F0aW9uQ2hhbmdlLCAxMDAwMClcblxuICBjb25zdCBpZCA9IHVzZXI/LmlkXG5cbiAgY29uc3QgcmVkaXJlY3RUb0luYWN0aXZpdHlSb3V0ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAod2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnN0YXJ0c1dpdGgoYWRtaW4pKSB7XG4gICAgICBjb25zdCByZWRpcmVjdFBhcmFtID0gYD9yZWRpcmVjdD0ke2VuY29kZVVSSUNvbXBvbmVudChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoYWRtaW4sICcnKSxcbiAgICAgICl9YFxuICAgICAgcHVzaChgJHthZG1pbn0ke2xvZ291dEluYWN0aXZpdHlSb3V0ZX0ke3JlZGlyZWN0UGFyYW19YClcbiAgICB9IGVsc2Uge1xuICAgICAgcHVzaChgJHthZG1pbn0ke2xvZ291dEluYWN0aXZpdHlSb3V0ZX1gKVxuICAgIH1cbiAgICBjbG9zZUFsbE1vZGFscygpXG4gIH0sIFtwdXNoLCBhZG1pbiwgbG9nb3V0SW5hY3Rpdml0eVJvdXRlLCBjbG9zZUFsbE1vZGFsc10pXG5cbiAgY29uc3QgcmV2b2tlVG9rZW5BbmRFeHBpcmUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0VG9rZW5Jbk1lbW9yeSh1bmRlZmluZWQpXG4gICAgc2V0VG9rZW5FeHBpcmF0aW9uKHVuZGVmaW5lZClcbiAgfSwgW10pXG5cbiAgY29uc3Qgc2V0VG9rZW5BbmRFeHBpcmF0aW9uID0gdXNlQ2FsbGJhY2soXG4gICAgKGpzb24pID0+IHtcbiAgICAgIGNvbnN0IHRva2VuID0ganNvbj8udG9rZW4gfHwganNvbj8ucmVmcmVzaGVkVG9rZW5cbiAgICAgIGlmICh0b2tlbiAmJiBqc29uPy5leHApIHtcbiAgICAgICAgc2V0VG9rZW5Jbk1lbW9yeSh0b2tlbilcbiAgICAgICAgc2V0VG9rZW5FeHBpcmF0aW9uKGpzb24uZXhwKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV2b2tlVG9rZW5BbmRFeHBpcmUoKVxuICAgICAgfVxuICAgIH0sXG4gICAgW3Jldm9rZVRva2VuQW5kRXhwaXJlXSxcbiAgKVxuXG4gIGNvbnN0IHJlZnJlc2hDb29raWUgPSB1c2VDYWxsYmFjayhcbiAgICAoZm9yY2VSZWZyZXNoPzogYm9vbGVhbikgPT4ge1xuICAgICAgY29uc3Qgbm93ID0gTWF0aC5yb3VuZChuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDApXG4gICAgICBjb25zdCByZW1haW5pbmdUaW1lID0gKHR5cGVvZiB0b2tlbkV4cGlyYXRpb24gPT09ICdudW1iZXInID8gdG9rZW5FeHBpcmF0aW9uIDogMCkgLSBub3dcblxuICAgICAgaWYgKGZvcmNlUmVmcmVzaCB8fCAodG9rZW5FeHBpcmF0aW9uICYmIHJlbWFpbmluZ1RpbWUgPCAxMjApKSB7XG4gICAgICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXF1ZXN0ID0gYXdhaXQgcmVxdWVzdHMucG9zdChgJHtzZXJ2ZXJVUkx9JHthcGl9LyR7dXNlclNsdWd9L3JlZnJlc2gtdG9rZW5gLCB7XG4gICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAnQWNjZXB0LUxhbmd1YWdlJzogaTE4bi5sYW5ndWFnZSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGpzb24gPSBhd2FpdCByZXF1ZXN0Lmpzb24oKVxuICAgICAgICAgICAgICBzZXRVc2VyKGpzb24udXNlcilcbiAgICAgICAgICAgICAgc2V0VG9rZW5BbmRFeHBpcmF0aW9uKGpzb24pXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBzZXRVc2VyKG51bGwpXG4gICAgICAgICAgICAgIHJlZGlyZWN0VG9JbmFjdGl2aXR5Um91dGUoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRvYXN0LmVycm9yKGUubWVzc2FnZSlcbiAgICAgICAgICB9XG4gICAgICAgIH0sIDEwMDApXG4gICAgICB9XG4gICAgfSxcbiAgICBbXG4gICAgICB0b2tlbkV4cGlyYXRpb24sXG4gICAgICBzZXJ2ZXJVUkwsXG4gICAgICBhcGksXG4gICAgICB1c2VyU2x1ZyxcbiAgICAgIGkxOG4sXG4gICAgICByZWRpcmVjdFRvSW5hY3Rpdml0eVJvdXRlLFxuICAgICAgc2V0VG9rZW5BbmRFeHBpcmF0aW9uLFxuICAgIF0sXG4gIClcblxuICBjb25zdCByZWZyZXNoQ29va2llQXN5bmMgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAoc2tpcFNldFVzZXI/OiBib29sZWFuKTogUHJvbWlzZTxVc2VyPiA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gYXdhaXQgcmVxdWVzdHMucG9zdChgJHtzZXJ2ZXJVUkx9JHthcGl9LyR7dXNlclNsdWd9L3JlZnJlc2gtdG9rZW5gLCB7XG4gICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgJ0FjY2VwdC1MYW5ndWFnZSc6IGkxOG4ubGFuZ3VhZ2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAocmVxdWVzdC5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICAgIGNvbnN0IGpzb24gPSBhd2FpdCByZXF1ZXN0Lmpzb24oKVxuICAgICAgICAgIGlmICghc2tpcFNldFVzZXIpIHtcbiAgICAgICAgICAgIHNldFVzZXIoanNvbi51c2VyKVxuICAgICAgICAgICAgc2V0VG9rZW5BbmRFeHBpcmF0aW9uKGpzb24pXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBqc29uLnVzZXJcbiAgICAgICAgfVxuXG4gICAgICAgIHNldFVzZXIobnVsbClcbiAgICAgICAgcmVkaXJlY3RUb0luYWN0aXZpdHlSb3V0ZSgpXG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRvYXN0LmVycm9yKGBSZWZyZXNoaW5nIHRva2VuIGZhaWxlZDogJHtlLm1lc3NhZ2V9YClcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cbiAgICB9LFxuICAgIFtzZXJ2ZXJVUkwsIGFwaSwgdXNlclNsdWcsIGkxOG4sIHJlZGlyZWN0VG9JbmFjdGl2aXR5Um91dGUsIHNldFRva2VuQW5kRXhwaXJhdGlvbl0sXG4gIClcblxuICBjb25zdCBsb2dPdXQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0VXNlcihudWxsKVxuICAgIHJldm9rZVRva2VuQW5kRXhwaXJlKClcbiAgICByZXF1ZXN0cy5wb3N0KGAke3NlcnZlclVSTH0ke2FwaX0vJHt1c2VyU2x1Z30vbG9nb3V0YClcbiAgfSwgW3NlcnZlclVSTCwgYXBpLCB1c2VyU2x1ZywgcmV2b2tlVG9rZW5BbmRFeHBpcmVdKVxuXG4gIGNvbnN0IHJlZnJlc2hQZXJtaXNzaW9ucyA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICBsb2NhbGU6IGNvZGUsXG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXF1ZXN0ID0gYXdhaXQgcmVxdWVzdHMuZ2V0KGAke3NlcnZlclVSTH0ke2FwaX0vYWNjZXNzPyR7cXMuc3RyaW5naWZ5KHBhcmFtcyl9YCwge1xuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0FjY2VwdC1MYW5ndWFnZSc6IGkxOG4ubGFuZ3VhZ2UsXG4gICAgICAgIH0sXG4gICAgICB9KVxuXG4gICAgICBpZiAocmVxdWVzdC5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICBjb25zdCBqc29uOiBQZXJtaXNzaW9ucyA9IGF3YWl0IHJlcXVlc3QuanNvbigpXG4gICAgICAgIHNldFBlcm1pc3Npb25zKGpzb24pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZldGNoaW5nIHBlcm1pc3Npb25zIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICR7cmVxdWVzdC5zdGF0dXN9YClcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0b2FzdC5lcnJvcihgUmVmcmVzaGluZyBwZXJtaXNzaW9ucyBmYWlsZWQ6ICR7ZS5tZXNzYWdlfWApXG4gICAgfVxuICB9LCBbc2VydmVyVVJMLCBhcGksIGkxOG4sIGNvZGVdKVxuXG4gIGNvbnN0IGZldGNoRnVsbFVzZXIgPSBSZWFjdC51c2VDYWxsYmFjayhhc3luYyAoKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcXVlc3QgPSBhd2FpdCByZXF1ZXN0cy5nZXQoYCR7c2VydmVyVVJMfSR7YXBpfS8ke3VzZXJTbHVnfS9tZWAsIHtcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdBY2NlcHQtTGFuZ3VhZ2UnOiBpMThuLmxhbmd1YWdlLFxuICAgICAgICB9LFxuICAgICAgfSlcblxuICAgICAgaWYgKHJlcXVlc3Quc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgY29uc3QganNvbiA9IGF3YWl0IHJlcXVlc3QuanNvbigpXG5cbiAgICAgICAgaWYgKGpzb24/LnVzZXIpIHtcbiAgICAgICAgICBzZXRVc2VyKGpzb24udXNlcilcbiAgICAgICAgICBpZiAoanNvbj8udG9rZW4pIHtcbiAgICAgICAgICAgIHNldFRva2VuQW5kRXhwaXJhdGlvbihqc29uKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChhdXRvTG9naW4gJiYgYXV0b0xvZ2luLnByZWZpbGxPbmx5ICE9PSB0cnVlKSB7XG4gICAgICAgICAgLy8gYXV0byBsb2ctaW4gd2l0aCB0aGUgcHJvdmlkZWQgYXV0b0xvZ2luIGNyZWRlbnRpYWxzLiBUaGlzIGlzIHVzZWQgaW4gZGV2IG1vZGVcbiAgICAgICAgICAvLyBzbyB5b3UgZG9uJ3QgaGF2ZSB0byBsb2cgaW4gb3ZlciBhbmQgb3ZlciBhZ2FpblxuICAgICAgICAgIGNvbnN0IGF1dG9Mb2dpblJlc3VsdCA9IGF3YWl0IHJlcXVlc3RzLnBvc3QoYCR7c2VydmVyVVJMfSR7YXBpfS8ke3VzZXJTbHVnfS9sb2dpbmAsIHtcbiAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgZW1haWw6IGF1dG9Mb2dpbi5lbWFpbCxcbiAgICAgICAgICAgICAgcGFzc3dvcmQ6IGF1dG9Mb2dpbi5wYXNzd29yZCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAnQWNjZXB0LUxhbmd1YWdlJzogaTE4bi5sYW5ndWFnZSxcbiAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSlcbiAgICAgICAgICBpZiAoYXV0b0xvZ2luUmVzdWx0LnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgICBjb25zdCBhdXRvTG9naW5Kc29uID0gYXdhaXQgYXV0b0xvZ2luUmVzdWx0Lmpzb24oKVxuICAgICAgICAgICAgc2V0VXNlcihhdXRvTG9naW5Kc29uLnVzZXIpXG4gICAgICAgICAgICBpZiAoYXV0b0xvZ2luSnNvbj8udG9rZW4pIHtcbiAgICAgICAgICAgICAgc2V0VG9rZW5BbmRFeHBpcmF0aW9uKGF1dG9Mb2dpbkpzb24pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHNldFVzZXIobnVsbClcbiAgICAgICAgICAgIHJldm9rZVRva2VuQW5kRXhwaXJlKClcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0VXNlcihudWxsKVxuICAgICAgICAgIHJldm9rZVRva2VuQW5kRXhwaXJlKClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRvYXN0LmVycm9yKGBGZXRjaGluZyB1c2VyIGZhaWxlZDogJHtlLm1lc3NhZ2V9YClcbiAgICB9XG4gIH0sIFtzZXJ2ZXJVUkwsIGFwaSwgdXNlclNsdWcsIGkxOG4sIGF1dG9Mb2dpbiwgc2V0VG9rZW5BbmRFeHBpcmF0aW9uLCByZXZva2VUb2tlbkFuZEV4cGlyZV0pXG5cbiAgLy8gT24gbW91bnQsIGdldCB1c2VyIGFuZCBzZXRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaEZ1bGxVc2VyKClcbiAgfSwgW2ZldGNoRnVsbFVzZXJdKVxuXG4gIC8vIFdoZW4gbG9jYXRpb24gY2hhbmdlcywgcmVmcmVzaCBjb29raWVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaWQpIHtcbiAgICAgIHJlZnJlc2hDb29raWUoKVxuICAgIH1cbiAgfSwgW2RlYm91bmNlZExvY2F0aW9uQ2hhbmdlLCByZWZyZXNoQ29va2llLCBpZF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRMYXN0TG9jYXRpb25DaGFuZ2UoRGF0ZS5ub3coKSlcbiAgfSwgW3BhdGhuYW1lXSlcblxuICAvLyBXaGVuIHVzZXIgY2hhbmdlcywgZ2V0IG5ldyBhY2Nlc3NcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaWQpIHtcbiAgICAgIHJlZnJlc2hQZXJtaXNzaW9ucygpXG4gICAgfVxuICB9LCBbaTE4biwgaWQsIGFwaSwgc2VydmVyVVJMLCByZWZyZXNoUGVybWlzc2lvbnNdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IHJlbWluZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PlxuICAgIGNvbnN0IG5vdyA9IE1hdGgucm91bmQobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwKVxuICAgIGNvbnN0IHJlbWFpbmluZ1RpbWUgPSB0eXBlb2YgdG9rZW5FeHBpcmF0aW9uID09PSAnbnVtYmVyJyA/IHRva2VuRXhwaXJhdGlvbiAtIG5vdyA6IDBcblxuICAgIGlmIChyZW1haW5pbmdUaW1lID4gMCkge1xuICAgICAgcmVtaW5kZXIgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgb3Blbk1vZGFsKCdzdGF5LWxvZ2dlZC1pbicpXG4gICAgICAgIH0sXG4gICAgICAgIE1hdGgubWF4KE1hdGgubWluKChyZW1haW5pbmdUaW1lIC0gNjApICogMTAwMCwgbWF4VGltZW91dFRpbWUpKSxcbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKHJlbWluZGVyKSBjbGVhclRpbWVvdXQocmVtaW5kZXIpXG4gICAgfVxuICB9LCBbdG9rZW5FeHBpcmF0aW9uLCBvcGVuTW9kYWxdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGZvcmNlTG9nT3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PlxuICAgIGNvbnN0IG5vdyA9IE1hdGgucm91bmQobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwKVxuICAgIGNvbnN0IHJlbWFpbmluZ1RpbWUgPSB0eXBlb2YgdG9rZW5FeHBpcmF0aW9uID09PSAnbnVtYmVyJyA/IHRva2VuRXhwaXJhdGlvbiAtIG5vdyA6IDBcblxuICAgIGlmIChyZW1haW5pbmdUaW1lID4gMCkge1xuICAgICAgZm9yY2VMb2dPdXQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0VXNlcihudWxsKVxuICAgICAgICAgIHJldm9rZVRva2VuQW5kRXhwaXJlKClcbiAgICAgICAgICByZWRpcmVjdFRvSW5hY3Rpdml0eVJvdXRlKClcbiAgICAgICAgfSxcbiAgICAgICAgTWF0aC5tYXgoTWF0aC5taW4ocmVtYWluaW5nVGltZSAqIDEwMDAsIG1heFRpbWVvdXRUaW1lKSwgMCksXG4gICAgICApXG4gICAgfVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlmIChmb3JjZUxvZ091dCkgY2xlYXJUaW1lb3V0KGZvcmNlTG9nT3V0KVxuICAgIH1cbiAgfSwgW3Rva2VuRXhwaXJhdGlvbiwgY2xvc2VBbGxNb2RhbHMsIGkxOG4sIHJlZGlyZWN0VG9JbmFjdGl2aXR5Um91dGUsIHJldm9rZVRva2VuQW5kRXhwaXJlXSlcblxuICByZXR1cm4gKFxuICAgIDxDb250ZXh0LlByb3ZpZGVyXG4gICAgICB2YWx1ZT17e1xuICAgICAgICBmZXRjaEZ1bGxVc2VyLFxuICAgICAgICBsb2dPdXQsXG4gICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICByZWZyZXNoQ29va2llLFxuICAgICAgICByZWZyZXNoQ29va2llQXN5bmMsXG4gICAgICAgIHJlZnJlc2hQZXJtaXNzaW9ucyxcbiAgICAgICAgc2V0VXNlcixcbiAgICAgICAgdG9rZW46IHRva2VuSW5NZW1vcnksXG4gICAgICAgIHVzZXIsXG4gICAgICB9fVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0NvbnRleHQuUHJvdmlkZXI+XG4gIClcbn1cblxuZXhwb3J0IGNvbnN0IHVzZUF1dGggPSA8VCA9IFVzZXIsPigpOiBBdXRoQ29udGV4dDxUPiA9PiB1c2VDb250ZXh0KENvbnRleHQpIGFzIEF1dGhDb250ZXh0PFQ+XG4iXSwibmFtZXMiOlsiQXV0aFByb3ZpZGVyIiwidXNlQXV0aCIsIkNvbnRleHQiLCJjcmVhdGVDb250ZXh0IiwibWF4VGltZW91dFRpbWUiLCJjaGlsZHJlbiIsInVzZXIiLCJzZXRVc2VyIiwidXNlU3RhdGUiLCJ0b2tlbkluTWVtb3J5Iiwic2V0VG9rZW5Jbk1lbW9yeSIsInRva2VuRXhwaXJhdGlvbiIsInNldFRva2VuRXhwaXJhdGlvbiIsInBhdGhuYW1lIiwidXNlTG9jYXRpb24iLCJwdXNoIiwidXNlSGlzdG9yeSIsImNvZGUiLCJ1c2VMb2NhbGUiLCJjb25maWciLCJ1c2VDb25maWciLCJhZG1pbiIsImF1dG9Mb2dpbiIsImluYWN0aXZpdHlSb3V0ZSIsImxvZ291dEluYWN0aXZpdHlSb3V0ZSIsInVzZXJTbHVnIiwicm91dGVzIiwiYXBpIiwic2VydmVyVVJMIiwicGVybWlzc2lvbnMiLCJzZXRQZXJtaXNzaW9ucyIsImkxOG4iLCJ1c2VUcmFuc2xhdGlvbiIsImNsb3NlQWxsTW9kYWxzIiwib3Blbk1vZGFsIiwidXNlTW9kYWwiLCJsYXN0TG9jYXRpb25DaGFuZ2UiLCJzZXRMYXN0TG9jYXRpb25DaGFuZ2UiLCJkZWJvdW5jZWRMb2NhdGlvbkNoYW5nZSIsInVzZURlYm91bmNlIiwiaWQiLCJyZWRpcmVjdFRvSW5hY3Rpdml0eVJvdXRlIiwidXNlQ2FsbGJhY2siLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInN0YXJ0c1dpdGgiLCJyZWRpcmVjdFBhcmFtIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwicmVwbGFjZSIsInJldm9rZVRva2VuQW5kRXhwaXJlIiwidW5kZWZpbmVkIiwic2V0VG9rZW5BbmRFeHBpcmF0aW9uIiwianNvbiIsInRva2VuIiwicmVmcmVzaGVkVG9rZW4iLCJleHAiLCJyZWZyZXNoQ29va2llIiwiZm9yY2VSZWZyZXNoIiwibm93IiwiTWF0aCIsInJvdW5kIiwiRGF0ZSIsImdldFRpbWUiLCJyZW1haW5pbmdUaW1lIiwic2V0VGltZW91dCIsInJlcXVlc3QiLCJyZXF1ZXN0cyIsInBvc3QiLCJoZWFkZXJzIiwibGFuZ3VhZ2UiLCJzdGF0dXMiLCJlIiwidG9hc3QiLCJlcnJvciIsIm1lc3NhZ2UiLCJyZWZyZXNoQ29va2llQXN5bmMiLCJza2lwU2V0VXNlciIsImxvZ091dCIsInJlZnJlc2hQZXJtaXNzaW9ucyIsInBhcmFtcyIsImxvY2FsZSIsImdldCIsInFzIiwic3RyaW5naWZ5IiwiRXJyb3IiLCJmZXRjaEZ1bGxVc2VyIiwiUmVhY3QiLCJwcmVmaWxsT25seSIsImF1dG9Mb2dpblJlc3VsdCIsImJvZHkiLCJKU09OIiwiZW1haWwiLCJwYXNzd29yZCIsImF1dG9Mb2dpbkpzb24iLCJ1c2VFZmZlY3QiLCJyZW1pbmRlciIsIm1heCIsIm1pbiIsImNsZWFyVGltZW91dCIsImZvcmNlTG9nT3V0IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsInVzZUNvbnRleHQiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
366
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hZG1pbi9jb21wb25lbnRzL3V0aWxpdGllcy9BdXRoL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNb2RhbCB9IGZyb20gJ0BmYWNlbGVzcy11aS9tb2RhbCdcbmltcG9ydCBxcyBmcm9tICdxcydcbmltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlQ29udGV4dCwgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJ1xuaW1wb3J0IHsgdG9hc3QgfSBmcm9tICdyZWFjdC10b2FzdGlmeSdcblxuaW1wb3J0IHR5cGUgeyBQZXJtaXNzaW9ucywgVXNlciB9IGZyb20gJy4uLy4uLy4uLy4uL2F1dGgvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEF1dGhDb250ZXh0IH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgcmVxdWVzdHMgfSBmcm9tICcuLi8uLi8uLi9hcGknXG5pbXBvcnQgdXNlRGVib3VuY2UgZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRGVib3VuY2UnXG5pbXBvcnQgeyB1c2VDb25maWcgfSBmcm9tICcuLi9Db25maWcnXG5pbXBvcnQgeyB1c2VMb2NhbGUgfSBmcm9tICcuLi9Mb2NhbGUnXG5cbmNvbnN0IENvbnRleHQgPSBjcmVhdGVDb250ZXh0KHt9IGFzIEF1dGhDb250ZXh0KVxuXG5jb25zdCBtYXhUaW1lb3V0VGltZSA9IDIxNDc0ODM2NDdcblxuZXhwb3J0IGNvbnN0IEF1dGhQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCBbdXNlciwgc2V0VXNlcl0gPSB1c2VTdGF0ZTxVc2VyIHwgbnVsbD4oKVxuICBjb25zdCBbdG9rZW5Jbk1lbW9yeSwgc2V0VG9rZW5Jbk1lbW9yeV0gPSB1c2VTdGF0ZTxzdHJpbmc+KClcbiAgY29uc3QgW3Rva2VuRXhwaXJhdGlvbiwgc2V0VG9rZW5FeHBpcmF0aW9uXSA9IHVzZVN0YXRlPG51bWJlcj4oKVxuICBjb25zdCBbc3RyYXRlZ3ksIHNldFN0cmF0ZWd5XSA9IHVzZVN0YXRlPHN0cmluZz4oKVxuICBjb25zdCB7IHBhdGhuYW1lIH0gPSB1c2VMb2NhdGlvbigpXG4gIGNvbnN0IHsgcHVzaCB9ID0gdXNlSGlzdG9yeSgpXG4gIGNvbnN0IHsgY29kZSB9ID0gdXNlTG9jYWxlKClcblxuICBjb25zdCBjb25maWcgPSB1c2VDb25maWcoKVxuXG4gIGNvbnN0IHtcbiAgICBhZG1pbjogeyBhdXRvTG9naW4sIGluYWN0aXZpdHlSb3V0ZTogbG9nb3V0SW5hY3Rpdml0eVJvdXRlLCB1c2VyOiB1c2VyU2x1ZyB9LFxuICAgIHJvdXRlczogeyBhZG1pbiwgYXBpIH0sXG4gICAgc2VydmVyVVJMLFxuICB9ID0gY29uZmlnXG5cbiAgY29uc3QgW3Blcm1pc3Npb25zLCBzZXRQZXJtaXNzaW9uc10gPSB1c2VTdGF0ZTxQZXJtaXNzaW9ucz4oKVxuXG4gIGNvbnN0IHsgaTE4biB9ID0gdXNlVHJhbnNsYXRpb24oKVxuICBjb25zdCB7IGNsb3NlQWxsTW9kYWxzLCBvcGVuTW9kYWwgfSA9IHVzZU1vZGFsKClcbiAgY29uc3QgW2xhc3RMb2NhdGlvbkNoYW5nZSwgc2V0TGFzdExvY2F0aW9uQ2hhbmdlXSA9IHVzZVN0YXRlKDApXG4gIGNvbnN0IGRlYm91bmNlZExvY2F0aW9uQ2hhbmdlID0gdXNlRGVib3VuY2UobGFzdExvY2F0aW9uQ2hhbmdlLCAxMDAwMClcblxuICBjb25zdCBpZCA9IHVzZXI/LmlkXG5cbiAgY29uc3QgcmVkaXJlY3RUb0luYWN0aXZpdHlSb3V0ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAod2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnN0YXJ0c1dpdGgoYWRtaW4pKSB7XG4gICAgICBjb25zdCByZWRpcmVjdFBhcmFtID0gYD9yZWRpcmVjdD0ke2VuY29kZVVSSUNvbXBvbmVudChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoYWRtaW4sICcnKSxcbiAgICAgICl9YFxuICAgICAgcHVzaChgJHthZG1pbn0ke2xvZ291dEluYWN0aXZpdHlSb3V0ZX0ke3JlZGlyZWN0UGFyYW19YClcbiAgICB9IGVsc2Uge1xuICAgICAgcHVzaChgJHthZG1pbn0ke2xvZ291dEluYWN0aXZpdHlSb3V0ZX1gKVxuICAgIH1cbiAgICBjbG9zZUFsbE1vZGFscygpXG4gIH0sIFtwdXNoLCBhZG1pbiwgbG9nb3V0SW5hY3Rpdml0eVJvdXRlLCBjbG9zZUFsbE1vZGFsc10pXG5cbiAgY29uc3QgcmV2b2tlVG9rZW5BbmRFeHBpcmUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0VG9rZW5Jbk1lbW9yeSh1bmRlZmluZWQpXG4gICAgc2V0VG9rZW5FeHBpcmF0aW9uKHVuZGVmaW5lZClcbiAgICBzZXRTdHJhdGVneSh1bmRlZmluZWQpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHNldFRva2VuQW5kRXhwaXJhdGlvbiA9IHVzZUNhbGxiYWNrKFxuICAgIChqc29uKSA9PiB7XG4gICAgICBjb25zdCB0b2tlbiA9IGpzb24/LnRva2VuIHx8IGpzb24/LnJlZnJlc2hlZFRva2VuXG4gICAgICBpZiAodG9rZW4gJiYganNvbj8uZXhwKSB7XG4gICAgICAgIHNldFRva2VuSW5NZW1vcnkodG9rZW4pXG4gICAgICAgIHNldFRva2VuRXhwaXJhdGlvbihqc29uLmV4cClcbiAgICAgICAgaWYgKGpzb24uc3RyYXRlZ3kpIHtcbiAgICAgICAgICBzZXRTdHJhdGVneShqc29uLnN0cmF0ZWd5KVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXZva2VUb2tlbkFuZEV4cGlyZSgpXG4gICAgICB9XG4gICAgfSxcbiAgICBbcmV2b2tlVG9rZW5BbmRFeHBpcmVdLFxuICApXG5cbiAgY29uc3QgcmVmcmVzaENvb2tpZSA9IHVzZUNhbGxiYWNrKFxuICAgIChmb3JjZVJlZnJlc2g/OiBib29sZWFuKSA9PiB7XG4gICAgICBjb25zdCBub3cgPSBNYXRoLnJvdW5kKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMClcbiAgICAgIGNvbnN0IHJlbWFpbmluZ1RpbWUgPSAodHlwZW9mIHRva2VuRXhwaXJhdGlvbiA9PT0gJ251bWJlcicgPyB0b2tlbkV4cGlyYXRpb24gOiAwKSAtIG5vd1xuXG4gICAgICBpZiAoZm9yY2VSZWZyZXNoIHx8ICh0b2tlbkV4cGlyYXRpb24gJiYgcmVtYWluaW5nVGltZSA8IDEyMCkpIHtcbiAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlcXVlc3QgPSBhd2FpdCByZXF1ZXN0cy5wb3N0KGAke3NlcnZlclVSTH0ke2FwaX0vJHt1c2VyU2x1Z30vcmVmcmVzaC10b2tlbmAsIHtcbiAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICdBY2NlcHQtTGFuZ3VhZ2UnOiBpMThuLmxhbmd1YWdlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgaWYgKHJlcXVlc3Quc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgICAgY29uc3QganNvbiA9IGF3YWl0IHJlcXVlc3QuanNvbigpXG4gICAgICAgICAgICAgIHNldFVzZXIoanNvbi51c2VyKVxuICAgICAgICAgICAgICBzZXRUb2tlbkFuZEV4cGlyYXRpb24oanNvbilcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHNldFVzZXIobnVsbClcbiAgICAgICAgICAgICAgcmVkaXJlY3RUb0luYWN0aXZpdHlSb3V0ZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdG9hc3QuZXJyb3IoZS5tZXNzYWdlKVxuICAgICAgICAgIH1cbiAgICAgICAgfSwgMTAwMClcbiAgICAgIH1cbiAgICB9LFxuICAgIFtcbiAgICAgIHRva2VuRXhwaXJhdGlvbixcbiAgICAgIHNlcnZlclVSTCxcbiAgICAgIGFwaSxcbiAgICAgIHVzZXJTbHVnLFxuICAgICAgaTE4bixcbiAgICAgIHJlZGlyZWN0VG9JbmFjdGl2aXR5Um91dGUsXG4gICAgICBzZXRUb2tlbkFuZEV4cGlyYXRpb24sXG4gICAgXSxcbiAgKVxuXG4gIGNvbnN0IHJlZnJlc2hDb29raWVBc3luYyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChza2lwU2V0VXNlcj86IGJvb2xlYW4pOiBQcm9taXNlPFVzZXI+ID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSBhd2FpdCByZXF1ZXN0cy5wb3N0KGAke3NlcnZlclVSTH0ke2FwaX0vJHt1c2VyU2x1Z30vcmVmcmVzaC10b2tlbmAsIHtcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnQWNjZXB0LUxhbmd1YWdlJzogaTE4bi5sYW5ndWFnZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgY29uc3QganNvbiA9IGF3YWl0IHJlcXVlc3QuanNvbigpXG4gICAgICAgICAgaWYgKCFza2lwU2V0VXNlcikge1xuICAgICAgICAgICAgc2V0VXNlcihqc29uLnVzZXIpXG4gICAgICAgICAgICBzZXRUb2tlbkFuZEV4cGlyYXRpb24oanNvbilcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGpzb24udXNlclxuICAgICAgICB9XG5cbiAgICAgICAgc2V0VXNlcihudWxsKVxuICAgICAgICByZWRpcmVjdFRvSW5hY3Rpdml0eVJvdXRlKClcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgdG9hc3QuZXJyb3IoYFJlZnJlc2hpbmcgdG9rZW4gZmFpbGVkOiAke2UubWVzc2FnZX1gKVxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuICAgIH0sXG4gICAgW3NlcnZlclVSTCwgYXBpLCB1c2VyU2x1ZywgaTE4biwgcmVkaXJlY3RUb0luYWN0aXZpdHlSb3V0ZSwgc2V0VG9rZW5BbmRFeHBpcmF0aW9uXSxcbiAgKVxuXG4gIGNvbnN0IGxvZ091dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRVc2VyKG51bGwpXG4gICAgcmV2b2tlVG9rZW5BbmRFeHBpcmUoKVxuICAgIHJlcXVlc3RzLnBvc3QoYCR7c2VydmVyVVJMfSR7YXBpfS8ke3VzZXJTbHVnfS9sb2dvdXRgKVxuICB9LCBbc2VydmVyVVJMLCBhcGksIHVzZXJTbHVnLCByZXZva2VUb2tlbkFuZEV4cGlyZV0pXG5cbiAgY29uc3QgcmVmcmVzaFBlcm1pc3Npb25zID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIGxvY2FsZTogY29kZSxcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcXVlc3QgPSBhd2FpdCByZXF1ZXN0cy5nZXQoYCR7c2VydmVyVVJMfSR7YXBpfS9hY2Nlc3M/JHtxcy5zdHJpbmdpZnkocGFyYW1zKX1gLCB7XG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQWNjZXB0LUxhbmd1YWdlJzogaTE4bi5sYW5ndWFnZSxcbiAgICAgICAgfSxcbiAgICAgIH0pXG5cbiAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgIGNvbnN0IGpzb246IFBlcm1pc3Npb25zID0gYXdhaXQgcmVxdWVzdC5qc29uKClcbiAgICAgICAgc2V0UGVybWlzc2lvbnMoanNvbilcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmV0Y2hpbmcgcGVybWlzc2lvbnMgZmFpbGVkIHdpdGggc3RhdHVzIGNvZGUgJHtyZXF1ZXN0LnN0YXR1c31gKVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRvYXN0LmVycm9yKGBSZWZyZXNoaW5nIHBlcm1pc3Npb25zIGZhaWxlZDogJHtlLm1lc3NhZ2V9YClcbiAgICB9XG4gIH0sIFtzZXJ2ZXJVUkwsIGFwaSwgaTE4biwgY29kZV0pXG5cbiAgY29uc3QgZmV0Y2hGdWxsVXNlciA9IFJlYWN0LnVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IGF3YWl0IHJlcXVlc3RzLmdldChgJHtzZXJ2ZXJVUkx9JHthcGl9LyR7dXNlclNsdWd9L21lYCwge1xuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0FjY2VwdC1MYW5ndWFnZSc6IGkxOG4ubGFuZ3VhZ2UsXG4gICAgICAgIH0sXG4gICAgICB9KVxuXG4gICAgICBpZiAocmVxdWVzdC5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICBjb25zdCBqc29uID0gYXdhaXQgcmVxdWVzdC5qc29uKClcblxuICAgICAgICBpZiAoanNvbj8udXNlcikge1xuICAgICAgICAgIHNldFVzZXIoanNvbi51c2VyKVxuICAgICAgICAgIGlmIChqc29uPy50b2tlbikge1xuICAgICAgICAgICAgc2V0VG9rZW5BbmRFeHBpcmF0aW9uKGpzb24pXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGF1dG9Mb2dpbiAmJiBhdXRvTG9naW4ucHJlZmlsbE9ubHkgIT09IHRydWUpIHtcbiAgICAgICAgICAvLyBhdXRvIGxvZy1pbiB3aXRoIHRoZSBwcm92aWRlZCBhdXRvTG9naW4gY3JlZGVudGlhbHMuIFRoaXMgaXMgdXNlZCBpbiBkZXYgbW9kZVxuICAgICAgICAgIC8vIHNvIHlvdSBkb24ndCBoYXZlIHRvIGxvZyBpbiBvdmVyIGFuZCBvdmVyIGFnYWluXG4gICAgICAgICAgY29uc3QgYXV0b0xvZ2luUmVzdWx0ID0gYXdhaXQgcmVxdWVzdHMucG9zdChgJHtzZXJ2ZXJVUkx9JHthcGl9LyR7dXNlclNsdWd9L2xvZ2luYCwge1xuICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICBlbWFpbDogYXV0b0xvZ2luLmVtYWlsLFxuICAgICAgICAgICAgICBwYXNzd29yZDogYXV0b0xvZ2luLnBhc3N3b3JkLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICdBY2NlcHQtTGFuZ3VhZ2UnOiBpMThuLmxhbmd1YWdlLFxuICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KVxuICAgICAgICAgIGlmIChhdXRvTG9naW5SZXN1bHQuc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgIGNvbnN0IGF1dG9Mb2dpbkpzb24gPSBhd2FpdCBhdXRvTG9naW5SZXN1bHQuanNvbigpXG4gICAgICAgICAgICBzZXRVc2VyKGF1dG9Mb2dpbkpzb24udXNlcilcbiAgICAgICAgICAgIGlmIChhdXRvTG9naW5Kc29uPy50b2tlbikge1xuICAgICAgICAgICAgICBzZXRUb2tlbkFuZEV4cGlyYXRpb24oYXV0b0xvZ2luSnNvbilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2V0VXNlcihudWxsKVxuICAgICAgICAgICAgcmV2b2tlVG9rZW5BbmRFeHBpcmUoKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzZXRVc2VyKG51bGwpXG4gICAgICAgICAgcmV2b2tlVG9rZW5BbmRFeHBpcmUoKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdG9hc3QuZXJyb3IoYEZldGNoaW5nIHVzZXIgZmFpbGVkOiAke2UubWVzc2FnZX1gKVxuICAgIH1cbiAgfSwgW3NlcnZlclVSTCwgYXBpLCB1c2VyU2x1ZywgaTE4biwgYXV0b0xvZ2luLCBzZXRUb2tlbkFuZEV4cGlyYXRpb24sIHJldm9rZVRva2VuQW5kRXhwaXJlXSlcblxuICAvLyBPbiBtb3VudCwgZ2V0IHVzZXIgYW5kIHNldFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZldGNoRnVsbFVzZXIoKVxuICB9LCBbZmV0Y2hGdWxsVXNlcl0pXG5cbiAgLy8gV2hlbiBsb2NhdGlvbiBjaGFuZ2VzLCByZWZyZXNoIGNvb2tpZVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpZCkge1xuICAgICAgcmVmcmVzaENvb2tpZSgpXG4gICAgfVxuICB9LCBbZGVib3VuY2VkTG9jYXRpb25DaGFuZ2UsIHJlZnJlc2hDb29raWUsIGlkXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldExhc3RMb2NhdGlvbkNoYW5nZShEYXRlLm5vdygpKVxuICB9LCBbcGF0aG5hbWVdKVxuXG4gIC8vIFdoZW4gdXNlciBjaGFuZ2VzLCBnZXQgbmV3IGFjY2Vzc1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpZCkge1xuICAgICAgcmVmcmVzaFBlcm1pc3Npb25zKClcbiAgICB9XG4gIH0sIFtpMThuLCBpZCwgYXBpLCBzZXJ2ZXJVUkwsIHJlZnJlc2hQZXJtaXNzaW9uc10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgcmVtaW5kZXI6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+XG4gICAgY29uc3Qgbm93ID0gTWF0aC5yb3VuZChuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDApXG4gICAgY29uc3QgcmVtYWluaW5nVGltZSA9IHR5cGVvZiB0b2tlbkV4cGlyYXRpb24gPT09ICdudW1iZXInID8gdG9rZW5FeHBpcmF0aW9uIC0gbm93IDogMFxuXG4gICAgaWYgKHJlbWFpbmluZ1RpbWUgPiAwKSB7XG4gICAgICByZW1pbmRlciA9IHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBvcGVuTW9kYWwoJ3N0YXktbG9nZ2VkLWluJylcbiAgICAgICAgfSxcbiAgICAgICAgTWF0aC5tYXgoTWF0aC5taW4oKHJlbWFpbmluZ1RpbWUgLSA2MCkgKiAxMDAwLCBtYXhUaW1lb3V0VGltZSkpLFxuICAgICAgKVxuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAocmVtaW5kZXIpIGNsZWFyVGltZW91dChyZW1pbmRlcilcbiAgICB9XG4gIH0sIFt0b2tlbkV4cGlyYXRpb24sIG9wZW5Nb2RhbF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgZm9yY2VMb2dPdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+XG4gICAgY29uc3Qgbm93ID0gTWF0aC5yb3VuZChuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDApXG4gICAgY29uc3QgcmVtYWluaW5nVGltZSA9IHR5cGVvZiB0b2tlbkV4cGlyYXRpb24gPT09ICdudW1iZXInID8gdG9rZW5FeHBpcmF0aW9uIC0gbm93IDogMFxuXG4gICAgaWYgKHJlbWFpbmluZ1RpbWUgPiAwKSB7XG4gICAgICBmb3JjZUxvZ091dCA9IHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBzZXRVc2VyKG51bGwpXG4gICAgICAgICAgcmV2b2tlVG9rZW5BbmRFeHBpcmUoKVxuICAgICAgICAgIHJlZGlyZWN0VG9JbmFjdGl2aXR5Um91dGUoKVxuICAgICAgICB9LFxuICAgICAgICBNYXRoLm1heChNYXRoLm1pbihyZW1haW5pbmdUaW1lICogMTAwMCwgbWF4VGltZW91dFRpbWUpLCAwKSxcbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGZvcmNlTG9nT3V0KSBjbGVhclRpbWVvdXQoZm9yY2VMb2dPdXQpXG4gICAgfVxuICB9LCBbdG9rZW5FeHBpcmF0aW9uLCBjbG9zZUFsbE1vZGFscywgaTE4biwgcmVkaXJlY3RUb0luYWN0aXZpdHlSb3V0ZSwgcmV2b2tlVG9rZW5BbmRFeHBpcmVdKVxuXG4gIHJldHVybiAoXG4gICAgPENvbnRleHQuUHJvdmlkZXJcbiAgICAgIHZhbHVlPXt7XG4gICAgICAgIGZldGNoRnVsbFVzZXIsXG4gICAgICAgIGxvZ091dCxcbiAgICAgICAgcGVybWlzc2lvbnMsXG4gICAgICAgIHJlZnJlc2hDb29raWUsXG4gICAgICAgIHJlZnJlc2hDb29raWVBc3luYyxcbiAgICAgICAgcmVmcmVzaFBlcm1pc3Npb25zLFxuICAgICAgICBzZXRVc2VyLFxuICAgICAgICBzdHJhdGVneSxcbiAgICAgICAgdG9rZW46IHRva2VuSW5NZW1vcnksXG4gICAgICAgIHRva2VuRXhwaXJhdGlvbixcbiAgICAgICAgdXNlcixcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvQ29udGV4dC5Qcm92aWRlcj5cbiAgKVxufVxuXG5leHBvcnQgY29uc3QgdXNlQXV0aCA9IDxUID0gVXNlciw+KCk6IEF1dGhDb250ZXh0PFQ+ID0+IHVzZUNvbnRleHQoQ29udGV4dCkgYXMgQXV0aENvbnRleHQ8VD5cbiJdLCJuYW1lcyI6WyJBdXRoUHJvdmlkZXIiLCJ1c2VBdXRoIiwiQ29udGV4dCIsImNyZWF0ZUNvbnRleHQiLCJtYXhUaW1lb3V0VGltZSIsImNoaWxkcmVuIiwidXNlciIsInNldFVzZXIiLCJ1c2VTdGF0ZSIsInRva2VuSW5NZW1vcnkiLCJzZXRUb2tlbkluTWVtb3J5IiwidG9rZW5FeHBpcmF0aW9uIiwic2V0VG9rZW5FeHBpcmF0aW9uIiwic3RyYXRlZ3kiLCJzZXRTdHJhdGVneSIsInBhdGhuYW1lIiwidXNlTG9jYXRpb24iLCJwdXNoIiwidXNlSGlzdG9yeSIsImNvZGUiLCJ1c2VMb2NhbGUiLCJjb25maWciLCJ1c2VDb25maWciLCJhZG1pbiIsImF1dG9Mb2dpbiIsImluYWN0aXZpdHlSb3V0ZSIsImxvZ291dEluYWN0aXZpdHlSb3V0ZSIsInVzZXJTbHVnIiwicm91dGVzIiwiYXBpIiwic2VydmVyVVJMIiwicGVybWlzc2lvbnMiLCJzZXRQZXJtaXNzaW9ucyIsImkxOG4iLCJ1c2VUcmFuc2xhdGlvbiIsImNsb3NlQWxsTW9kYWxzIiwib3Blbk1vZGFsIiwidXNlTW9kYWwiLCJsYXN0TG9jYXRpb25DaGFuZ2UiLCJzZXRMYXN0TG9jYXRpb25DaGFuZ2UiLCJkZWJvdW5jZWRMb2NhdGlvbkNoYW5nZSIsInVzZURlYm91bmNlIiwiaWQiLCJyZWRpcmVjdFRvSW5hY3Rpdml0eVJvdXRlIiwidXNlQ2FsbGJhY2siLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInN0YXJ0c1dpdGgiLCJyZWRpcmVjdFBhcmFtIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwicmVwbGFjZSIsInJldm9rZVRva2VuQW5kRXhwaXJlIiwidW5kZWZpbmVkIiwic2V0VG9rZW5BbmRFeHBpcmF0aW9uIiwianNvbiIsInRva2VuIiwicmVmcmVzaGVkVG9rZW4iLCJleHAiLCJyZWZyZXNoQ29va2llIiwiZm9yY2VSZWZyZXNoIiwibm93IiwiTWF0aCIsInJvdW5kIiwiRGF0ZSIsImdldFRpbWUiLCJyZW1haW5pbmdUaW1lIiwic2V0VGltZW91dCIsInJlcXVlc3QiLCJyZXF1ZXN0cyIsInBvc3QiLCJoZWFkZXJzIiwibGFuZ3VhZ2UiLCJzdGF0dXMiLCJlIiwidG9hc3QiLCJlcnJvciIsIm1lc3NhZ2UiLCJyZWZyZXNoQ29va2llQXN5bmMiLCJza2lwU2V0VXNlciIsImxvZ091dCIsInJlZnJlc2hQZXJtaXNzaW9ucyIsInBhcmFtcyIsImxvY2FsZSIsImdldCIsInFzIiwic3RyaW5naWZ5IiwiRXJyb3IiLCJmZXRjaEZ1bGxVc2VyIiwiUmVhY3QiLCJwcmVmaWxsT25seSIsImF1dG9Mb2dpblJlc3VsdCIsImJvZHkiLCJKU09OIiwiZW1haWwiLCJwYXNzd29yZCIsImF1dG9Mb2dpbkpzb24iLCJ1c2VFZmZlY3QiLCJyZW1pbmRlciIsIm1heCIsIm1pbiIsImNsZWFyVGltZW91dCIsImZvcmNlTG9nT3V0IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsInVzZUNvbnRleHQiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQW1CYUEsWUFBWTtlQUFaQTs7SUFpU0FDLE9BQU87ZUFBUEE7Ozt1QkFwVFk7MkRBQ1Y7K0RBQ29FOzhCQUNwRDtnQ0FDUzsrQkFDbEI7cUJBS0c7b0VBQ0Q7d0JBQ0U7d0JBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLE1BQU1DLHdCQUFVQyxJQUFBQSxvQkFBYSxFQUFDLENBQUM7QUFFL0IsTUFBTUMsaUJBQWlCO0FBRWhCLE1BQU1KLGVBQXdELENBQUMsRUFBRUssUUFBUSxFQUFFO0lBQ2hGLE1BQU0sQ0FBQ0MsTUFBTUMsUUFBUSxHQUFHQyxJQUFBQSxlQUFRO0lBQ2hDLE1BQU0sQ0FBQ0MsZUFBZUMsaUJBQWlCLEdBQUdGLElBQUFBLGVBQVE7SUFDbEQsTUFBTSxDQUFDRyxpQkFBaUJDLG1CQUFtQixHQUFHSixJQUFBQSxlQUFRO0lBQ3RELE1BQU0sQ0FBQ0ssVUFBVUMsWUFBWSxHQUFHTixJQUFBQSxlQUFRO0lBQ3hDLE1BQU0sRUFBRU8sUUFBUSxFQUFFLEdBQUdDLElBQUFBLDJCQUFXO0lB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
@@ -7,7 +7,9 @@ export type AuthContext<T = User> = {
7
7
  refreshCookieAsync: () => Promise<User>;
8
8
  refreshPermissions: () => Promise<void>;
9
9
  setUser: (user: T) => void;
10
+ strategy?: string;
10
11
  token?: string;
12
+ tokenExpiration?: number;
11
13
  user?: T | null;
12
14
  };
13
15
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/admin/components/utilities/Auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAE/D,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,IAAI,IAAI;IAClC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,aAAa,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/C,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;CAChB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/admin/components/utilities/Auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAE/D,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,IAAI,IAAI;IAClC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,aAAa,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/C,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;CAChB,CAAA"}
@@ -4,6 +4,7 @@ import type { User } from '../types';
4
4
  export type Result = {
5
5
  collection?: string;
6
6
  exp?: number;
7
+ strategy?: string;
7
8
  token?: string;
8
9
  user?: User;
9
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"me.d.ts","sourceRoot":"","sources":["../../../src/auth/operations/me.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAIpC,MAAM,MAAM,MAAM,GAAG;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,iBAAe,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CA0DjE;AAED,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"me.d.ts","sourceRoot":"","sources":["../../../src/auth/operations/me.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAIpC,MAAM,MAAM,MAAM,GAAG;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,iBAAe,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CA2DjE;AAED,eAAe,EAAE,CAAA"}
@@ -40,6 +40,7 @@ async function me({ collection, req }) {
40
40
  delete user.collection;
41
41
  response = {
42
42
  collection: req.user.collection,
43
+ strategy: req.user._strategy,
43
44
  user
44
45
  };
45
46
  const token = extractJWT(req);
@@ -65,4 +66,4 @@ async function me({ collection, req }) {
65
66
  }
66
67
  const _default = me;
67
68
 
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL29wZXJhdGlvbnMvbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGp3dCBmcm9tICdqc29ud2VidG9rZW4nXG5pbXBvcnQgdXJsIGZyb20gJ3VybCdcblxuaW1wb3J0IHR5cGUgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFVzZXIgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IGdldEV4dHJhY3RKV1QgZnJvbSAnLi4vZ2V0RXh0cmFjdEpXVCdcblxuZXhwb3J0IHR5cGUgUmVzdWx0ID0ge1xuICBjb2xsZWN0aW9uPzogc3RyaW5nXG4gIGV4cD86IG51bWJlclxuICB0b2tlbj86IHN0cmluZ1xuICB1c2VyPzogVXNlclxufVxuXG5leHBvcnQgdHlwZSBBcmd1bWVudHMgPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxufVxuXG5hc3luYyBmdW5jdGlvbiBtZSh7IGNvbGxlY3Rpb24sIHJlcSB9OiBBcmd1bWVudHMpOiBQcm9taXNlPFJlc3VsdD4ge1xuICBjb25zdCBleHRyYWN0SldUID0gZ2V0RXh0cmFjdEpXVChyZXEucGF5bG9hZC5jb25maWcpXG4gIGxldCByZXNwb25zZTogUmVzdWx0ID0ge1xuICAgIHVzZXI6IG51bGwsXG4gIH1cblxuICBpZiAocmVxLnVzZXIpIHtcbiAgICBjb25zdCBwYXJzZWRVUkwgPSB1cmwucGFyc2UocmVxLm9yaWdpbmFsVXJsKVxuICAgIGNvbnN0IGlzR3JhcGhRTCA9IHBhcnNlZFVSTC5wYXRobmFtZSA9PT0gYC9hcGkke3JlcS5wYXlsb2FkLmNvbmZpZy5yb3V0ZXMuZ3JhcGhRTH1gXG5cbiAgICBjb25zdCB1c2VyID0gKGF3YWl0IHJlcS5wYXlsb2FkLmZpbmRCeUlEKHtcbiAgICAgIGlkOiByZXEudXNlci5pZCxcbiAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb24uY29uZmlnLnNsdWcsXG4gICAgICBkZXB0aDogaXNHcmFwaFFMID8gMCA6IGNvbGxlY3Rpb24uY29uZmlnLmF1dGguZGVwdGgsXG4gICAgICBvdmVycmlkZUFjY2VzczogZmFsc2UsXG4gICAgICByZXEsXG4gICAgICBzaG93SGlkZGVuRmllbGRzOiBmYWxzZSxcbiAgICB9KSkgYXMgVXNlclxuXG4gICAgaWYgKHJlcS51c2VyLmNvbGxlY3Rpb24gIT09IGNvbGxlY3Rpb24uY29uZmlnLnNsdWcpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHVzZXI6IG51bGwsXG4gICAgICB9XG4gICAgfVxuXG4gICAgZGVsZXRlIHVzZXIuY29sbGVjdGlvblxuXG4gICAgcmVzcG9uc2UgPSB7XG4gICAgICBjb2xsZWN0aW9uOiByZXEudXNlci5jb2xsZWN0aW9uLFxuICAgICAgdXNlcixcbiAgICB9XG5cbiAgICBjb25zdCB0b2tlbiA9IGV4dHJhY3RKV1QocmVxKVxuXG4gICAgaWYgKHRva2VuKSB7XG4gICAgICBjb25zdCBkZWNvZGVkID0gand0LmRlY29kZSh0b2tlbikgYXMgand0Lkp3dFBheWxvYWRcbiAgICAgIGlmIChkZWNvZGVkKSByZXNwb25zZS5leHAgPSBkZWNvZGVkLmV4cFxuICAgICAgaWYgKCFjb2xsZWN0aW9uLmNvbmZpZy5hdXRoLnJlbW92ZVRva2VuRnJvbVJlc3BvbnNlcykgcmVzcG9uc2UudG9rZW4gPSB0b2tlblxuICAgIH1cbiAgfVxuXG4gIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgLy8gQWZ0ZXIgTWUgLSBDb2xsZWN0aW9uXG4gIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICBhd2FpdCBjb2xsZWN0aW9uLmNvbmZpZy5ob29rcy5hZnRlck1lLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICByZXNwb25zZSA9XG4gICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb24/LmNvbmZpZyxcbiAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgIHJlcSxcbiAgICAgICAgcmVzcG9uc2UsXG4gICAgICB9KSkgfHwgcmVzcG9uc2VcbiAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgcmV0dXJuIHJlc3BvbnNlXG59XG5cbmV4cG9ydCBkZWZhdWx0IG1lXG4iXSwibmFtZXMiOlsibWUiLCJjb2xsZWN0aW9uIiwicmVxIiwiZXh0cmFjdEpXVCIsImdldEV4dHJhY3RKV1QiLCJwYXlsb2FkIiwiY29uZmlnIiwicmVzcG9uc2UiLCJ1c2VyIiwicGFyc2VkVVJMIiwidXJsIiwicGFyc2UiLCJvcmlnaW5hbFVybCIsImlzR3JhcGhRTCIsInBhdGhuYW1lIiwicm91dGVzIiwiZ3JhcGhRTCIsImZpbmRCeUlEIiwiaWQiLCJzbHVnIiwiZGVwdGgiLCJhdXRoIiwib3ZlcnJpZGVBY2Nlc3MiLCJzaG93SGlkZGVuRmllbGRzIiwidG9rZW4iLCJkZWNvZGVkIiwiand0IiwiZGVjb2RlIiwiZXhwIiwicmVtb3ZlVG9rZW5Gcm9tUmVzcG9uc2VzIiwiaG9va3MiLCJhZnRlck1lIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJQcm9taXNlIiwicmVzb2x2ZSJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6Ijs7OzsrQkFpRkE7OztlQUFBOzs7cUVBakZnQjs0REFDQTtzRUFNVTs7Ozs7O0FBYzFCLGVBQWVBLEdBQUcsRUFBRUMsVUFBVSxFQUFFQyxHQUFHLEVBQWE7SUFDOUMsTUFBTUMsYUFBYUMsSUFBQUEsc0JBQWEsRUFBQ0YsSUFBSUcsT0FBTyxDQUFDQyxNQUFNO0lBQ25ELElBQUlDLFdBQW1CO1FBQ3JCQyxNQUFNO0lBQ1I7SUFFQSxJQUFJTixJQUFJTSxJQUFJLEVBQUU7UUFDWixNQUFNQyxZQUFZQyxZQUFHLENBQUNDLEtBQUssQ0FBQ1QsSUFBSVUsV0FBVztRQUMzQyxNQUFNQyxZQUFZSixVQUFVSyxRQUFRLEtBQUssQ0FBQyxJQUFJLEVBQUVaLElBQUlHLE9BQU8sQ0FBQ0MsTUFBTSxDQUFDUyxNQUFNLENBQUNDLE9BQU8sQ0FBQyxDQUFDO1FBRW5GLE1BQU1SLE9BQVEsTUFBTU4sSUFBSUcsT0FBTyxDQUFDWSxRQUFRLENBQUM7WUFDdkNDLElBQUloQixJQUFJTSxJQUFJLENBQUNVLEVBQUU7WUFDZmpCLFlBQVlBLFdBQVdLLE1BQU0sQ0FBQ2EsSUFBSTtZQUNsQ0MsT0FBT1AsWUFBWSxJQUFJWixXQUFXSyxNQUFNLENBQUNlLElBQUksQ0FBQ0QsS0FBSztZQUNuREUsZ0JBQWdCO1lBQ2hCcEI7WUFDQXFCLGtCQUFrQjtRQUNwQjtRQUVBLElBQUlyQixJQUFJTSxJQUFJLENBQUNQLFVBQVUsS0FBS0EsV0FBV0ssTUFBTSxDQUFDYSxJQUFJLEVBQUU7WUFDbEQsT0FBTztnQkFDTFgsTUFBTTtZQUNSO1FBQ0Y7UUFFQSxPQUFPQSxLQUFLUCxVQUFVO1FBRXRCTSxXQUFXO1lBQ1ROLFlBQVlDLElBQUlNLElBQUksQ0FBQ1AsVUFBVTtZQUMvQk87UUFDRjtRQUVBLE1BQU1nQixRQUFRckIsV0FBV0Q7UUFFekIsSUFBSXNCLE9BQU87WUFDVCxNQUFNQyxVQUFVQyxxQkFBRyxDQUFDQyxNQUFNLENBQUNIO1lBQzNCLElBQUlDLFNBQVNsQixTQUFTcUIsR0FBRyxHQUFHSCxRQUFRRyxHQUFHO1lBQ3ZDLElBQUksQ0FBQzNCLFdBQVdLLE1BQU0sQ0FBQ2UsSUFBSSxDQUFDUSx3QkFBd0IsRUFBRXRCLFNBQVNpQixLQUFLLEdBQUdBO1FBQ3pFO0lBQ0Y7SUFFQSx3Q0FBd0M7SUFDeEMsd0JBQXdCO0lBQ3hCLHdDQUF3QztJQUV4QyxNQUFNdkIsV0FBV0ssTUFBTSxDQUFDd0IsS0FBSyxDQUFDQyxPQUFPLENBQUNDLE1BQU0sQ0FBQyxPQUFPQyxXQUFXQztRQUM3RCxNQUFNRDtRQUVOMUIsV0FDRSxBQUFDLE1BQU0yQixLQUFLO1lBQ1ZqQyxZQUFZQSxZQUFZSztZQUN4QjZCLFNBQVNqQyxJQUFJaUMsT0FBTztZQUNwQmpDO1lBQ0FLO1FBQ0YsTUFBT0E7SUFDWCxHQUFHNkIsUUFBUUMsT0FBTztJQUVsQixPQUFPOUI7QUFDVDtNQUVBLFdBQWVQIn0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL29wZXJhdGlvbnMvbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGp3dCBmcm9tICdqc29ud2VidG9rZW4nXG5pbXBvcnQgdXJsIGZyb20gJ3VybCdcblxuaW1wb3J0IHR5cGUgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFVzZXIgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IGdldEV4dHJhY3RKV1QgZnJvbSAnLi4vZ2V0RXh0cmFjdEpXVCdcblxuZXhwb3J0IHR5cGUgUmVzdWx0ID0ge1xuICBjb2xsZWN0aW9uPzogc3RyaW5nXG4gIGV4cD86IG51bWJlclxuICBzdHJhdGVneT86IHN0cmluZ1xuICB0b2tlbj86IHN0cmluZ1xuICB1c2VyPzogVXNlclxufVxuXG5leHBvcnQgdHlwZSBBcmd1bWVudHMgPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxufVxuXG5hc3luYyBmdW5jdGlvbiBtZSh7IGNvbGxlY3Rpb24sIHJlcSB9OiBBcmd1bWVudHMpOiBQcm9taXNlPFJlc3VsdD4ge1xuICBjb25zdCBleHRyYWN0SldUID0gZ2V0RXh0cmFjdEpXVChyZXEucGF5bG9hZC5jb25maWcpXG4gIGxldCByZXNwb25zZTogUmVzdWx0ID0ge1xuICAgIHVzZXI6IG51bGwsXG4gIH1cblxuICBpZiAocmVxLnVzZXIpIHtcbiAgICBjb25zdCBwYXJzZWRVUkwgPSB1cmwucGFyc2UocmVxLm9yaWdpbmFsVXJsKVxuICAgIGNvbnN0IGlzR3JhcGhRTCA9IHBhcnNlZFVSTC5wYXRobmFtZSA9PT0gYC9hcGkke3JlcS5wYXlsb2FkLmNvbmZpZy5yb3V0ZXMuZ3JhcGhRTH1gXG5cbiAgICBjb25zdCB1c2VyID0gKGF3YWl0IHJlcS5wYXlsb2FkLmZpbmRCeUlEKHtcbiAgICAgIGlkOiByZXEudXNlci5pZCxcbiAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb24uY29uZmlnLnNsdWcsXG4gICAgICBkZXB0aDogaXNHcmFwaFFMID8gMCA6IGNvbGxlY3Rpb24uY29uZmlnLmF1dGguZGVwdGgsXG4gICAgICBvdmVycmlkZUFjY2VzczogZmFsc2UsXG4gICAgICByZXEsXG4gICAgICBzaG93SGlkZGVuRmllbGRzOiBmYWxzZSxcbiAgICB9KSkgYXMgVXNlclxuXG4gICAgaWYgKHJlcS51c2VyLmNvbGxlY3Rpb24gIT09IGNvbGxlY3Rpb24uY29uZmlnLnNsdWcpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHVzZXI6IG51bGwsXG4gICAgICB9XG4gICAgfVxuXG4gICAgZGVsZXRlIHVzZXIuY29sbGVjdGlvblxuXG4gICAgcmVzcG9uc2UgPSB7XG4gICAgICBjb2xsZWN0aW9uOiByZXEudXNlci5jb2xsZWN0aW9uLFxuICAgICAgc3RyYXRlZ3k6IHJlcS51c2VyLl9zdHJhdGVneSxcbiAgICAgIHVzZXIsXG4gICAgfVxuXG4gICAgY29uc3QgdG9rZW4gPSBleHRyYWN0SldUKHJlcSlcblxuICAgIGlmICh0b2tlbikge1xuICAgICAgY29uc3QgZGVjb2RlZCA9IGp3dC5kZWNvZGUodG9rZW4pIGFzIGp3dC5Kd3RQYXlsb2FkXG4gICAgICBpZiAoZGVjb2RlZCkgcmVzcG9uc2UuZXhwID0gZGVjb2RlZC5leHBcbiAgICAgIGlmICghY29sbGVjdGlvbi5jb25maWcuYXV0aC5yZW1vdmVUb2tlbkZyb21SZXNwb25zZXMpIHJlc3BvbnNlLnRva2VuID0gdG9rZW5cbiAgICB9XG4gIH1cblxuICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIEFmdGVyIE1lIC0gQ29sbGVjdGlvblxuICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgYXdhaXQgY29sbGVjdGlvbi5jb25maWcuaG9va3MuYWZ0ZXJNZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgcmVzcG9uc2UgPVxuICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uPy5jb25maWcsXG4gICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICByZXEsXG4gICAgICAgIHJlc3BvbnNlLFxuICAgICAgfSkpIHx8IHJlc3BvbnNlXG4gIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gIHJldHVybiByZXNwb25zZVxufVxuXG5leHBvcnQgZGVmYXVsdCBtZVxuIl0sIm5hbWVzIjpbIm1lIiwiY29sbGVjdGlvbiIsInJlcSIsImV4dHJhY3RKV1QiLCJnZXRFeHRyYWN0SldUIiwicGF5bG9hZCIsImNvbmZpZyIsInJlc3BvbnNlIiwidXNlciIsInBhcnNlZFVSTCIsInVybCIsInBhcnNlIiwib3JpZ2luYWxVcmwiLCJpc0dyYXBoUUwiLCJwYXRobmFtZSIsInJvdXRlcyIsImdyYXBoUUwiLCJmaW5kQnlJRCIsImlkIiwic2x1ZyIsImRlcHRoIiwiYXV0aCIsIm92ZXJyaWRlQWNjZXNzIiwic2hvd0hpZGRlbkZpZWxkcyIsInN0cmF0ZWd5IiwiX3N0cmF0ZWd5IiwidG9rZW4iLCJkZWNvZGVkIiwiand0IiwiZGVjb2RlIiwiZXhwIiwicmVtb3ZlVG9rZW5Gcm9tUmVzcG9uc2VzIiwiaG9va3MiLCJhZnRlck1lIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJQcm9taXNlIiwicmVzb2x2ZSJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiI7Ozs7K0JBbUZBOzs7ZUFBQTs7O3FFQW5GZ0I7NERBQ0E7c0VBTVU7Ozs7OztBQWUxQixlQUFlQSxHQUFHLEVBQUVDLFVBQVUsRUFBRUMsR0FBRyxFQUFhO0lBQzlDLE1BQU1DLGFBQWFDLElBQUFBLHNCQUFhLEVBQUNGLElBQUlHLE9BQU8sQ0FBQ0MsTUFBTTtJQUNuRCxJQUFJQyxXQUFtQjtRQUNyQkMsTUFBTTtJQUNSO0lBRUEsSUFBSU4sSUFBSU0sSUFBSSxFQUFFO1FBQ1osTUFBTUMsWUFBWUMsWUFBRyxDQUFDQyxLQUFLLENBQUNULElBQUlVLFdBQVc7UUFDM0MsTUFBTUMsWUFBWUosVUFBVUssUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFWixJQUFJRyxPQUFPLENBQUNDLE1BQU0sQ0FBQ1MsTUFBTSxDQUFDQyxPQUFPLENBQUMsQ0FBQztRQUVuRixNQUFNUixPQUFRLE1BQU1OLElBQUlHLE9BQU8sQ0FBQ1ksUUFBUSxDQUFDO1lBQ3ZDQyxJQUFJaEIsSUFBSU0sSUFBSSxDQUFDVSxFQUFFO1lBQ2ZqQixZQUFZQSxXQUFXSyxNQUFNLENBQUNhLElBQUk7WUFDbENDLE9BQU9QLFlBQVksSUFBSVosV0FBV0ssTUFBTSxDQUFDZSxJQUFJLENBQUNELEtBQUs7WUFDbkRFLGdCQUFnQjtZQUNoQnBCO1lBQ0FxQixrQkFBa0I7UUFDcEI7UUFFQSxJQUFJckIsSUFBSU0sSUFBSSxDQUFDUCxVQUFVLEtBQUtBLFdBQVdLLE1BQU0sQ0FBQ2EsSUFBSSxFQUFFO1lBQ2xELE9BQU87Z0JBQ0xYLE1BQU07WUFDUjtRQUNGO1FBRUEsT0FBT0EsS0FBS1AsVUFBVTtRQUV0Qk0sV0FBVztZQUNUTixZQUFZQyxJQUFJTSxJQUFJLENBQUNQLFVBQVU7WUFDL0J1QixVQUFVdEIsSUFBSU0sSUFBSSxDQUFDaUIsU0FBUztZQUM1QmpCO1FBQ0Y7UUFFQSxNQUFNa0IsUUFBUXZCLFdBQVdEO1FBRXpCLElBQUl3QixPQUFPO1lBQ1QsTUFBTUMsVUFBVUMscUJBQUcsQ0FBQ0MsTUFBTSxDQUFDSDtZQUMzQixJQUFJQyxTQUFTcEIsU0FBU3VCLEdBQUcsR0FBR0gsUUFBUUcsR0FBRztZQUN2QyxJQUFJLENBQUM3QixXQUFXSyxNQUFNLENBQUNlLElBQUksQ0FBQ1Usd0JBQXdCLEVBQUV4QixTQUFTbUIsS0FBSyxHQUFHQTtRQUN6RTtJQUNGO0lBRUEsd0NBQXdDO0lBQ3hDLHdCQUF3QjtJQUN4Qix3Q0FBd0M7SUFFeEMsTUFBTXpCLFdBQVdLLE1BQU0sQ0FBQzBCLEtBQUssQ0FBQ0MsT0FBTyxDQUFDQyxNQUFNLENBQUMsT0FBT0MsV0FBV0M7UUFDN0QsTUFBTUQ7UUFFTjVCLFdBQ0UsQUFBQyxNQUFNNkIsS0FBSztZQUNWbkMsWUFBWUEsWUFBWUs7WUFDeEIrQixTQUFTbkMsSUFBSW1DLE9BQU87WUFDcEJuQztZQUNBSztRQUNGLE1BQU9BO0lBQ1gsR0FBRytCLFFBQVFDLE9BQU87SUFFbEIsT0FBT2hDO0FBQ1Q7TUFFQSxXQUFlUCJ9
@@ -5,6 +5,7 @@ import type { Document } from '../../types';
5
5
  export type Result = {
6
6
  exp: number;
7
7
  refreshedToken: string;
8
+ strategy?: string;
8
9
  user: Document;
9
10
  };
10
11
  export type Arguments = {
@@ -1 +1 @@
1
- {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../../src/auth/operations/refresh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAKvC,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,gCAAgC,CAAA;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAU3C,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,IAAI,EAAE,QAAQ,CAAA;CACf,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,GAAG,CAAC,EAAE,QAAQ,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,iBAAe,OAAO,CAAC,YAAY,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CA+H/D;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../../src/auth/operations/refresh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAKvC,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,gCAAgC,CAAA;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAU3C,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,QAAQ,CAAA;CACf,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,GAAG,CAAC,EAAE,QAAQ,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,iBAAe,OAAO,CAAC,YAAY,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAgI/D;AAED,eAAe,OAAO,CAAA"}
@@ -76,6 +76,7 @@ async function refresh(incomingArgs) {
76
76
  let result = {
77
77
  exp,
78
78
  refreshedToken,
79
+ strategy: args.req.user._strategy,
79
80
  user
80
81
  };
81
82
  // /////////////////////////////////////
@@ -116,4 +117,4 @@ async function refresh(incomingArgs) {
116
117
  }
117
118
  const _default = refresh;
118
119
 
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL29wZXJhdGlvbnMvcmVmcmVzaC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcydcblxuaW1wb3J0IGp3dCBmcm9tICdqc29ud2VidG9rZW4nXG5pbXBvcnQgdXJsIGZyb20gJ3VybCdcblxuaW1wb3J0IHR5cGUgeyBCZWZvcmVPcGVyYXRpb25Ib29rLCBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IERvY3VtZW50IH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmltcG9ydCB7IGJ1aWxkQWZ0ZXJPcGVyYXRpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3V0aWxzJ1xuaW1wb3J0IHsgRm9yYmlkZGVuIH0gZnJvbSAnLi4vLi4vZXJyb3JzJ1xuaW1wb3J0IHsgY29tbWl0VHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvY29tbWl0VHJhbnNhY3Rpb24nXG5pbXBvcnQgZ2V0Q29va2llRXhwaXJhdGlvbiBmcm9tICcuLi8uLi91dGlsaXRpZXMvZ2V0Q29va2llRXhwaXJhdGlvbidcbmltcG9ydCB7IGluaXRUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9pbml0VHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBraWxsVHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMva2lsbFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgZ2V0RmllbGRzVG9TaWduIH0gZnJvbSAnLi9nZXRGaWVsZHNUb1NpZ24nXG5cbmV4cG9ydCB0eXBlIFJlc3VsdCA9IHtcbiAgZXhwOiBudW1iZXJcbiAgcmVmcmVzaGVkVG9rZW46IHN0cmluZ1xuICB1c2VyOiBEb2N1bWVudFxufVxuXG5leHBvcnQgdHlwZSBBcmd1bWVudHMgPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICByZXM/OiBSZXNwb25zZVxuICB0b2tlbjogc3RyaW5nXG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlZnJlc2goaW5jb21pbmdBcmdzOiBBcmd1bWVudHMpOiBQcm9taXNlPFJlc3VsdD4ge1xuICBsZXQgYXJncyA9IGluY29taW5nQXJnc1xuXG4gIHRyeSB7XG4gICAgY29uc3Qgc2hvdWxkQ29tbWl0ID0gYXdhaXQgaW5pdFRyYW5zYWN0aW9uKGFyZ3MucmVxKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGJlZm9yZU9wZXJhdGlvbiAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmhvb2tzLmJlZm9yZU9wZXJhdGlvbi5yZWR1Y2UoXG4gICAgICBhc3luYyAocHJpb3JIb29rOiBCZWZvcmVPcGVyYXRpb25Ib29rIHwgUHJvbWlzZTx2b2lkPiwgaG9vazogQmVmb3JlT3BlcmF0aW9uSG9vaykgPT4ge1xuICAgICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgICBhcmdzID1cbiAgICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uPy5jb25maWcsXG4gICAgICAgICAgICBjb250ZXh0OiBhcmdzLnJlcS5jb250ZXh0LFxuICAgICAgICAgICAgb3BlcmF0aW9uOiAncmVmcmVzaCcsXG4gICAgICAgICAgICByZXE6IGFyZ3MucmVxLFxuICAgICAgICAgIH0pKSB8fCBhcmdzXG4gICAgICB9LFxuICAgICAgUHJvbWlzZS5yZXNvbHZlKCksXG4gICAgKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJlZnJlc2hcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCB7XG4gICAgICBjb2xsZWN0aW9uOiB7IGNvbmZpZzogY29sbGVjdGlvbkNvbmZpZyB9LFxuICAgICAgcmVxOiB7XG4gICAgICAgIHBheWxvYWQ6IHsgY29uZmlnLCBzZWNyZXQgfSxcbiAgICAgIH0sXG4gICAgfSA9IGFyZ3NcblxuICAgIGlmICh0eXBlb2YgYXJncy50b2tlbiAhPT0gJ3N0cmluZycgfHwgIWFyZ3MucmVxLnVzZXIpIHRocm93IG5ldyBGb3JiaWRkZW4oYXJncy5yZXEudClcblxuICAgIGNvbnN0IHBhcnNlZFVSTCA9IHVybC5wYXJzZShhcmdzLnJlcS51cmwpXG4gICAgY29uc3QgaXNHcmFwaFFMID0gcGFyc2VkVVJMLnBhdGhuYW1lID09PSBjb25maWcucm91dGVzLmdyYXBoUUxcblxuICAgIGNvbnN0IHVzZXIgPSBhd2FpdCBhcmdzLnJlcS5wYXlsb2FkLmZpbmRCeUlEKHtcbiAgICAgIGlkOiBhcmdzLnJlcS51c2VyLmlkLFxuICAgICAgY29sbGVjdGlvbjogYXJncy5yZXEudXNlci5jb2xsZWN0aW9uLFxuICAgICAgZGVwdGg6IGlzR3JhcGhRTCA/IDAgOiBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmF1dGguZGVwdGgsXG4gICAgICByZXE6IGFyZ3MucmVxLFxuICAgIH0pXG5cbiAgICBjb25zdCBmaWVsZHNUb1NpZ24gPSBnZXRGaWVsZHNUb1NpZ24oe1xuICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGVtYWlsOiB1c2VyPy5lbWFpbCBhcyBzdHJpbmcsXG4gICAgICB1c2VyOiBhcmdzPy5yZXE/LnVzZXIsXG4gICAgfSlcblxuICAgIGNvbnN0IHJlZnJlc2hlZFRva2VuID0gand0LnNpZ24oZmllbGRzVG9TaWduLCBzZWNyZXQsIHtcbiAgICAgIGV4cGlyZXNJbjogY29sbGVjdGlvbkNvbmZpZy5hdXRoLnRva2VuRXhwaXJhdGlvbixcbiAgICB9KVxuXG4gICAgY29uc3QgZXhwID0gKGp3dC5kZWNvZGUocmVmcmVzaGVkVG9rZW4pIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KS5leHAgYXMgbnVtYmVyXG5cbiAgICBpZiAoYXJncy5yZXMpIHtcbiAgICAgIGNvbnN0IGNvb2tpZU9wdGlvbnMgPSB7XG4gICAgICAgIGRvbWFpbjogdW5kZWZpbmVkLFxuICAgICAgICBleHBpcmVzOiBnZXRDb29raWVFeHBpcmF0aW9uKGNvbGxlY3Rpb25Db25maWcuYXV0aC50b2tlbkV4cGlyYXRpb24pLFxuICAgICAgICBodHRwT25seTogdHJ1ZSxcbiAgICAgICAgcGF0aDogJy8nLFxuICAgICAgICBzYW1lU2l0ZTogY29sbGVjdGlvbkNvbmZpZy5hdXRoLmNvb2tpZXMuc2FtZVNpdGUsXG4gICAgICAgIHNlY3VyZTogY29sbGVjdGlvbkNvbmZpZy5hdXRoLmNvb2tpZXMuc2VjdXJlLFxuICAgICAgfVxuXG4gICAgICBpZiAoY29sbGVjdGlvbkNvbmZpZy5hdXRoLmNvb2tpZXMuZG9tYWluKVxuICAgICAgICBjb29raWVPcHRpb25zLmRvbWFpbiA9IGNvbGxlY3Rpb25Db25maWcuYXV0aC5jb29raWVzLmRvbWFpblxuXG4gICAgICBhcmdzLnJlcy5jb29raWUoYCR7Y29uZmlnLmNvb2tpZVByZWZpeH0tdG9rZW5gLCByZWZyZXNoZWRUb2tlbiwgY29va2llT3B0aW9ucylcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBSZXN1bHQgPSB7XG4gICAgICBleHAsXG4gICAgICByZWZyZXNoZWRUb2tlbixcbiAgICAgIHVzZXIsXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFmdGVyIFJlZnJlc2ggLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlclJlZnJlc2gucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICByZXN1bHQgPVxuICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uPy5jb25maWcsXG4gICAgICAgICAgY29udGV4dDogYXJncy5yZXEuY29udGV4dCxcbiAgICAgICAgICBleHAsXG4gICAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgICByZXM6IGFyZ3MucmVzLFxuICAgICAgICAgIHRva2VuOiByZWZyZXNoZWRUb2tlbixcbiAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyT3BlcmF0aW9uIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGJ1aWxkQWZ0ZXJPcGVyYXRpb24oe1xuICAgICAgYXJncyxcbiAgICAgIGNvbGxlY3Rpb246IGFyZ3MuY29sbGVjdGlvbj8uY29uZmlnLFxuICAgICAgb3BlcmF0aW9uOiAncmVmcmVzaCcsXG4gICAgICByZXN1bHQsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBSZXR1cm4gcmVzdWx0c1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmIChjb2xsZWN0aW9uQ29uZmlnLmF1dGgucmVtb3ZlVG9rZW5Gcm9tUmVzcG9uc2VzKSB7XG4gICAgICBkZWxldGUgcmVzdWx0LnJlZnJlc2hlZFRva2VuXG4gICAgfVxuXG4gICAgaWYgKHNob3VsZENvbW1pdCkgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24oYXJncy5yZXEpXG5cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgYXdhaXQga2lsbFRyYW5zYWN0aW9uKGFyZ3MucmVxKVxuICAgIHRocm93IGVycm9yXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgcmVmcmVzaFxuIl0sIm5hbWVzIjpbInJlZnJlc2giLCJpbmNvbWluZ0FyZ3MiLCJhcmdzIiwic2hvdWxkQ29tbWl0IiwiaW5pdFRyYW5zYWN0aW9uIiwicmVxIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImhvb2tzIiwiYmVmb3JlT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJvcGVyYXRpb24iLCJQcm9taXNlIiwicmVzb2x2ZSIsImNvbGxlY3Rpb25Db25maWciLCJwYXlsb2FkIiwic2VjcmV0IiwidG9rZW4iLCJ1c2VyIiwiRm9yYmlkZGVuIiwidCIsInBhcnNlZFVSTCIsInVybCIsInBhcnNlIiwiaXNHcmFwaFFMIiwicGF0aG5hbWUiLCJyb3V0ZXMiLCJncmFwaFFMIiwiZmluZEJ5SUQiLCJpZCIsImRlcHRoIiwiYXV0aCIsImZpZWxkc1RvU2lnbiIsImdldEZpZWxkc1RvU2lnbiIsImVtYWlsIiwicmVmcmVzaGVkVG9rZW4iLCJqd3QiLCJzaWduIiwiZXhwaXJlc0luIiwidG9rZW5FeHBpcmF0aW9uIiwiZXhwIiwiZGVjb2RlIiwicmVzIiwiY29va2llT3B0aW9ucyIsImRvbWFpbiIsInVuZGVmaW5lZCIsImV4cGlyZXMiLCJnZXRDb29raWVFeHBpcmF0aW9uIiwiaHR0cE9ubHkiLCJwYXRoIiwic2FtZVNpdGUiLCJjb29raWVzIiwic2VjdXJlIiwiY29va2llIiwiY29va2llUHJlZml4IiwicmVzdWx0IiwiYWZ0ZXJSZWZyZXNoIiwiYnVpbGRBZnRlck9wZXJhdGlvbiIsInJlbW92ZVRva2VuRnJvbVJlc3BvbnNlcyIsImNvbW1pdFRyYW5zYWN0aW9uIiwiZXJyb3IiLCJraWxsVHJhbnNhY3Rpb24iXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiI7Ozs7K0JBK0pBOzs7ZUFBQTs7O3FFQTdKZ0I7NERBQ0E7dUJBTW9CO3dCQUNWO21DQUNROzRFQUNGO2lDQUNBO2lDQUNBO2lDQUNBOzs7Ozs7QUFlaEMsZUFBZUEsUUFBUUMsWUFBdUI7SUFDNUMsSUFBSUMsT0FBT0Q7SUFFWCxJQUFJO1FBQ0YsTUFBTUUsZUFBZSxNQUFNQyxJQUFBQSxnQ0FBZSxFQUFDRixLQUFLRyxHQUFHO1FBRW5ELHdDQUF3QztRQUN4QywrQkFBK0I7UUFDL0Isd0NBQXdDO1FBRXhDLE1BQU1ILEtBQUtJLFVBQVUsQ0FBQ0MsTUFBTSxDQUFDQyxLQUFLLENBQUNDLGVBQWUsQ0FBQ0MsTUFBTSxDQUN2RCxPQUFPQyxXQUFnREM7WUFDckQsTUFBTUQ7WUFFTlQsT0FDRSxBQUFDLE1BQU1VLEtBQUs7Z0JBQ1ZWO2dCQUNBSSxZQUFZSixLQUFLSSxVQUFVLEVBQUVDO2dCQUM3Qk0sU0FBU1gsS0FBS0csR0FBRyxDQUFDUSxPQUFPO2dCQUN6QkMsV0FBVztnQkFDWFQsS0FBS0gsS0FBS0csR0FBRztZQUNmLE1BQU9IO1FBQ1gsR0FDQWEsUUFBUUMsT0FBTztRQUdqQix3Q0FBd0M7UUFDeEMsVUFBVTtRQUNWLHdDQUF3QztRQUV4QyxNQUFNLEVBQ0pWLFlBQVksRUFBRUMsUUFBUVUsZ0JBQWdCLEVBQUUsRUFDeENaLEtBQUssRUFDSGEsU0FBUyxFQUFFWCxNQUFNLEVBQUVZLE1BQU0sRUFBRSxFQUM1QixFQUNGLEdBQUdqQjtRQUVKLElBQUksT0FBT0EsS0FBS2tCLEtBQUssS0FBSyxZQUFZLENBQUNsQixLQUFLRyxHQUFHLENBQUNnQixJQUFJLEVBQUUsTUFBTSxJQUFJQyxpQkFBUyxDQUFDcEIsS0FBS0csR0FBRyxDQUFDa0IsQ0FBQztRQUVwRixNQUFNQyxZQUFZQyxZQUFHLENBQUNDLEtBQUssQ0FBQ3hCLEtBQUtHLEdBQUcsQ0FBQ29CLEdBQUc7UUFDeEMsTUFBTUUsWUFBWUgsVUFBVUksUUFBUSxLQUFLckIsT0FBT3NCLE1BQU0sQ0FBQ0MsT0FBTztRQUU5RCxNQUFNVCxPQUFPLE1BQU1uQixLQUFLRyxHQUFHLENBQUNhLE9BQU8sQ0FBQ2EsUUFBUSxDQUFDO1lBQzNDQyxJQUFJOUIsS0FBS0csR0FBRyxDQUFDZ0IsSUFBSSxDQUFDVyxFQUFFO1lBQ3BCMUIsWUFBWUosS0FBS0csR0FBRyxDQUFDZ0IsSUFBSSxDQUFDZixVQUFVO1lBQ3BDMkIsT0FBT04sWUFBWSxJQUFJekIsS0FBS0ksVUFBVSxDQUFDQyxNQUFNLENBQUMyQixJQUFJLENBQUNELEtBQUs7WUFDeEQ1QixLQUFLSCxLQUFLRyxHQUFHO1FBQ2Y7UUFFQSxNQUFNOEIsZUFBZUMsSUFBQUEsZ0NBQWUsRUFBQztZQUNuQ25CO1lBQ0FvQixPQUFPaEIsTUFBTWdCO1lBQ2JoQixNQUFNbkIsTUFBTUcsS0FBS2dCO1FBQ25CO1FBRUEsTUFBTWlCLGlCQUFpQkMscUJBQUcsQ0FBQ0MsSUFBSSxDQUFDTCxjQUFjaEIsUUFBUTtZQUNwRHNCLFdBQVd4QixpQkFBaUJpQixJQUFJLENBQUNRLGVBQWU7UUFDbEQ7UUFFQSxNQUFNQyxNQUFNLEFBQUNKLHFCQUFHLENBQUNLLE1BQU0sQ0FBQ04sZ0JBQTRDSyxHQUFHO1FBRXZFLElBQUl6QyxLQUFLMkMsR0FBRyxFQUFFO1lBQ1osTUFBTUMsZ0JBQWdCO2dCQUNwQkMsUUFBUUM7Z0JBQ1JDLFNBQVNDLElBQUFBLDRCQUFtQixFQUFDakMsaUJBQWlCaUIsSUFBSSxDQUFDUSxlQUFlO2dCQUNsRVMsVUFBVTtnQkFDVkMsTUFBTTtnQkFDTkMsVUFBVXBDLGlCQUFpQmlCLElBQUksQ0FBQ29CLE9BQU8sQ0FBQ0QsUUFBUTtnQkFDaERFLFFBQVF0QyxpQkFBaUJpQixJQUFJLENBQUNvQixPQUFPLENBQUNDLE1BQU07WUFDOUM7WUFFQSxJQUFJdEMsaUJBQWlCaUIsSUFBSSxDQUFDb0IsT0FBTyxDQUFDUCxNQUFNLEVBQ3RDRCxjQUFjQyxNQUFNLEdBQUc5QixpQkFBaUJpQixJQUFJLENBQUNvQixPQUFPLENBQUNQLE1BQU07WUFFN0Q3QyxLQUFLMkMsR0FBRyxDQUFDVyxNQUFNLENBQUMsQ0FBQyxFQUFFakQsT0FBT2tELFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRW5CLGdCQUFnQlE7UUFDbEU7UUFFQSxJQUFJWSxTQUFpQjtZQUNuQmY7WUFDQUw7WUFDQWpCO1FBQ0Y7UUFFQSx3Q0FBd0M7UUFDeEMsNkJBQTZCO1FBQzdCLHdDQUF3QztRQUV4QyxNQUFNSixpQkFBaUJULEtBQUssQ0FBQ21ELFlBQVksQ0FBQ2pELE1BQU0sQ0FBQyxPQUFPQyxXQUFXQztZQUNqRSxNQUFNRDtZQUVOK0MsU0FDRSxBQUFDLE1BQU05QyxLQUFLO2dCQUNWTixZQUFZSixLQUFLSSxVQUFVLEVBQUVDO2dCQUM3Qk0sU0FBU1gsS0FBS0csR0FBRyxDQUFDUSxPQUFPO2dCQUN6QjhCO2dCQUNBdEMsS0FBS0gsS0FBS0csR0FBRztnQkFDYndDLEtBQUszQyxLQUFLMkMsR0FBRztnQkFDYnpCLE9BQU9rQjtZQUNULE1BQU9vQjtRQUNYLEdBQUczQyxRQUFRQyxPQUFPO1FBRWxCLHdDQUF3QztRQUN4Qyw4QkFBOEI7UUFDOUIsd0NBQXdDO1FBRXhDMEMsU0FBUyxNQUFNRSxJQUFBQSwwQkFBbUIsRUFBQztZQUNqQzFEO1lBQ0FJLFlBQVlKLEtBQUtJLFVBQVUsRUFBRUM7WUFDN0JPLFdBQVc7WUFDWDRDO1FBQ0Y7UUFFQSx3Q0FBd0M7UUFDeEMsaUJBQWlCO1FBQ2pCLHdDQUF3QztRQUV4QyxJQUFJekMsaUJBQWlCaUIsSUFBSSxDQUFDMkIsd0JBQXdCLEVBQUU7WUFDbEQsT0FBT0gsT0FBT3BCLGNBQWM7UUFDOUI7UUFFQSxJQUFJbkMsY0FBYyxNQUFNMkQsSUFBQUEsb0NBQWlCLEVBQUM1RCxLQUFLRyxHQUFHO1FBRWxELE9BQU9xRDtJQUNULEVBQUUsT0FBT0ssT0FBZ0I7UUFDdkIsTUFBTUMsSUFBQUEsZ0NBQWUsRUFBQzlELEtBQUtHLEdBQUc7UUFDOUIsTUFBTTBEO0lBQ1I7QUFDRjtNQUVBLFdBQWUvRCJ9
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL29wZXJhdGlvbnMvcmVmcmVzaC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcydcblxuaW1wb3J0IGp3dCBmcm9tICdqc29ud2VidG9rZW4nXG5pbXBvcnQgdXJsIGZyb20gJ3VybCdcblxuaW1wb3J0IHR5cGUgeyBCZWZvcmVPcGVyYXRpb25Ib29rLCBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IERvY3VtZW50IH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmltcG9ydCB7IGJ1aWxkQWZ0ZXJPcGVyYXRpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3V0aWxzJ1xuaW1wb3J0IHsgRm9yYmlkZGVuIH0gZnJvbSAnLi4vLi4vZXJyb3JzJ1xuaW1wb3J0IHsgY29tbWl0VHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvY29tbWl0VHJhbnNhY3Rpb24nXG5pbXBvcnQgZ2V0Q29va2llRXhwaXJhdGlvbiBmcm9tICcuLi8uLi91dGlsaXRpZXMvZ2V0Q29va2llRXhwaXJhdGlvbidcbmltcG9ydCB7IGluaXRUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9pbml0VHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBraWxsVHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMva2lsbFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgZ2V0RmllbGRzVG9TaWduIH0gZnJvbSAnLi9nZXRGaWVsZHNUb1NpZ24nXG5cbmV4cG9ydCB0eXBlIFJlc3VsdCA9IHtcbiAgZXhwOiBudW1iZXJcbiAgcmVmcmVzaGVkVG9rZW46IHN0cmluZ1xuICBzdHJhdGVneT86IHN0cmluZ1xuICB1c2VyOiBEb2N1bWVudFxufVxuXG5leHBvcnQgdHlwZSBBcmd1bWVudHMgPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICByZXM/OiBSZXNwb25zZVxuICB0b2tlbjogc3RyaW5nXG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlZnJlc2goaW5jb21pbmdBcmdzOiBBcmd1bWVudHMpOiBQcm9taXNlPFJlc3VsdD4ge1xuICBsZXQgYXJncyA9IGluY29taW5nQXJnc1xuXG4gIHRyeSB7XG4gICAgY29uc3Qgc2hvdWxkQ29tbWl0ID0gYXdhaXQgaW5pdFRyYW5zYWN0aW9uKGFyZ3MucmVxKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGJlZm9yZU9wZXJhdGlvbiAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmhvb2tzLmJlZm9yZU9wZXJhdGlvbi5yZWR1Y2UoXG4gICAgICBhc3luYyAocHJpb3JIb29rOiBCZWZvcmVPcGVyYXRpb25Ib29rIHwgUHJvbWlzZTx2b2lkPiwgaG9vazogQmVmb3JlT3BlcmF0aW9uSG9vaykgPT4ge1xuICAgICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgICBhcmdzID1cbiAgICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uPy5jb25maWcsXG4gICAgICAgICAgICBjb250ZXh0OiBhcmdzLnJlcS5jb250ZXh0LFxuICAgICAgICAgICAgb3BlcmF0aW9uOiAncmVmcmVzaCcsXG4gICAgICAgICAgICByZXE6IGFyZ3MucmVxLFxuICAgICAgICAgIH0pKSB8fCBhcmdzXG4gICAgICB9LFxuICAgICAgUHJvbWlzZS5yZXNvbHZlKCksXG4gICAgKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJlZnJlc2hcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCB7XG4gICAgICBjb2xsZWN0aW9uOiB7IGNvbmZpZzogY29sbGVjdGlvbkNvbmZpZyB9LFxuICAgICAgcmVxOiB7XG4gICAgICAgIHBheWxvYWQ6IHsgY29uZmlnLCBzZWNyZXQgfSxcbiAgICAgIH0sXG4gICAgfSA9IGFyZ3NcblxuICAgIGlmICh0eXBlb2YgYXJncy50b2tlbiAhPT0gJ3N0cmluZycgfHwgIWFyZ3MucmVxLnVzZXIpIHRocm93IG5ldyBGb3JiaWRkZW4oYXJncy5yZXEudClcblxuICAgIGNvbnN0IHBhcnNlZFVSTCA9IHVybC5wYXJzZShhcmdzLnJlcS51cmwpXG4gICAgY29uc3QgaXNHcmFwaFFMID0gcGFyc2VkVVJMLnBhdGhuYW1lID09PSBjb25maWcucm91dGVzLmdyYXBoUUxcblxuICAgIGNvbnN0IHVzZXIgPSBhd2FpdCBhcmdzLnJlcS5wYXlsb2FkLmZpbmRCeUlEKHtcbiAgICAgIGlkOiBhcmdzLnJlcS51c2VyLmlkLFxuICAgICAgY29sbGVjdGlvbjogYXJncy5yZXEudXNlci5jb2xsZWN0aW9uLFxuICAgICAgZGVwdGg6IGlzR3JhcGhRTCA/IDAgOiBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmF1dGguZGVwdGgsXG4gICAgICByZXE6IGFyZ3MucmVxLFxuICAgIH0pXG5cbiAgICBjb25zdCBmaWVsZHNUb1NpZ24gPSBnZXRGaWVsZHNUb1NpZ24oe1xuICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGVtYWlsOiB1c2VyPy5lbWFpbCBhcyBzdHJpbmcsXG4gICAgICB1c2VyOiBhcmdzPy5yZXE/LnVzZXIsXG4gICAgfSlcblxuICAgIGNvbnN0IHJlZnJlc2hlZFRva2VuID0gand0LnNpZ24oZmllbGRzVG9TaWduLCBzZWNyZXQsIHtcbiAgICAgIGV4cGlyZXNJbjogY29sbGVjdGlvbkNvbmZpZy5hdXRoLnRva2VuRXhwaXJhdGlvbixcbiAgICB9KVxuXG4gICAgY29uc3QgZXhwID0gKGp3dC5kZWNvZGUocmVmcmVzaGVkVG9rZW4pIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KS5leHAgYXMgbnVtYmVyXG5cbiAgICBpZiAoYXJncy5yZXMpIHtcbiAgICAgIGNvbnN0IGNvb2tpZU9wdGlvbnMgPSB7XG4gICAgICAgIGRvbWFpbjogdW5kZWZpbmVkLFxuICAgICAgICBleHBpcmVzOiBnZXRDb29raWVFeHBpcmF0aW9uKGNvbGxlY3Rpb25Db25maWcuYXV0aC50b2tlbkV4cGlyYXRpb24pLFxuICAgICAgICBodHRwT25seTogdHJ1ZSxcbiAgICAgICAgcGF0aDogJy8nLFxuICAgICAgICBzYW1lU2l0ZTogY29sbGVjdGlvbkNvbmZpZy5hdXRoLmNvb2tpZXMuc2FtZVNpdGUsXG4gICAgICAgIHNlY3VyZTogY29sbGVjdGlvbkNvbmZpZy5hdXRoLmNvb2tpZXMuc2VjdXJlLFxuICAgICAgfVxuXG4gICAgICBpZiAoY29sbGVjdGlvbkNvbmZpZy5hdXRoLmNvb2tpZXMuZG9tYWluKVxuICAgICAgICBjb29raWVPcHRpb25zLmRvbWFpbiA9IGNvbGxlY3Rpb25Db25maWcuYXV0aC5jb29raWVzLmRvbWFpblxuXG4gICAgICBhcmdzLnJlcy5jb29raWUoYCR7Y29uZmlnLmNvb2tpZVByZWZpeH0tdG9rZW5gLCByZWZyZXNoZWRUb2tlbiwgY29va2llT3B0aW9ucylcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBSZXN1bHQgPSB7XG4gICAgICBleHAsXG4gICAgICByZWZyZXNoZWRUb2tlbixcbiAgICAgIHN0cmF0ZWd5OiBhcmdzLnJlcS51c2VyLl9zdHJhdGVneSxcbiAgICAgIHVzZXIsXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFmdGVyIFJlZnJlc2ggLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlclJlZnJlc2gucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICByZXN1bHQgPVxuICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uPy5jb25maWcsXG4gICAgICAgICAgY29udGV4dDogYXJncy5yZXEuY29udGV4dCxcbiAgICAgICAgICBleHAsXG4gICAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgICByZXM6IGFyZ3MucmVzLFxuICAgICAgICAgIHRva2VuOiByZWZyZXNoZWRUb2tlbixcbiAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyT3BlcmF0aW9uIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGJ1aWxkQWZ0ZXJPcGVyYXRpb24oe1xuICAgICAgYXJncyxcbiAgICAgIGNvbGxlY3Rpb246IGFyZ3MuY29sbGVjdGlvbj8uY29uZmlnLFxuICAgICAgb3BlcmF0aW9uOiAncmVmcmVzaCcsXG4gICAgICByZXN1bHQsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBSZXR1cm4gcmVzdWx0c1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmIChjb2xsZWN0aW9uQ29uZmlnLmF1dGgucmVtb3ZlVG9rZW5Gcm9tUmVzcG9uc2VzKSB7XG4gICAgICBkZWxldGUgcmVzdWx0LnJlZnJlc2hlZFRva2VuXG4gICAgfVxuXG4gICAgaWYgKHNob3VsZENvbW1pdCkgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24oYXJncy5yZXEpXG5cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgYXdhaXQga2lsbFRyYW5zYWN0aW9uKGFyZ3MucmVxKVxuICAgIHRocm93IGVycm9yXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgcmVmcmVzaFxuIl0sIm5hbWVzIjpbInJlZnJlc2giLCJpbmNvbWluZ0FyZ3MiLCJhcmdzIiwic2hvdWxkQ29tbWl0IiwiaW5pdFRyYW5zYWN0aW9uIiwicmVxIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImhvb2tzIiwiYmVmb3JlT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJvcGVyYXRpb24iLCJQcm9taXNlIiwicmVzb2x2ZSIsImNvbGxlY3Rpb25Db25maWciLCJwYXlsb2FkIiwic2VjcmV0IiwidG9rZW4iLCJ1c2VyIiwiRm9yYmlkZGVuIiwidCIsInBhcnNlZFVSTCIsInVybCIsInBhcnNlIiwiaXNHcmFwaFFMIiwicGF0aG5hbWUiLCJyb3V0ZXMiLCJncmFwaFFMIiwiZmluZEJ5SUQiLCJpZCIsImRlcHRoIiwiYXV0aCIsImZpZWxkc1RvU2lnbiIsImdldEZpZWxkc1RvU2lnbiIsImVtYWlsIiwicmVmcmVzaGVkVG9rZW4iLCJqd3QiLCJzaWduIiwiZXhwaXJlc0luIiwidG9rZW5FeHBpcmF0aW9uIiwiZXhwIiwiZGVjb2RlIiwicmVzIiwiY29va2llT3B0aW9ucyIsImRvbWFpbiIsInVuZGVmaW5lZCIsImV4cGlyZXMiLCJnZXRDb29raWVFeHBpcmF0aW9uIiwiaHR0cE9ubHkiLCJwYXRoIiwic2FtZVNpdGUiLCJjb29raWVzIiwic2VjdXJlIiwiY29va2llIiwiY29va2llUHJlZml4IiwicmVzdWx0Iiwic3RyYXRlZ3kiLCJfc3RyYXRlZ3kiLCJhZnRlclJlZnJlc2giLCJidWlsZEFmdGVyT3BlcmF0aW9uIiwicmVtb3ZlVG9rZW5Gcm9tUmVzcG9uc2VzIiwiY29tbWl0VHJhbnNhY3Rpb24iLCJlcnJvciIsImtpbGxUcmFuc2FjdGlvbiJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiI7Ozs7K0JBaUtBOzs7ZUFBQTs7O3FFQS9KZ0I7NERBQ0E7dUJBTW9CO3dCQUNWO21DQUNROzRFQUNGO2lDQUNBO2lDQUNBO2lDQUNBOzs7Ozs7QUFnQmhDLGVBQWVBLFFBQVFDLFlBQXVCO0lBQzVDLElBQUlDLE9BQU9EO0lBRVgsSUFBSTtRQUNGLE1BQU1FLGVBQWUsTUFBTUMsSUFBQUEsZ0NBQWUsRUFBQ0YsS0FBS0csR0FBRztRQUVuRCx3Q0FBd0M7UUFDeEMsK0JBQStCO1FBQy9CLHdDQUF3QztRQUV4QyxNQUFNSCxLQUFLSSxVQUFVLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxlQUFlLENBQUNDLE1BQU0sQ0FDdkQsT0FBT0MsV0FBZ0RDO1lBQ3JELE1BQU1EO1lBRU5ULE9BQ0UsQUFBQyxNQUFNVSxLQUFLO2dCQUNWVjtnQkFDQUksWUFBWUosS0FBS0ksVUFBVSxFQUFFQztnQkFDN0JNLFNBQVNYLEtBQUtHLEdBQUcsQ0FBQ1EsT0FBTztnQkFDekJDLFdBQVc7Z0JBQ1hULEtBQUtILEtBQUtHLEdBQUc7WUFDZixNQUFPSDtRQUNYLEdBQ0FhLFFBQVFDLE9BQU87UUFHakIsd0NBQXdDO1FBQ3hDLFVBQVU7UUFDVix3Q0FBd0M7UUFFeEMsTUFBTSxFQUNKVixZQUFZLEVBQUVDLFFBQVFVLGdCQUFnQixFQUFFLEVBQ3hDWixLQUFLLEVBQ0hhLFNBQVMsRUFBRVgsTUFBTSxFQUFFWSxNQUFNLEVBQUUsRUFDNUIs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
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/collections/graphql/init.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAmC5C,iBAAS,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoctD;AAED,eAAe,sBAAsB,CAAA"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/collections/graphql/init.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAmC5C,iBAAS,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0ctD;AAED,eAAe,sBAAsB,CAAA"}
@@ -424,6 +424,9 @@ function initCollectionsGraphQL(payload) {
424
424
  exp: {
425
425
  type: _graphql.GraphQLInt
426
426
  },
427
+ strategy: {
428
+ type: _graphql.GraphQLString
429
+ },
427
430
  token: {
428
431
  type: _graphql.GraphQLString
429
432
  },
@@ -448,6 +451,9 @@ function initCollectionsGraphQL(payload) {
448
451
  refreshedToken: {
449
452
  type: _graphql.GraphQLString
450
453
  },
454
+ strategy: {
455
+ type: _graphql.GraphQLString
456
+ },
451
457
  user: {
452
458
  type: collection.graphQL.JWT
453
459
  }
@@ -553,4 +559,4 @@ function initCollectionsGraphQL(payload) {
553
559
  }
554
560
  const _default = initCollectionsGraphQL;
555
561
 
556
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9ncmFwaHFsL2luaXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCB7XG4gIEdyYXBoUUxCb29sZWFuLFxuICBHcmFwaFFMSW50LFxuICBHcmFwaFFMTm9uTnVsbCxcbiAgR3JhcGhRTE9iamVjdFR5cGUsXG4gIEdyYXBoUUxTdHJpbmcsXG59IGZyb20gJ2dyYXBocWwnXG5cbmltcG9ydCB0eXBlIHsgRmllbGQgfSBmcm9tICcuLi8uLi9maWVsZHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBPYmplY3RUeXBlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRPYmplY3RUeXBlJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4vLi4vcGF5bG9hZCdcbmltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbiwgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IGZvcmdvdFBhc3N3b3JkIGZyb20gJy4uLy4uL2F1dGgvZ3JhcGhxbC9yZXNvbHZlcnMvZm9yZ290UGFzc3dvcmQnXG5pbXBvcnQgaW5pdCBmcm9tICcuLi8uLi9hdXRoL2dyYXBocWwvcmVzb2x2ZXJzL2luaXQnXG5pbXBvcnQgbG9naW4gZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy9sb2dpbidcbmltcG9ydCBsb2dvdXQgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy9sb2dvdXQnXG5pbXBvcnQgbWUgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy9tZSdcbmltcG9ydCByZWZyZXNoIGZyb20gJy4uLy4uL2F1dGgvZ3JhcGhxbC9yZXNvbHZlcnMvcmVmcmVzaCdcbmltcG9ydCByZXNldFBhc3N3b3JkIGZyb20gJy4uLy4uL2F1dGgvZ3JhcGhxbC9yZXNvbHZlcnMvcmVzZXRQYXNzd29yZCdcbmltcG9ydCB1bmxvY2sgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy91bmxvY2snXG5pbXBvcnQgdmVyaWZ5RW1haWwgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy92ZXJpZnlFbWFpbCdcbmltcG9ydCB7IGZpZWxkQWZmZWN0c0RhdGEgfSBmcm9tICcuLi8uLi9maWVsZHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IGJ1aWxkTXV0YXRpb25JbnB1dFR5cGUsIHtcbiAgZ2V0Q29sbGVjdGlvbklEVHlwZSxcbn0gZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRNdXRhdGlvbklucHV0VHlwZSdcbmltcG9ydCBidWlsZE9iamVjdFR5cGUgZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRPYmplY3RUeXBlJ1xuaW1wb3J0IGJ1aWxkUGFnaW5hdGVkTGlzdFR5cGUgZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRQYWdpbmF0ZWRMaXN0VHlwZSdcbmltcG9ydCB7IGJ1aWxkUG9saWN5VHlwZSB9IGZyb20gJy4uLy4uL2dyYXBocWwvc2NoZW1hL2J1aWxkUG9saWNpZXNUeXBlJ1xuaW1wb3J0IGJ1aWxkV2hlcmVJbnB1dFR5cGUgZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRXaGVyZUlucHV0VHlwZSdcbmltcG9ydCBmb3JtYXROYW1lIGZyb20gJy4uLy4uL2dyYXBocWwvdXRpbGl0aWVzL2Zvcm1hdE5hbWUnXG5pbXBvcnQgZmxhdHRlbkZpZWxkcyBmcm9tICcuLi8uLi91dGlsaXRpZXMvZmxhdHRlblRvcExldmVsRmllbGRzJ1xuaW1wb3J0IHsgZm9ybWF0TmFtZXMsIHRvV29yZHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvZm9ybWF0TGFiZWxzJ1xuaW1wb3J0IHsgYnVpbGRWZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL2J1aWxkQ29sbGVjdGlvbkZpZWxkcydcbmltcG9ydCBjb3VudFJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2NvdW50J1xuaW1wb3J0IGNyZWF0ZVJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2NyZWF0ZSdcbmltcG9ydCBnZXREZWxldGVSZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy9kZWxldGUnXG5pbXBvcnQgeyBkb2NBY2Nlc3NSZXNvbHZlciB9IGZyb20gJy4vcmVzb2x2ZXJzL2RvY0FjY2VzcydcbmltcG9ydCBmaW5kUmVzb2x2ZXIgZnJvbSAnLi9yZXNvbHZlcnMvZmluZCdcbmltcG9ydCBmaW5kQnlJRFJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2ZpbmRCeUlEJ1xuaW1wb3J0IGZpbmRWZXJzaW9uQnlJRFJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2ZpbmRWZXJzaW9uQnlJRCdcbmltcG9ydCBmaW5kVmVyc2lvbnNSZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy9maW5kVmVyc2lvbnMnXG5pbXBvcnQgcmVzdG9yZVZlcnNpb25SZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy9yZXN0b3JlVmVyc2lvbidcbmltcG9ydCB1cGRhdGVSZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy91cGRhdGUnXG5cbmZ1bmN0aW9uIGluaXRDb2xsZWN0aW9uc0dyYXBoUUwocGF5bG9hZDogUGF5bG9hZCk6IHZvaWQge1xuICBPYmplY3Qua2V5cyhwYXlsb2FkLmNvbGxlY3Rpb25zKS5mb3JFYWNoKChzbHVnKSA9PiB7XG4gICAgY29uc3QgY29sbGVjdGlvbjogQ29sbGVjdGlvbiA9IHBheWxvYWQuY29sbGVjdGlvbnNbc2x1Z11cbiAgICBjb25zdCB7XG4gICAgICBjb25maWcsXG4gICAgICBjb25maWc6IHsgZmllbGRzLCBncmFwaFFMID0ge30gYXMgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZ1snZ3JhcGhRTCddLCB2ZXJzaW9ucyB9LFxuICAgIH0gPSBjb2xsZWN0aW9uXG5cbiAgICBpZiAoIWdyYXBoUUwpIHJldHVyblxuXG4gICAgY29uc3QgZHJhZnRzRW5hYmxlZCA9IGNvbGxlY3Rpb24uY29uZmlnLnZlcnNpb25zPy5kcmFmdHNcblxuICAgIGxldCBzaW5ndWxhck5hbWVcbiAgICBsZXQgcGx1cmFsTmFtZVxuICAgIGNvbnN0IGZyb21TbHVnID0gZm9ybWF0TmFtZXMoY29sbGVjdGlvbi5jb25maWcuc2x1ZylcbiAgICBpZiAoZ3JhcGhRTC5zaW5ndWxhck5hbWUpIHtcbiAgICAgIHNpbmd1bGFyTmFtZSA9IHRvV29yZHMoZ3JhcGhRTC5zaW5ndWxhck5hbWUsIHRydWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNpbmd1bGFyTmFtZSA9IGZyb21TbHVnLnNpbmd1bGFyXG4gICAgfVxuICAgIGlmIChncmFwaFFMLnBsdXJhbE5hbWUpIHtcbiAgICAgIHBsdXJhbE5hbWUgPSB0b1dvcmRzKGdyYXBoUUwucGx1cmFsTmFtZSwgdHJ1ZSlcbiAgICB9IGVsc2Uge1xuICAgICAgcGx1cmFsTmFtZSA9IGZyb21TbHVnLnBsdXJhbFxuICAgIH1cblxuICAgIC8vIEZvciBjb2xsZWN0aW9ucyBuYW1lZCAnTWVkaWEnIG9yIHNpbWlsYXIsXG4gICAgLy8gdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0IHRoZSBzaW5ndWxhciBuYW1lXG4gICAgLy8gd2lsbCBlcXVhbCB0aGUgcGx1cmFsIG5hbWUuIEFwcGVuZCBgYWxsYCB0byB0aGUgYmVnaW5uaW5nXG4gICAgLy8gb2YgcG90ZW50aWFsIGNvbmZsaWN0c1xuICAgIGlmIChzaW5ndWxhck5hbWUgPT09IHBsdXJhbE5hbWUpIHtcbiAgICAgIHBsdXJhbE5hbWUgPSBgYWxsJHtzaW5ndWxhck5hbWV9YFxuICAgIH1cblxuICAgIGNvbGxlY3Rpb24uZ3JhcGhRTCA9IHt9IGFzIENvbGxlY3Rpb25bJ2dyYXBoUUwnXVxuXG4gICAgY29uc3QgaGFzSURGaWVsZCA9XG4gICAgICBmbGF0dGVuRmllbGRzKGZpZWxkcykuZmluZEluZGV4KChmaWVsZCkgPT4gZmllbGRBZmZlY3RzRGF0YShmaWVsZCkgJiYgZmllbGQubmFtZSA9PT0gJ2lkJykgPlxuICAgICAgLTFcblxuICAgIGNvbnN0IGlkVHlwZSA9IGdldENvbGxlY3Rpb25JRFR5cGUocGF5bG9hZCwgY29uZmlnKVxuXG4gICAgY29uc3QgYmFzZUZpZWxkczogT2JqZWN0VHlwZUNvbmZpZyA9IHt9XG5cbiAgICBjb25zdCB3aGVyZUlucHV0RmllbGRzID0gWy4uLmZpZWxkc11cblxuICAgIGlmICghaGFzSURGaWVsZCkge1xuICAgICAgYmFzZUZpZWxkcy5pZCA9IHsgdHlwZTogaWRUeXBlIH1cbiAgICAgIHdoZXJlSW5wdXRGaWVsZHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHR5cGU6IHBheWxvYWQuZGIuZGVmYXVsdElEVHlwZSBhcyAndGV4dCcsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGNvbnN0IGZvcmNlTnVsbGFibGVPYmplY3RUeXBlID0gQm9vbGVhbih2ZXJzaW9ucz8uZHJhZnRzKVxuXG4gICAgY29sbGVjdGlvbi5ncmFwaFFMLnR5cGUgPSBidWlsZE9iamVjdFR5cGUoe1xuICAgICAgbmFtZTogc2luZ3VsYXJOYW1lLFxuICAgICAgYmFzZUZpZWxkcyxcbiAgICAgIGZpZWxkcyxcbiAgICAgIGZvcmNlTnVsbGFibGU6IGZvcmNlTnVsbGFibGVPYmplY3RUeXBlLFxuICAgICAgcGFyZW50TmFtZTogc2luZ3VsYXJOYW1lLFxuICAgICAgcGF5bG9hZCxcbiAgICB9KVxuXG4gICAgY29sbGVjdGlvbi5ncmFwaFFMLnBhZ2luYXRlZFR5cGUgPSBidWlsZFBhZ2luYXRlZExpc3RUeXBlKHBsdXJhbE5hbWUsIGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlKVxuXG4gICAgY29sbGVjdGlvbi5ncmFwaFFMLndoZXJlSW5wdXRUeXBlID0gYnVpbGRXaGVyZUlucHV0VHlwZSh7XG4gICAgICBuYW1lOiBzaW5ndWxhck5hbWUsXG4gICAgICBmaWVsZHM6IHdoZXJlSW5wdXRGaWVsZHMsXG4gICAgICBwYXJlbnROYW1lOiBzaW5ndWxhck5hbWUsXG4gICAgICBwYXlsb2FkLFxuICAgIH0pXG5cbiAgICBpZiAoY29uZmlnLmF1dGggJiYgIWNvbmZpZy5hdXRoLmRpc2FibGVMb2NhbFN0cmF0ZWd5KSB7XG4gICAgICBmaWVsZHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdwYXNzd29yZCcsXG4gICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgbGFiZWw6ICdQYXNzd29yZCcsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBjb25zdCBjcmVhdGVNdXRhdGlvbklucHV0VHlwZSA9IGJ1aWxkTXV0YXRpb25JbnB1dFR5cGUoXG4gICAgICBwYXlsb2FkLFxuICAgICAgc2luZ3VsYXJOYW1lLFxuICAgICAgZmllbGRzLFxuICAgICAgc2luZ3VsYXJOYW1lLFxuICAgIClcbiAgICBpZiAoY3JlYXRlTXV0YXRpb25JbnB1dFR5cGUpIHtcbiAgICAgIGNvbGxlY3Rpb24uZ3JhcGhRTC5tdXRhdGlvbklucHV0VHlwZSA9IG5ldyBHcmFwaFFMTm9uTnVsbChjcmVhdGVNdXRhdGlvbklucHV0VHlwZSlcbiAgICB9XG5cbiAgICBjb25zdCB1cGRhdGVNdXRhdGlvbklucHV0VHlwZSA9IGJ1aWxkTXV0YXRpb25JbnB1dFR5cGUoXG4gICAgICBwYXlsb2FkLFxuICAgICAgYCR7c2luZ3VsYXJOYW1lfVVwZGF0ZWAsXG4gICAgICBmaWVsZHMuZmlsdGVyKChmaWVsZCkgPT4gIShmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZC5uYW1lID09PSAnaWQnKSksXG4gICAgICBgJHtzaW5ndWxhck5hbWV9VXBkYXRlYCxcbiAgICAgIHRydWUsXG4gICAgKVxuICAgIGlmICh1cGRhdGVNdXRhdGlvbklucHV0VHlwZSkge1xuICAgICAgY29sbGVjdGlvbi5ncmFwaFFMLnVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlID0gbmV3IEdyYXBoUUxOb25OdWxsKHVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlKVxuICAgIH1cblxuICAgIHBheWxvYWQuUXVlcnkuZmllbGRzW3Npbmd1bGFyTmFtZV0gPSB7XG4gICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSxcbiAgICAgIGFyZ3M6IHtcbiAgICAgICAgaWQ6IHsgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKGlkVHlwZSkgfSxcbiAgICAgICAgLi4uKGRyYWZ0c0VuYWJsZWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZHJhZnQ6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgLi4uKHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvblxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBmYWxsYmFja0xvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmZhbGxiYWNrTG9jYWxlSW5wdXRUeXBlIH0sXG4gICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGZpbmRCeUlEUmVzb2x2ZXIoY29sbGVjdGlvbiksXG4gICAgfVxuXG4gICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbcGx1cmFsTmFtZV0gPSB7XG4gICAgICB0eXBlOiBidWlsZFBhZ2luYXRlZExpc3RUeXBlKHBsdXJhbE5hbWUsIGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlKSxcbiAgICAgIGFyZ3M6IHtcbiAgICAgICAgLi4uKGRyYWZ0c0VuYWJsZWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZHJhZnQ6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgd2hlcmU6IHsgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLndoZXJlSW5wdXRUeXBlIH0sXG4gICAgICAgIC4uLihwYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb25cbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5mYWxsYmFja0xvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgICBsb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5sb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgbGltaXQ6IHsgdHlwZTogR3JhcGhRTEludCB9LFxuICAgICAgICBwYWdlOiB7IHR5cGU6IEdyYXBoUUxJbnQgfSxcbiAgICAgICAgc29ydDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICB9LFxuICAgICAgcmVzb2x2ZTogZmluZFJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgIH1cblxuICAgIHBheWxvYWQuUXVlcnkuZmllbGRzW2Bjb3VudCR7cGx1cmFsTmFtZX1gXSA9IHtcbiAgICAgIHR5cGU6IG5ldyBHcmFwaFFMT2JqZWN0VHlwZSh7XG4gICAgICAgIG5hbWU6IGBjb3VudCR7cGx1cmFsTmFtZX1gLFxuICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICB0b3RhbERvY3M6IHsgdHlwZTogR3JhcGhRTEludCB9LFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgICBhcmdzOiB7XG4gICAgICAgIC4uLihkcmFmdHNFbmFibGVkXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGRyYWZ0OiB7IHR5cGU6IEdyYXBoUUxCb29sZWFuIH0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB7fSksXG4gICAgICAgIHdoZXJlOiB7IHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC53aGVyZUlucHV0VHlwZSB9LFxuICAgICAgICAuLi4ocGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGNvdW50UmVzb2x2ZXIoY29sbGVjdGlvbiksXG4gICAgfVxuXG4gICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYGRvY0FjY2VzcyR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgdHlwZTogYnVpbGRQb2xpY3lUeXBlKHtcbiAgICAgICAgdHlwZTogJ2NvbGxlY3Rpb24nLFxuICAgICAgICBlbnRpdHk6IGNvbmZpZyxcbiAgICAgICAgc2NvcGU6ICdkb2NBY2Nlc3MnLFxuICAgICAgICB0eXBlU3VmZml4OiAnRG9jQWNjZXNzJyxcbiAgICAgIH0pLFxuICAgICAgYXJnczoge1xuICAgICAgICBpZDogeyB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoaWRUeXBlKSB9LFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGRvY0FjY2Vzc1Jlc29sdmVyKCksXG4gICAgfVxuXG4gICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYGNyZWF0ZSR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnR5cGUsXG4gICAgICBhcmdzOiB7XG4gICAgICAgIC4uLihjcmVhdGVNdXRhdGlvbklucHV0VHlwZVxuICAgICAgICAgID8geyBkYXRhOiB7IHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC5tdXRhdGlvbklucHV0VHlwZSB9IH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgLi4uKGRyYWZ0c0VuYWJsZWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZHJhZnQ6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgLi4uKHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvblxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBsb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5sb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgIH0sXG4gICAgICByZXNvbHZlOiBjcmVhdGVSZXNvbHZlcihjb2xsZWN0aW9uKSxcbiAgICB9XG5cbiAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgdXBkYXRlJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSxcbiAgICAgIGFyZ3M6IHtcbiAgICAgICAgaWQ6IHsgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKGlkVHlwZSkgfSxcbiAgICAgICAgYXV0b3NhdmU6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgLi4uKHVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlXG4gICAgICAgICAgPyB7IGRhdGE6IHsgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlIH0gfVxuICAgICAgICAgIDoge30pLFxuICAgICAgICAuLi4oZHJhZnRzRW5hYmxlZFxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBkcmFmdDogeyB0eXBlOiBHcmFwaFFMQm9vbGVhbiB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgICAuLi4ocGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IHVwZGF0ZVJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgIH1cblxuICAgIHBheWxvYWQuTXV0YXRpb24uZmllbGRzW2BkZWxldGUke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgIHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlLFxuICAgICAgYXJnczoge1xuICAgICAgICBpZDogeyB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoaWRUeXBlKSB9LFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGdldERlbGV0ZVJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgIH1cblxuICAgIGlmIChjb25maWcudmVyc2lvbnMpIHtcbiAgICAgIGNvbnN0IHZlcnNpb25JRFR5cGUgPSBwYXlsb2FkLmRiLmRlZmF1bHRJRFR5cGUgPT09ICd0ZXh0JyA/IEdyYXBoUUxTdHJpbmcgOiBHcmFwaFFMSW50XG4gICAgICBjb25zdCB2ZXJzaW9uQ29sbGVjdGlvbkZpZWxkczogRmllbGRbXSA9IFtcbiAgICAgICAgLi4uYnVpbGRWZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyhjb25maWcpLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgICB0eXBlOiBwYXlsb2FkLmRiLmRlZmF1bHRJRFR5cGUgYXMgJ3RleHQnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ2NyZWF0ZWRBdCcsXG4gICAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICAgIGxhYmVsOiAnQ3JlYXRlZCBBdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAndXBkYXRlZEF0JyxcbiAgICAgICAgICB0eXBlOiAnZGF0ZScsXG4gICAgICAgICAgbGFiZWw6ICdVcGRhdGVkIEF0JyxcbiAgICAgICAgfSxcbiAgICAgIF1cblxuICAgICAgY29sbGVjdGlvbi5ncmFwaFFMLnZlcnNpb25UeXBlID0gYnVpbGRPYmplY3RUeXBlKHtcbiAgICAgICAgbmFtZTogYCR7c2luZ3VsYXJOYW1lfVZlcnNpb25gLFxuICAgICAgICBmaWVsZHM6IHZlcnNpb25Db2xsZWN0aW9uRmllbGRzLFxuICAgICAgICBmb3JjZU51bGxhYmxlOiBmb3JjZU51bGxhYmxlT2JqZWN0VHlwZSxcbiAgICAgICAgcGFyZW50TmFtZTogYCR7c2luZ3VsYXJOYW1lfVZlcnNpb25gLFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgfSlcblxuICAgICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYHZlcnNpb24ke2Zvcm1hdE5hbWUoc2luZ3VsYXJOYW1lKX1gXSA9IHtcbiAgICAgICAgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnZlcnNpb25UeXBlLFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgaWQ6IHsgdHlwZTogdmVyc2lvbklEVHlwZSB9LFxuICAgICAgICAgIC4uLihwYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb25cbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGZhbGxiYWNrTG9jYWxlOiB7IHR5cGU6IHBheWxvYWQudHlwZXMuZmFsbGJhY2tMb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgICAgICBsb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5sb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH0sXG4gICAgICAgIHJlc29sdmU6IGZpbmRWZXJzaW9uQnlJRFJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuICAgICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYHZlcnNpb25zJHtwbHVyYWxOYW1lfWBdID0ge1xuICAgICAgICB0eXBlOiBidWlsZFBhZ2luYXRlZExpc3RUeXBlKFxuICAgICAgICAgIGB2ZXJzaW9ucyR7Zm9ybWF0TmFtZShwbHVyYWxOYW1lKX1gLFxuICAgICAgICAgIGNvbGxlY3Rpb24uZ3JhcGhRTC52ZXJzaW9uVHlwZSxcbiAgICAgICAgKSxcbiAgICAgICAgYXJnczoge1xuICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICB0eXBlOiBidWlsZFdoZXJlSW5wdXRUeXBlKHtcbiAgICAgICAgICAgICAgbmFtZTogYHZlcnNpb25zJHtzaW5ndWxhck5hbWV9YCxcbiAgICAgICAgICAgICAgZmllbGRzOiB2ZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyxcbiAgICAgICAgICAgICAgcGFyZW50TmFtZTogYHZlcnNpb25zJHtzaW5ndWxhck5hbWV9YCxcbiAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgLi4uKHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvblxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5mYWxsYmFja0xvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICBsaW1pdDogeyB0eXBlOiBHcmFwaFFMSW50IH0sXG4gICAgICAgICAgcGFnZTogeyB0eXBlOiBHcmFwaFFMSW50IH0sXG4gICAgICAgICAgc29ydDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlc29sdmU6IGZpbmRWZXJzaW9uc1Jlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYHJlc3RvcmVWZXJzaW9uJHtmb3JtYXROYW1lKHNpbmd1bGFyTmFtZSl9YF0gPSB7XG4gICAgICAgIHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlLFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgaWQ6IHsgdHlwZTogdmVyc2lvbklEVHlwZSB9LFxuICAgICAgICB9LFxuICAgICAgICByZXNvbHZlOiByZXN0b3JlVmVyc2lvblJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjb25maWcuYXV0aCkge1xuICAgICAgY29uc3QgYXV0aEZpZWxkczogRmllbGRbXSA9IGNvbmZpZy5hdXRoLmRpc2FibGVMb2NhbFN0cmF0ZWd5XG4gICAgICAgID8gW11cbiAgICAgICAgOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdlbWFpbCcsXG4gICAgICAgICAgICAgIHR5cGU6ICdlbWFpbCcsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdXG4gICAgICBjb2xsZWN0aW9uLmdyYXBoUUwuSldUID0gYnVpbGRPYmplY3RUeXBlKHtcbiAgICAgICAgbmFtZTogZm9ybWF0TmFtZShgJHtzbHVnfUpXVGApLFxuICAgICAgICBmaWVsZHM6IFtcbiAgICAgICAgICAuLi5jb25maWcuZmllbGRzLmZpbHRlcigoZmllbGQpID0+IGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIGZpZWxkLnNhdmVUb0pXVCksXG4gICAgICAgICAgLi4uYXV0aEZpZWxkcyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnY29sbGVjdGlvbicsXG4gICAgICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBwYXJlbnROYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9SldUYCksXG4gICAgICAgIHBheWxvYWQsXG4gICAgICB9KVxuXG4gICAgICBwYXlsb2FkLlF1ZXJ5LmZpZWxkc1tgbWUke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgICAgdHlwZTogbmV3IEdyYXBoUUxPYmplY3RUeXBlKHtcbiAgICAgICAgICBuYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9TWVgKSxcbiAgICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICAgIGNvbGxlY3Rpb246IHtcbiAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleHA6IHtcbiAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTEludCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0b2tlbjoge1xuICAgICAgICAgICAgICB0eXBlOiBHcmFwaFFMU3RyaW5nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVzZXI6IHtcbiAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnR5cGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICAgICByZXNvbHZlOiBtZShjb2xsZWN0aW9uKSxcbiAgICAgIH1cblxuICAgICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYGluaXRpYWxpemVkJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICAgIHR5cGU6IEdyYXBoUUxCb29sZWFuLFxuICAgICAgICByZXNvbHZlOiBpbml0KGNvbGxlY3Rpb24uY29uZmlnLnNsdWcpLFxuICAgICAgfVxuXG4gICAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgcmVmcmVzaFRva2VuJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICAgIHR5cGU6IG5ldyBHcmFwaFFMT2JqZWN0VHlwZSh7XG4gICAgICAgICAgbmFtZTogZm9ybWF0TmFtZShgJHtzbHVnfVJlZnJlc2hlZCR7c2luZ3VsYXJOYW1lfWApLFxuICAgICAgICAgIGZpZWxkczoge1xuICAgICAgICAgICAgZXhwOiB7XG4gICAgICAgICAgICAgIHR5cGU6IEdyYXBoUUxJbnQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVmcmVzaGVkVG9rZW46IHtcbiAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB1c2VyOiB7XG4gICAgICAgICAgICAgIHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC5KV1QsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgdG9rZW46IHsgdHlwZTogR3JhcGhRTFN0cmluZyB9LFxuICAgICAgICB9LFxuICAgICAgICByZXNvbHZlOiByZWZyZXNoKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuXG4gICAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgbG9nb3V0JHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICAgIHR5cGU6IEdyYXBoUUxTdHJpbmcsXG4gICAgICAgIHJlc29sdmU6IGxvZ291dChjb2xsZWN0aW9uKSxcbiAgICAgIH1cblxuICAgICAgaWYgKCFjb25maWcuYXV0aC5kaXNhYmxlTG9jYWxTdHJhdGVneSkge1xuICAgICAgICBpZiAoY29uZmlnLmF1dGgubWF4TG9naW5BdHRlbXB0cyA+IDApIHtcbiAgICAgICAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgdW5sb2NrJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICAgICAgICB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoR3JhcGhRTEJvb2xlYW4pLFxuICAgICAgICAgICAgYXJnczoge1xuICAgICAgICAgICAgICBlbWFpbDogeyB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoR3JhcGhRTFN0cmluZykgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZXNvbHZlOiB1bmxvY2soY29sbGVjdGlvbiksXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYGxvZ2luJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICAgICAgdHlwZTogbmV3IEdyYXBoUUxPYmplY3RUeXBlKHtcbiAgICAgICAgICAgIG5hbWU6IGZvcm1hdE5hbWUoYCR7c2x1Z31Mb2dpblJlc3VsdGApLFxuICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgIGV4cDoge1xuICAgICAgICAgICAgICAgIHR5cGU6IEdyYXBoUUxJbnQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHRva2VuOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgdXNlcjoge1xuICAgICAgICAgICAgICAgIHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgICBlbWFpbDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgICAgICBwYXNzd29yZDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICByZXNvbHZlOiBsb2dpbihjb2xsZWN0aW9uKSxcbiAgICAgICAgfVxuXG4gICAgICAgIHBheWxvYWQuTXV0YXRpb24uZmllbGRzW2Bmb3Jnb3RQYXNzd29yZCR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgICAgIHR5cGU6IG5ldyBHcmFwaFFMTm9uTnVsbChHcmFwaFFMQm9vbGVhbiksXG4gICAgICAgICAgYXJnczoge1xuICAgICAgICAgICAgZGlzYWJsZUVtYWlsOiB7IHR5cGU6IEdyYXBoUUxCb29sZWFuIH0sXG4gICAgICAgICAgICBlbWFpbDogeyB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoR3JhcGhRTFN0cmluZykgfSxcbiAgICAgICAgICAgIGV4cGlyYXRpb246IHsgdHlwZTogR3JhcGhRTEludCB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVzb2x2ZTogZm9yZ290UGFzc3dvcmQoY29sbGVjdGlvbiksXG4gICAgICAgIH1cblxuICAgICAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgcmVzZXRQYXNzd29yZCR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgICAgIHR5cGU6IG5ldyBHcmFwaFFMT2JqZWN0VHlwZSh7XG4gICAgICAgICAgICBuYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9UmVzZXRQYXNzd29yZGApLFxuICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgIHRva2VuOiB7IHR5cGU6IEdyYXBoUUxTdHJpbmcgfSxcbiAgICAgICAgICAgICAgdXNlcjogeyB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgICBwYXNzd29yZDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgICAgICB0b2tlbjogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICByZXNvbHZlOiByZXNldFBhc3N3b3JkKGNvbGxlY3Rpb24pLFxuICAgICAgICB9XG5cbiAgICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYHZlcmlmeUVtYWlsJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICAgICAgdHlwZTogR3JhcGhRTEJvb2xlYW4sXG4gICAgICAgICAgYXJnczoge1xuICAgICAgICAgICAgdG9rZW46IHsgdHlwZTogR3JhcGhRTFN0cmluZyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVzb2x2ZTogdmVyaWZ5RW1haWwoY29sbGVjdGlvbiksXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0pXG59XG5cbmV4cG9ydCBkZWZhdWx0IGluaXRDb2xsZWN0aW9uc0dyYXBoUUxcbiJdLCJuYW1lcyI6WyJpbml0Q29sbGVjdGlvbnNHcmFwaFFMIiwicGF5bG9hZCIsIk9iamVjdCIsImtleXMiLCJjb2xsZWN0aW9ucyIsImZvckVhY2giLCJzbHVnIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImZpZWxkcyIsImdyYXBoUUwiLCJ2ZXJzaW9ucyIsImRyYWZ0c0VuYWJsZWQiLCJkcmFmdHMiLCJzaW5ndWxhck5hbWUiLCJwbHVyYWxOYW1lIiwiZnJvbVNsdWciLCJmb3JtYXROYW1lcyIsInRvV29yZHMiLCJzaW5ndWxhciIsInBsdXJhbCIsImhhc0lERmllbGQiLCJmbGF0dGVuRmllbGRzIiwiZmluZEluZGV4IiwiZmllbGQiLCJmaWVsZEFmZmVjdHNEYXRhIiwibmFtZSIsImlkVHlwZSIsImdldENvbGxlY3Rpb25JRFR5cGUiLCJiYXNlRmllbGRzIiwid2hlcmVJbnB1dEZpZWxkcyIsImlkIiwidHlwZSIsInB1c2giLCJkYiIsImRlZmF1bHRJRFR5cGUiLCJmb3JjZU51bGxhYmxlT2JqZWN0VHlwZSIsIkJvb2xlYW4iLCJidWlsZE9iamVjdFR5cGUiLCJmb3JjZU51bGxhYmxlIiwicGFyZW50TmFtZSIsInBhZ2luYXRlZFR5cGUiLCJidWlsZFBhZ2luYXRlZExpc3RUeXBlIiwid2hlcmVJbnB1dFR5cGUiLCJidWlsZFdoZXJlSW5wdXRUeXBlIiwiYXV0aCIsImRpc2FibGVMb2NhbFN0cmF0ZWd5IiwibGFiZWwiLCJyZXF1aXJlZCIsImNyZWF0ZU11dGF0aW9uSW5wdXRUeXBlIiwiYnVpbGRNdXRhdGlvbklucHV0VHlwZSIsIm11dGF0aW9uSW5wdXRUeXBlIiwiR3JhcGhRTE5vbk51bGwiLCJ1cGRhdGVNdXRhdGlvbklucHV0VHlwZSIsImZpbHRlciIsIlF1ZXJ5IiwiYXJncyIsImRyYWZ0IiwiR3JhcGhRTEJvb2xlYW4iLCJsb2NhbGl6YXRpb24iLCJmYWxsYmFja0xvY2FsZSIsInR5cGVzIiwiZmFsbGJhY2tMb2NhbGVJbnB1dFR5cGUiLCJsb2NhbGUiLCJsb2NhbGVJbnB1dFR5cGUiLCJyZXNvbHZlIiwiZmluZEJ5SURSZXNvbHZlciIsIndoZXJlIiwibGltaXQiLCJHcmFwaFFMSW50IiwicGFnZSIsInNvcnQiLCJHcmFwaFFMU3RyaW5nIiwiZmluZFJlc29sdmVyIiwiR3JhcGhRTE9iamVjdFR5cGUiLCJ0b3RhbERvY3MiLCJjb3VudFJlc29sdmVyIiwiYnVpbGRQb2xpY3lUeXBlIiwiZW50aXR5Iiwic2NvcGUiLCJ0eXBlU3VmZml4IiwiZG9jQWNjZXNzUmVzb2x2ZXIiLCJNdXRhdGlvbiIsImRhdGEiLCJjcmVhdGVSZXNvbHZlciIsImF1dG9zYXZlIiwidXBkYXRlUmVzb2x2ZXIiLCJnZXREZWxldGVSZXNvbHZlciIsInZlcnNpb25JRFR5cGUiLCJ2ZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyIsImJ1aWxkVmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMiLCJ2ZXJzaW9uVHlwZSIsImZvcm1hdE5hbWUiLCJmaW5kVmVyc2lvbkJ5SURSZXNvbHZlciIsImZpbmRWZXJzaW9uc1Jlc29sdmVyIiwicmVzdG9yZVZlcnNpb25SZXNvbHZlciIsImF1dGhGaWVsZHMiLCJKV1QiLCJzYXZlVG9KV1QiLCJleHAiLCJ0b2tlbiIsInVzZXIiLCJtZSIsImluaXQiLCJyZWZyZXNoZWRUb2tlbiIsInJlZnJlc2giLCJsb2dvdXQiLCJtYXhMb2dpbkF0dGVtcHRzIiwiZW1haWwiLCJ1bmxvY2siLCJwYXNzd29yZCIsImxvZ2luIiwiZGlzYWJsZUVtYWlsIiwiZXhwaXJhdGlvbiIsImZvcmdvdFBhc3N3b3JkIiwicmVzZXRQYXNzd29yZCIsInZlcmlmeUVtYWlsIl0sInJhbmdlTWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
562
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9ncmFwaHFsL2luaXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCB7XG4gIEdyYXBoUUxCb29sZWFuLFxuICBHcmFwaFFMSW50LFxuICBHcmFwaFFMTm9uTnVsbCxcbiAgR3JhcGhRTE9iamVjdFR5cGUsXG4gIEdyYXBoUUxTdHJpbmcsXG59IGZyb20gJ2dyYXBocWwnXG5cbmltcG9ydCB0eXBlIHsgRmllbGQgfSBmcm9tICcuLi8uLi9maWVsZHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBPYmplY3RUeXBlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRPYmplY3RUeXBlJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4vLi4vcGF5bG9hZCdcbmltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbiwgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IGZvcmdvdFBhc3N3b3JkIGZyb20gJy4uLy4uL2F1dGgvZ3JhcGhxbC9yZXNvbHZlcnMvZm9yZ290UGFzc3dvcmQnXG5pbXBvcnQgaW5pdCBmcm9tICcuLi8uLi9hdXRoL2dyYXBocWwvcmVzb2x2ZXJzL2luaXQnXG5pbXBvcnQgbG9naW4gZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy9sb2dpbidcbmltcG9ydCBsb2dvdXQgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy9sb2dvdXQnXG5pbXBvcnQgbWUgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy9tZSdcbmltcG9ydCByZWZyZXNoIGZyb20gJy4uLy4uL2F1dGgvZ3JhcGhxbC9yZXNvbHZlcnMvcmVmcmVzaCdcbmltcG9ydCByZXNldFBhc3N3b3JkIGZyb20gJy4uLy4uL2F1dGgvZ3JhcGhxbC9yZXNvbHZlcnMvcmVzZXRQYXNzd29yZCdcbmltcG9ydCB1bmxvY2sgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy91bmxvY2snXG5pbXBvcnQgdmVyaWZ5RW1haWwgZnJvbSAnLi4vLi4vYXV0aC9ncmFwaHFsL3Jlc29sdmVycy92ZXJpZnlFbWFpbCdcbmltcG9ydCB7IGZpZWxkQWZmZWN0c0RhdGEgfSBmcm9tICcuLi8uLi9maWVsZHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IGJ1aWxkTXV0YXRpb25JbnB1dFR5cGUsIHtcbiAgZ2V0Q29sbGVjdGlvbklEVHlwZSxcbn0gZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRNdXRhdGlvbklucHV0VHlwZSdcbmltcG9ydCBidWlsZE9iamVjdFR5cGUgZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRPYmplY3RUeXBlJ1xuaW1wb3J0IGJ1aWxkUGFnaW5hdGVkTGlzdFR5cGUgZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRQYWdpbmF0ZWRMaXN0VHlwZSdcbmltcG9ydCB7IGJ1aWxkUG9saWN5VHlwZSB9IGZyb20gJy4uLy4uL2dyYXBocWwvc2NoZW1hL2J1aWxkUG9saWNpZXNUeXBlJ1xuaW1wb3J0IGJ1aWxkV2hlcmVJbnB1dFR5cGUgZnJvbSAnLi4vLi4vZ3JhcGhxbC9zY2hlbWEvYnVpbGRXaGVyZUlucHV0VHlwZSdcbmltcG9ydCBmb3JtYXROYW1lIGZyb20gJy4uLy4uL2dyYXBocWwvdXRpbGl0aWVzL2Zvcm1hdE5hbWUnXG5pbXBvcnQgZmxhdHRlbkZpZWxkcyBmcm9tICcuLi8uLi91dGlsaXRpZXMvZmxhdHRlblRvcExldmVsRmllbGRzJ1xuaW1wb3J0IHsgZm9ybWF0TmFtZXMsIHRvV29yZHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvZm9ybWF0TGFiZWxzJ1xuaW1wb3J0IHsgYnVpbGRWZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL2J1aWxkQ29sbGVjdGlvbkZpZWxkcydcbmltcG9ydCBjb3VudFJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2NvdW50J1xuaW1wb3J0IGNyZWF0ZVJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2NyZWF0ZSdcbmltcG9ydCBnZXREZWxldGVSZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy9kZWxldGUnXG5pbXBvcnQgeyBkb2NBY2Nlc3NSZXNvbHZlciB9IGZyb20gJy4vcmVzb2x2ZXJzL2RvY0FjY2VzcydcbmltcG9ydCBmaW5kUmVzb2x2ZXIgZnJvbSAnLi9yZXNvbHZlcnMvZmluZCdcbmltcG9ydCBmaW5kQnlJRFJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2ZpbmRCeUlEJ1xuaW1wb3J0IGZpbmRWZXJzaW9uQnlJRFJlc29sdmVyIGZyb20gJy4vcmVzb2x2ZXJzL2ZpbmRWZXJzaW9uQnlJRCdcbmltcG9ydCBmaW5kVmVyc2lvbnNSZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy9maW5kVmVyc2lvbnMnXG5pbXBvcnQgcmVzdG9yZVZlcnNpb25SZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy9yZXN0b3JlVmVyc2lvbidcbmltcG9ydCB1cGRhdGVSZXNvbHZlciBmcm9tICcuL3Jlc29sdmVycy91cGRhdGUnXG5cbmZ1bmN0aW9uIGluaXRDb2xsZWN0aW9uc0dyYXBoUUwocGF5bG9hZDogUGF5bG9hZCk6IHZvaWQge1xuICBPYmplY3Qua2V5cyhwYXlsb2FkLmNvbGxlY3Rpb25zKS5mb3JFYWNoKChzbHVnKSA9PiB7XG4gICAgY29uc3QgY29sbGVjdGlvbjogQ29sbGVjdGlvbiA9IHBheWxvYWQuY29sbGVjdGlvbnNbc2x1Z11cbiAgICBjb25zdCB7XG4gICAgICBjb25maWcsXG4gICAgICBjb25maWc6IHsgZmllbGRzLCBncmFwaFFMID0ge30gYXMgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZ1snZ3JhcGhRTCddLCB2ZXJzaW9ucyB9LFxuICAgIH0gPSBjb2xsZWN0aW9uXG5cbiAgICBpZiAoIWdyYXBoUUwpIHJldHVyblxuXG4gICAgY29uc3QgZHJhZnRzRW5hYmxlZCA9IGNvbGxlY3Rpb24uY29uZmlnLnZlcnNpb25zPy5kcmFmdHNcblxuICAgIGxldCBzaW5ndWxhck5hbWVcbiAgICBsZXQgcGx1cmFsTmFtZVxuICAgIGNvbnN0IGZyb21TbHVnID0gZm9ybWF0TmFtZXMoY29sbGVjdGlvbi5jb25maWcuc2x1ZylcbiAgICBpZiAoZ3JhcGhRTC5zaW5ndWxhck5hbWUpIHtcbiAgICAgIHNpbmd1bGFyTmFtZSA9IHRvV29yZHMoZ3JhcGhRTC5zaW5ndWxhck5hbWUsIHRydWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNpbmd1bGFyTmFtZSA9IGZyb21TbHVnLnNpbmd1bGFyXG4gICAgfVxuICAgIGlmIChncmFwaFFMLnBsdXJhbE5hbWUpIHtcbiAgICAgIHBsdXJhbE5hbWUgPSB0b1dvcmRzKGdyYXBoUUwucGx1cmFsTmFtZSwgdHJ1ZSlcbiAgICB9IGVsc2Uge1xuICAgICAgcGx1cmFsTmFtZSA9IGZyb21TbHVnLnBsdXJhbFxuICAgIH1cblxuICAgIC8vIEZvciBjb2xsZWN0aW9ucyBuYW1lZCAnTWVkaWEnIG9yIHNpbWlsYXIsXG4gICAgLy8gdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0IHRoZSBzaW5ndWxhciBuYW1lXG4gICAgLy8gd2lsbCBlcXVhbCB0aGUgcGx1cmFsIG5hbWUuIEFwcGVuZCBgYWxsYCB0byB0aGUgYmVnaW5uaW5nXG4gICAgLy8gb2YgcG90ZW50aWFsIGNvbmZsaWN0c1xuICAgIGlmIChzaW5ndWxhck5hbWUgPT09IHBsdXJhbE5hbWUpIHtcbiAgICAgIHBsdXJhbE5hbWUgPSBgYWxsJHtzaW5ndWxhck5hbWV9YFxuICAgIH1cblxuICAgIGNvbGxlY3Rpb24uZ3JhcGhRTCA9IHt9IGFzIENvbGxlY3Rpb25bJ2dyYXBoUUwnXVxuXG4gICAgY29uc3QgaGFzSURGaWVsZCA9XG4gICAgICBmbGF0dGVuRmllbGRzKGZpZWxkcykuZmluZEluZGV4KChmaWVsZCkgPT4gZmllbGRBZmZlY3RzRGF0YShmaWVsZCkgJiYgZmllbGQubmFtZSA9PT0gJ2lkJykgPlxuICAgICAgLTFcblxuICAgIGNvbnN0IGlkVHlwZSA9IGdldENvbGxlY3Rpb25JRFR5cGUocGF5bG9hZCwgY29uZmlnKVxuXG4gICAgY29uc3QgYmFzZUZpZWxkczogT2JqZWN0VHlwZUNvbmZpZyA9IHt9XG5cbiAgICBjb25zdCB3aGVyZUlucHV0RmllbGRzID0gWy4uLmZpZWxkc11cblxuICAgIGlmICghaGFzSURGaWVsZCkge1xuICAgICAgYmFzZUZpZWxkcy5pZCA9IHsgdHlwZTogaWRUeXBlIH1cbiAgICAgIHdoZXJlSW5wdXRGaWVsZHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHR5cGU6IHBheWxvYWQuZGIuZGVmYXVsdElEVHlwZSBhcyAndGV4dCcsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGNvbnN0IGZvcmNlTnVsbGFibGVPYmplY3RUeXBlID0gQm9vbGVhbih2ZXJzaW9ucz8uZHJhZnRzKVxuXG4gICAgY29sbGVjdGlvbi5ncmFwaFFMLnR5cGUgPSBidWlsZE9iamVjdFR5cGUoe1xuICAgICAgbmFtZTogc2luZ3VsYXJOYW1lLFxuICAgICAgYmFzZUZpZWxkcyxcbiAgICAgIGZpZWxkcyxcbiAgICAgIGZvcmNlTnVsbGFibGU6IGZvcmNlTnVsbGFibGVPYmplY3RUeXBlLFxuICAgICAgcGFyZW50TmFtZTogc2luZ3VsYXJOYW1lLFxuICAgICAgcGF5bG9hZCxcbiAgICB9KVxuXG4gICAgY29sbGVjdGlvbi5ncmFwaFFMLnBhZ2luYXRlZFR5cGUgPSBidWlsZFBhZ2luYXRlZExpc3RUeXBlKHBsdXJhbE5hbWUsIGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlKVxuXG4gICAgY29sbGVjdGlvbi5ncmFwaFFMLndoZXJlSW5wdXRUeXBlID0gYnVpbGRXaGVyZUlucHV0VHlwZSh7XG4gICAgICBuYW1lOiBzaW5ndWxhck5hbWUsXG4gICAgICBmaWVsZHM6IHdoZXJlSW5wdXRGaWVsZHMsXG4gICAgICBwYXJlbnROYW1lOiBzaW5ndWxhck5hbWUsXG4gICAgICBwYXlsb2FkLFxuICAgIH0pXG5cbiAgICBpZiAoY29uZmlnLmF1dGggJiYgIWNvbmZpZy5hdXRoLmRpc2FibGVMb2NhbFN0cmF0ZWd5KSB7XG4gICAgICBmaWVsZHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdwYXNzd29yZCcsXG4gICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgbGFiZWw6ICdQYXNzd29yZCcsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBjb25zdCBjcmVhdGVNdXRhdGlvbklucHV0VHlwZSA9IGJ1aWxkTXV0YXRpb25JbnB1dFR5cGUoXG4gICAgICBwYXlsb2FkLFxuICAgICAgc2luZ3VsYXJOYW1lLFxuICAgICAgZmllbGRzLFxuICAgICAgc2luZ3VsYXJOYW1lLFxuICAgIClcbiAgICBpZiAoY3JlYXRlTXV0YXRpb25JbnB1dFR5cGUpIHtcbiAgICAgIGNvbGxlY3Rpb24uZ3JhcGhRTC5tdXRhdGlvbklucHV0VHlwZSA9IG5ldyBHcmFwaFFMTm9uTnVsbChjcmVhdGVNdXRhdGlvbklucHV0VHlwZSlcbiAgICB9XG5cbiAgICBjb25zdCB1cGRhdGVNdXRhdGlvbklucHV0VHlwZSA9IGJ1aWxkTXV0YXRpb25JbnB1dFR5cGUoXG4gICAgICBwYXlsb2FkLFxuICAgICAgYCR7c2luZ3VsYXJOYW1lfVVwZGF0ZWAsXG4gICAgICBmaWVsZHMuZmlsdGVyKChmaWVsZCkgPT4gIShmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZC5uYW1lID09PSAnaWQnKSksXG4gICAgICBgJHtzaW5ndWxhck5hbWV9VXBkYXRlYCxcbiAgICAgIHRydWUsXG4gICAgKVxuICAgIGlmICh1cGRhdGVNdXRhdGlvbklucHV0VHlwZSkge1xuICAgICAgY29sbGVjdGlvbi5ncmFwaFFMLnVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlID0gbmV3IEdyYXBoUUxOb25OdWxsKHVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlKVxuICAgIH1cblxuICAgIHBheWxvYWQuUXVlcnkuZmllbGRzW3Npbmd1bGFyTmFtZV0gPSB7XG4gICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSxcbiAgICAgIGFyZ3M6IHtcbiAgICAgICAgaWQ6IHsgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKGlkVHlwZSkgfSxcbiAgICAgICAgLi4uKGRyYWZ0c0VuYWJsZWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZHJhZnQ6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgLi4uKHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvblxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBmYWxsYmFja0xvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmZhbGxiYWNrTG9jYWxlSW5wdXRUeXBlIH0sXG4gICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGZpbmRCeUlEUmVzb2x2ZXIoY29sbGVjdGlvbiksXG4gICAgfVxuXG4gICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbcGx1cmFsTmFtZV0gPSB7XG4gICAgICB0eXBlOiBidWlsZFBhZ2luYXRlZExpc3RUeXBlKHBsdXJhbE5hbWUsIGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlKSxcbiAgICAgIGFyZ3M6IHtcbiAgICAgICAgLi4uKGRyYWZ0c0VuYWJsZWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZHJhZnQ6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgd2hlcmU6IHsgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLndoZXJlSW5wdXRUeXBlIH0sXG4gICAgICAgIC4uLihwYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb25cbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5mYWxsYmFja0xvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgICBsb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5sb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgbGltaXQ6IHsgdHlwZTogR3JhcGhRTEludCB9LFxuICAgICAgICBwYWdlOiB7IHR5cGU6IEdyYXBoUUxJbnQgfSxcbiAgICAgICAgc29ydDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICB9LFxuICAgICAgcmVzb2x2ZTogZmluZFJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgIH1cblxuICAgIHBheWxvYWQuUXVlcnkuZmllbGRzW2Bjb3VudCR7cGx1cmFsTmFtZX1gXSA9IHtcbiAgICAgIHR5cGU6IG5ldyBHcmFwaFFMT2JqZWN0VHlwZSh7XG4gICAgICAgIG5hbWU6IGBjb3VudCR7cGx1cmFsTmFtZX1gLFxuICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICB0b3RhbERvY3M6IHsgdHlwZTogR3JhcGhRTEludCB9LFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgICBhcmdzOiB7XG4gICAgICAgIC4uLihkcmFmdHNFbmFibGVkXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGRyYWZ0OiB7IHR5cGU6IEdyYXBoUUxCb29sZWFuIH0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB7fSksXG4gICAgICAgIHdoZXJlOiB7IHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC53aGVyZUlucHV0VHlwZSB9LFxuICAgICAgICAuLi4ocGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGNvdW50UmVzb2x2ZXIoY29sbGVjdGlvbiksXG4gICAgfVxuXG4gICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYGRvY0FjY2VzcyR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgdHlwZTogYnVpbGRQb2xpY3lUeXBlKHtcbiAgICAgICAgdHlwZTogJ2NvbGxlY3Rpb24nLFxuICAgICAgICBlbnRpdHk6IGNvbmZpZyxcbiAgICAgICAgc2NvcGU6ICdkb2NBY2Nlc3MnLFxuICAgICAgICB0eXBlU3VmZml4OiAnRG9jQWNjZXNzJyxcbiAgICAgIH0pLFxuICAgICAgYXJnczoge1xuICAgICAgICBpZDogeyB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoaWRUeXBlKSB9LFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGRvY0FjY2Vzc1Jlc29sdmVyKCksXG4gICAgfVxuXG4gICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYGNyZWF0ZSR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnR5cGUsXG4gICAgICBhcmdzOiB7XG4gICAgICAgIC4uLihjcmVhdGVNdXRhdGlvbklucHV0VHlwZVxuICAgICAgICAgID8geyBkYXRhOiB7IHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC5tdXRhdGlvbklucHV0VHlwZSB9IH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgLi4uKGRyYWZ0c0VuYWJsZWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgZHJhZnQ6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgICAgLi4uKHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvblxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBsb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5sb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgIH0sXG4gICAgICByZXNvbHZlOiBjcmVhdGVSZXNvbHZlcihjb2xsZWN0aW9uKSxcbiAgICB9XG5cbiAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgdXBkYXRlJHtzaW5ndWxhck5hbWV9YF0gPSB7XG4gICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSxcbiAgICAgIGFyZ3M6IHtcbiAgICAgICAgaWQ6IHsgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKGlkVHlwZSkgfSxcbiAgICAgICAgYXV0b3NhdmU6IHsgdHlwZTogR3JhcGhRTEJvb2xlYW4gfSxcbiAgICAgICAgLi4uKHVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlXG4gICAgICAgICAgPyB7IGRhdGE6IHsgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnVwZGF0ZU11dGF0aW9uSW5wdXRUeXBlIH0gfVxuICAgICAgICAgIDoge30pLFxuICAgICAgICAuLi4oZHJhZnRzRW5hYmxlZFxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBkcmFmdDogeyB0eXBlOiBHcmFwaFFMQm9vbGVhbiB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgICAuLi4ocGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge30pLFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IHVwZGF0ZVJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgIH1cblxuICAgIHBheWxvYWQuTXV0YXRpb24uZmllbGRzW2BkZWxldGUke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgIHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlLFxuICAgICAgYXJnczoge1xuICAgICAgICBpZDogeyB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoaWRUeXBlKSB9LFxuICAgICAgfSxcbiAgICAgIHJlc29sdmU6IGdldERlbGV0ZVJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgIH1cblxuICAgIGlmIChjb25maWcudmVyc2lvbnMpIHtcbiAgICAgIGNvbnN0IHZlcnNpb25JRFR5cGUgPSBwYXlsb2FkLmRiLmRlZmF1bHRJRFR5cGUgPT09ICd0ZXh0JyA/IEdyYXBoUUxTdHJpbmcgOiBHcmFwaFFMSW50XG4gICAgICBjb25zdCB2ZXJzaW9uQ29sbGVjdGlvbkZpZWxkczogRmllbGRbXSA9IFtcbiAgICAgICAgLi4uYnVpbGRWZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyhjb25maWcpLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgICB0eXBlOiBwYXlsb2FkLmRiLmRlZmF1bHRJRFR5cGUgYXMgJ3RleHQnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ2NyZWF0ZWRBdCcsXG4gICAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICAgIGxhYmVsOiAnQ3JlYXRlZCBBdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAndXBkYXRlZEF0JyxcbiAgICAgICAgICB0eXBlOiAnZGF0ZScsXG4gICAgICAgICAgbGFiZWw6ICdVcGRhdGVkIEF0JyxcbiAgICAgICAgfSxcbiAgICAgIF1cblxuICAgICAgY29sbGVjdGlvbi5ncmFwaFFMLnZlcnNpb25UeXBlID0gYnVpbGRPYmplY3RUeXBlKHtcbiAgICAgICAgbmFtZTogYCR7c2luZ3VsYXJOYW1lfVZlcnNpb25gLFxuICAgICAgICBmaWVsZHM6IHZlcnNpb25Db2xsZWN0aW9uRmllbGRzLFxuICAgICAgICBmb3JjZU51bGxhYmxlOiBmb3JjZU51bGxhYmxlT2JqZWN0VHlwZSxcbiAgICAgICAgcGFyZW50TmFtZTogYCR7c2luZ3VsYXJOYW1lfVZlcnNpb25gLFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgfSlcblxuICAgICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYHZlcnNpb24ke2Zvcm1hdE5hbWUoc2luZ3VsYXJOYW1lKX1gXSA9IHtcbiAgICAgICAgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnZlcnNpb25UeXBlLFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgaWQ6IHsgdHlwZTogdmVyc2lvbklEVHlwZSB9LFxuICAgICAgICAgIC4uLihwYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb25cbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGZhbGxiYWNrTG9jYWxlOiB7IHR5cGU6IHBheWxvYWQudHlwZXMuZmFsbGJhY2tMb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgICAgICBsb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5sb2NhbGVJbnB1dFR5cGUgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH0sXG4gICAgICAgIHJlc29sdmU6IGZpbmRWZXJzaW9uQnlJRFJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuICAgICAgcGF5bG9hZC5RdWVyeS5maWVsZHNbYHZlcnNpb25zJHtwbHVyYWxOYW1lfWBdID0ge1xuICAgICAgICB0eXBlOiBidWlsZFBhZ2luYXRlZExpc3RUeXBlKFxuICAgICAgICAgIGB2ZXJzaW9ucyR7Zm9ybWF0TmFtZShwbHVyYWxOYW1lKX1gLFxuICAgICAgICAgIGNvbGxlY3Rpb24uZ3JhcGhRTC52ZXJzaW9uVHlwZSxcbiAgICAgICAgKSxcbiAgICAgICAgYXJnczoge1xuICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICB0eXBlOiBidWlsZFdoZXJlSW5wdXRUeXBlKHtcbiAgICAgICAgICAgICAgbmFtZTogYHZlcnNpb25zJHtzaW5ndWxhck5hbWV9YCxcbiAgICAgICAgICAgICAgZmllbGRzOiB2ZXJzaW9uQ29sbGVjdGlvbkZpZWxkcyxcbiAgICAgICAgICAgICAgcGFyZW50TmFtZTogYHZlcnNpb25zJHtzaW5ndWxhck5hbWV9YCxcbiAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgLi4uKHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvblxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGU6IHsgdHlwZTogcGF5bG9hZC50eXBlcy5mYWxsYmFja0xvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogeyB0eXBlOiBwYXlsb2FkLnR5cGVzLmxvY2FsZUlucHV0VHlwZSB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICBsaW1pdDogeyB0eXBlOiBHcmFwaFFMSW50IH0sXG4gICAgICAgICAgcGFnZTogeyB0eXBlOiBHcmFwaFFMSW50IH0sXG4gICAgICAgICAgc29ydDogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlc29sdmU6IGZpbmRWZXJzaW9uc1Jlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYHJlc3RvcmVWZXJzaW9uJHtmb3JtYXROYW1lKHNpbmd1bGFyTmFtZSl9YF0gPSB7XG4gICAgICAgIHR5cGU6IGNvbGxlY3Rpb24uZ3JhcGhRTC50eXBlLFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgaWQ6IHsgdHlwZTogdmVyc2lvbklEVHlwZSB9LFxuICAgICAgICB9LFxuICAgICAgICByZXNvbHZlOiByZXN0b3JlVmVyc2lvblJlc29sdmVyKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjb25maWcuYXV0aCkge1xuICAgICAgY29uc3QgYXV0aEZpZWxkczogRmllbGRbXSA9IGNvbmZpZy5hdXRoLmRpc2FibGVMb2NhbFN0cmF0ZWd5XG4gICAgICAgID8gW11cbiAgICAgICAgOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdlbWFpbCcsXG4gICAgICAgICAgICAgIHR5cGU6ICdlbWFpbCcsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdXG4gICAgICBjb2xsZWN0aW9uLmdyYXBoUUwuSldUID0gYnVpbGRPYmplY3RUeXBlKHtcbiAgICAgICAgbmFtZTogZm9ybWF0TmFtZShgJHtzbHVnfUpXVGApLFxuICAgICAgICBmaWVsZHM6IFtcbiAgICAgICAgICAuLi5jb25maWcuZmllbGRzLmZpbHRlcigoZmllbGQpID0+IGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIGZpZWxkLnNhdmVUb0pXVCksXG4gICAgICAgICAgLi4uYXV0aEZpZWxkcyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnY29sbGVjdGlvbicsXG4gICAgICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBwYXJlbnROYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9SldUYCksXG4gICAgICAgIHBheWxvYWQsXG4gICAgICB9KVxuXG4gICAgICBwYXlsb2FkLlF1ZXJ5LmZpZWxkc1tgbWUke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgICAgdHlwZTogbmV3IEdyYXBoUUxPYmplY3RUeXBlKHtcbiAgICAgICAgICBuYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9TWVgKSxcbiAgICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICAgIGNvbGxlY3Rpb246IHtcbiAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleHA6IHtcbiAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTEludCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzdHJhdGVneToge1xuICAgICAgICAgICAgICB0eXBlOiBHcmFwaFFMU3RyaW5nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRva2VuOiB7XG4gICAgICAgICAgICAgIHR5cGU6IEdyYXBoUUxTdHJpbmcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXNlcjoge1xuICAgICAgICAgICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSksXG4gICAgICAgIHJlc29sdmU6IG1lKGNvbGxlY3Rpb24pLFxuICAgICAgfVxuXG4gICAgICBwYXlsb2FkLlF1ZXJ5LmZpZWxkc1tgaW5pdGlhbGl6ZWQke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgICAgdHlwZTogR3JhcGhRTEJvb2xlYW4sXG4gICAgICAgIHJlc29sdmU6IGluaXQoY29sbGVjdGlvbi5jb25maWcuc2x1ZyksXG4gICAgICB9XG5cbiAgICAgIHBheWxvYWQuTXV0YXRpb24uZmllbGRzW2ByZWZyZXNoVG9rZW4ke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgICAgdHlwZTogbmV3IEdyYXBoUUxPYmplY3RUeXBlKHtcbiAgICAgICAgICBuYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9UmVmcmVzaGVkJHtzaW5ndWxhck5hbWV9YCksXG4gICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICBleHA6IHtcbiAgICAgICAgICAgICAgdHlwZTogR3JhcGhRTEludCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZWZyZXNoZWRUb2tlbjoge1xuICAgICAgICAgICAgICB0eXBlOiBHcmFwaFFMU3RyaW5nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHN0cmF0ZWd5OiB7XG4gICAgICAgICAgICAgIHR5cGU6IEdyYXBoUUxTdHJpbmcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXNlcjoge1xuICAgICAgICAgICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwuSldULFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgICAgYXJnczoge1xuICAgICAgICAgIHRva2VuOiB7IHR5cGU6IEdyYXBoUUxTdHJpbmcgfSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVzb2x2ZTogcmVmcmVzaChjb2xsZWN0aW9uKSxcbiAgICAgIH1cblxuICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYGxvZ291dCR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgICB0eXBlOiBHcmFwaFFMU3RyaW5nLFxuICAgICAgICByZXNvbHZlOiBsb2dvdXQoY29sbGVjdGlvbiksXG4gICAgICB9XG5cbiAgICAgIGlmICghY29uZmlnLmF1dGguZGlzYWJsZUxvY2FsU3RyYXRlZ3kpIHtcbiAgICAgICAgaWYgKGNvbmZpZy5hdXRoLm1heExvZ2luQXR0ZW1wdHMgPiAwKSB7XG4gICAgICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYHVubG9jayR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgICAgICAgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKEdyYXBoUUxCb29sZWFuKSxcbiAgICAgICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICAgICAgZW1haWw6IHsgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKEdyYXBoUUxTdHJpbmcpIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVzb2x2ZTogdW5sb2NrKGNvbGxlY3Rpb24pLFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHBheWxvYWQuTXV0YXRpb24uZmllbGRzW2Bsb2dpbiR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgICAgIHR5cGU6IG5ldyBHcmFwaFFMT2JqZWN0VHlwZSh7XG4gICAgICAgICAgICBuYW1lOiBmb3JtYXROYW1lKGAke3NsdWd9TG9naW5SZXN1bHRgKSxcbiAgICAgICAgICAgIGZpZWxkczoge1xuICAgICAgICAgICAgICBleHA6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiBHcmFwaFFMSW50LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB0b2tlbjoge1xuICAgICAgICAgICAgICAgIHR5cGU6IEdyYXBoUUxTdHJpbmcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHVzZXI6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiBjb2xsZWN0aW9uLmdyYXBoUUwudHlwZSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSksXG4gICAgICAgICAgYXJnczoge1xuICAgICAgICAgICAgZW1haWw6IHsgdHlwZTogR3JhcGhRTFN0cmluZyB9LFxuICAgICAgICAgICAgcGFzc3dvcmQ6IHsgdHlwZTogR3JhcGhRTFN0cmluZyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVzb2x2ZTogbG9naW4oY29sbGVjdGlvbiksXG4gICAgICAgIH1cblxuICAgICAgICBwYXlsb2FkLk11dGF0aW9uLmZpZWxkc1tgZm9yZ290UGFzc3dvcmQke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgICAgICB0eXBlOiBuZXcgR3JhcGhRTE5vbk51bGwoR3JhcGhRTEJvb2xlYW4pLFxuICAgICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICAgIGRpc2FibGVFbWFpbDogeyB0eXBlOiBHcmFwaFFMQm9vbGVhbiB9LFxuICAgICAgICAgICAgZW1haWw6IHsgdHlwZTogbmV3IEdyYXBoUUxOb25OdWxsKEdyYXBoUUxTdHJpbmcpIH0sXG4gICAgICAgICAgICBleHBpcmF0aW9uOiB7IHR5cGU6IEdyYXBoUUxJbnQgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlc29sdmU6IGZvcmdvdFBhc3N3b3JkKGNvbGxlY3Rpb24pLFxuICAgICAgICB9XG5cbiAgICAgICAgcGF5bG9hZC5NdXRhdGlvbi5maWVsZHNbYHJlc2V0UGFzc3dvcmQke3Npbmd1bGFyTmFtZX1gXSA9IHtcbiAgICAgICAgICB0eXBlOiBuZXcgR3JhcGhRTE9iamVjdFR5cGUoe1xuICAgICAgICAgICAgbmFtZTogZm9ybWF0TmFtZShgJHtzbHVnfVJlc2V0UGFzc3dvcmRgKSxcbiAgICAgICAgICAgIGZpZWxkczoge1xuICAgICAgICAgICAgICB0b2tlbjogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gICAgICAgICAgICAgIHVzZXI6IHsgdHlwZTogY29sbGVjdGlvbi5ncmFwaFFMLnR5cGUgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSksXG4gICAgICAgICAgYXJnczoge1xuICAgICAgICAgICAgcGFzc3dvcmQ6IHsgdHlwZTogR3JhcGhRTFN0cmluZyB9LFxuICAgICAgICAgICAgdG9rZW46IHsgdHlwZTogR3JhcGhRTFN0cmluZyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVzb2x2ZTogcmVzZXRQYXNzd29yZChjb2xsZWN0aW9uKSxcbiAgICAgICAgfVxuXG4gICAgICAgIHBheWxvYWQuTXV0YXRpb24uZmllbGRzW2B2ZXJpZnlFbWFpbCR7c2luZ3VsYXJOYW1lfWBdID0ge1xuICAgICAgICAgIHR5cGU6IEdyYXBoUUxCb29sZWFuLFxuICAgICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICAgIHRva2VuOiB7IHR5cGU6IEdyYXBoUUxTdHJpbmcgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlc29sdmU6IHZlcmlmeUVtYWlsKGNvbGxlY3Rpb24pLFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9KVxufVxuXG5leHBvcnQgZGVmYXVsdCBpbml0Q29sbGVjdGlvbnNHcmFwaFFMXG4iXSwibmFtZXMiOlsiaW5pdENvbGxlY3Rpb25zR3JhcGhRTCIsInBheWxvYWQiLCJPYmplY3QiLCJrZXlzIiwiY29sbGVjdGlvbnMiLCJmb3JFYWNoIiwic2x1ZyIsImNvbGxlY3Rpb24iLCJjb25maWciLCJmaWVsZHMiLCJncmFwaFFMIiwidmVyc2lvbnMiLCJkcmFmdHNFbmFibGVkIiwiZHJhZnRzIiwic2luZ3VsYXJOYW1lIiwicGx1cmFsTmFtZSIsImZyb21TbHVnIiwiZm9ybWF0TmFtZXMiLCJ0b1dvcmRzIiwic2luZ3VsYXIiLCJwbHVyYWwiLCJoYXNJREZpZWxkIiwiZmxhdHRlbkZpZWxkcyIsImZpbmRJbmRleCIsImZpZWxkIiwiZmllbGRBZmZlY3RzRGF0YSIsIm5hbWUiLCJpZFR5cGUiLCJnZXRDb2xsZWN0aW9uSURUeXBlIiwiYmFzZUZpZWxkcyIsIndoZXJlSW5wdXRGaWVsZHMiLCJpZCIsInR5cGUiLCJwdXNoIiwiZGIiLCJkZWZhdWx0SURUeXBlIiwiZm9yY2VOdWxsYWJsZU9iamVjdFR5cGUiLCJCb29sZWFuIiwiYnVpbGRPYmplY3RUeXBlIiwiZm9yY2VOdWxsYWJsZSIsInBhcmVudE5hbWUiLCJwYWdpbmF0ZWRUeXBlIiwiYnVpbGRQYWdpbmF0ZWRMaXN0VHlwZSIsIndoZXJlSW5wdXRUeXBlIiwiYnVpbGRXaGVyZUlucHV0VHlwZSIsImF1dGgiLCJkaXNhYmxlTG9jYWxTdHJhdGVneSIsImxhYmVsIiwicmVxdWlyZWQiLCJjcmVhdGVNdXRhdGlvbklucHV0VHlwZSIsImJ1aWxkTXV0YXRpb25JbnB1dFR5cGUiLCJtdXRhdGlvbklucHV0VHlwZSIsIkdyYXBoUUxOb25OdWxsIiwidXBkYXRlTXV0YXRpb25JbnB1dFR5cGUiLCJmaWx0ZXIiLCJRdWVyeSIsImFyZ3MiLCJkcmFmdCIsIkdyYXBoUUxCb29sZWFuIiwibG9jYWxpemF0aW9uIiwiZmFsbGJhY2tMb2NhbGUiLCJ0eXBlcyIsImZhbGxiYWNrTG9jYWxlSW5wdXRUeXBlIiwibG9jYWxlIiwibG9jYWxlSW5wdXRUeXBlIiwicmVzb2x2ZSIsImZpbmRCeUlEUmVzb2x2ZXIiLCJ3aGVyZSIsImxpbWl0IiwiR3JhcGhRTEludCIsInBhZ2UiLCJzb3J0IiwiR3JhcGhRTFN0cmluZyIsImZpbmRSZXNvbHZlciIsIkdyYXBoUUxPYmplY3RUeXBlIiwidG90YWxEb2NzIiwiY291bnRSZXNvbHZlciIsImJ1aWxkUG9saWN5VHlwZSIsImVudGl0eSIsInNjb3BlIiwidHlwZVN1ZmZpeCIsImRvY0FjY2Vzc1Jlc29sdmVyIiwiTXV0YXRpb24iLCJkYXRhIiwiY3JlYXRlUmVzb2x2ZXIiLCJhdXRvc2F2ZSIsInVwZGF0ZVJlc29sdmVyIiwiZ2V0RGVsZXRlUmVzb2x2ZXIiLCJ2ZXJzaW9uSURUeXBlIiwidmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMiLCJidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIiwidmVyc2lvblR5cGUiLCJmb3JtYXROYW1lIiwiZmluZFZlcnNpb25CeUlEUmVzb2x2ZXIiLCJmaW5kVmVyc2lvbnNSZXNvbHZlciIsInJlc3RvcmVWZXJzaW9uUmVzb2x2ZXIiLCJhdXRoRmllbGRzIiwiSldUIiwic2F2ZVRvSldUIiwiZXhwIiwic3RyYXRlZ3kiLCJ0b2tlbiIsInVzZXIiLCJtZSIsImluaXQiLCJyZWZyZXNoZWRUb2tlbiIsInJlZnJlc2giLCJsb2dvdXQiLCJtYXhMb2dpbkF0dGVtcHRzIiwiZW1haWwiLCJ1bmxvY2siLCJwYXNzd29yZCIsImxvZ2luIiwiZGlzYWJsZUVtYWlsIiwiZXhwaXJhdGlvbiIsImZvcmdvdFBhc3N3b3JkIiwicmVzZXRQYXNzd29yZCIsInZlcmlmeUVtYWlsIl0sInJhbmdlTWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "payload",
3
- "version": "2.22.1",
3
+ "version": "2.22.2",
4
4
  "description": "Node, React and MongoDB Headless CMS and Application Framework",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.js",