valtech-components 2.0.953 → 2.0.955

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.
@@ -28,4 +28,4 @@ export const INITIAL_MFA_STATE = {
28
28
  mfaToken: null,
29
29
  method: null,
30
30
  };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2F1dGgvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBNEhIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWM7SUFDM0MsZUFBZSxFQUFFLEtBQUs7SUFDdEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixZQUFZLEVBQUUsSUFBSTtJQUNsQixNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUk7SUFDZixLQUFLLEVBQUUsRUFBRTtJQUNULFdBQVcsRUFBRSxFQUFFO0lBQ2YsWUFBWSxFQUFFLEtBQUs7SUFDbkIsU0FBUyxFQUFFLEtBQUs7SUFDaEIsU0FBUyxFQUFFLElBQUk7SUFDZixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFrQkY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBb0I7SUFDaEQsUUFBUSxFQUFFLEtBQUs7SUFDZixRQUFRLEVBQUUsSUFBSTtJQUNkLE1BQU0sRUFBRSxJQUFJO0NBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGlwb3MgZSBpbnRlcmZhY2VzIHBhcmEgZWwgc2VydmljaW8gZGUgYXV0ZW50aWNhY2nDs24gZGUgVmFsdGVjaC5cbiAqIEFsaW5lYWRvcyBjb24gZWwgYmFja2VuZCBBdXRoVjIuXG4gKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENPTkZJR1VSQUNJw5NOXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIENvbmZpZ3VyYWNpw7NuIHBhcmEgZWwgc2VydmljaW8gZGUgYXV0ZW50aWNhY2nDs24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdGVjaEF1dGhDb25maWcge1xuICAvKiogVVJMIGJhc2UgZGUgbGEgQVBJIChlajogJ2h0dHBzOi8vYXBpLm15dmFsdGVjaC5jb20nKSAqL1xuICBhcGlVcmw6IHN0cmluZztcbiAgLyoqIFByZWZpam8gcGFyYSBlbmRwb2ludHMgZGUgYXV0aCAoZGVmYXVsdDogJy92Mi9hdXRoJykgKi9cbiAgYXV0aFByZWZpeD86IHN0cmluZztcbiAgLyoqIFByZWZpam8gcGFyYSBsYXMgY2xhdmVzIGRlIGxvY2FsU3RvcmFnZSAoZGVmYXVsdDogJ3ZhbHRlY2hfYXV0aF8nKSAqL1xuICBzdG9yYWdlUHJlZml4Pzogc3RyaW5nO1xuICAvKiogVGllbXBvIGFudGVzIGRlIGV4cGlyYWNpw7NuIHBhcmEgcmVmcmVzY2FyIHRva2VuIGVuIHNlZ3VuZG9zIChkZWZhdWx0OiA2MCkgKi9cbiAgcmVmcmVzaEJlZm9yZUV4cGlyeT86IG51bWJlcjtcbiAgLyoqIEhhYmlsaXRhciBzaW5jcm9uaXphY2nDs24gZW50cmUgcGVzdGHDsWFzIChkZWZhdWx0OiB0cnVlKSAqL1xuICBlbmFibGVUYWJTeW5jPzogYm9vbGVhbjtcbiAgLyoqIFJ1dGEgZGUgcmVkaXJlY2Npw7NuIGN1YW5kbyBubyBhdXRlbnRpY2FkbyAoZGVmYXVsdDogJy9sb2dpbicpICovXG4gIGxvZ2luUm91dGU/OiBzdHJpbmc7XG4gIC8qKiBSdXRhIGRlIHJlZGlyZWNjacOzbiBjdWFuZG8geWEgYXV0ZW50aWNhZG8gKGRlZmF1bHQ6ICcvJykgKi9cbiAgaG9tZVJvdXRlPzogc3RyaW5nO1xuICAvKiogUnV0YSBwYXJhIGFjY2VzbyBkZW5lZ2FkbyAoZGVmYXVsdDogJy91bmF1dGhvcml6ZWQnKSAqL1xuICB1bmF1dGhvcml6ZWRSb3V0ZT86IHN0cmluZztcbiAgLyoqIEhhYmlsaXRhciBpbnRlZ3JhY2nDs24gY29uIEZpcmViYXNlU2VydmljZSAoZGVmYXVsdDogZmFsc2UpICovXG4gIGVuYWJsZUZpcmViYXNlSW50ZWdyYXRpb24/OiBib29sZWFuO1xuICAvKiogSGFiaWxpdGFyIHJlZ2lzdHJvIGF1dG9tw6F0aWNvIGRlIGRldmljZSB0b2tlbnMgcGFyYSBwdXNoIG5vdGlmaWNhdGlvbnMgKGRlZmF1bHQ6IGZhbHNlKSAqL1xuICBlbmFibGVEZXZpY2VSZWdpc3RyYXRpb24/OiBib29sZWFuO1xuICAvKipcbiAgICogQXBwSUQgZGUgZXN0YSBhcHAgZGVudHJvIGRlbCBmYWN0b3J5IChlajogJ3Nob3djYXNlJywgJ3NpZ2lmeScsICdteXZhbHRlY2gnKS5cbiAgICogVXNhZG8gcG9yIE5vdGlmaWNhdGlvbkFjdGlvblNlcnZpY2UgcGFyYSBkZWNpZGlyIHNpIHVuYSBub3RpZmljYWNpw7NuXG4gICAqIGFwdW50YSBhIGxhIGFwcCBhY3R1YWwgbyByZXF1aWVyZSBoYW5kb2ZmIGNyb3NzLWFwcC5cbiAgICovXG4gIGFwcElkPzogc3RyaW5nO1xuICAvKipcbiAgICogTWFwYSBhcHBJZCDihpIgYmFzZVVybCBhYnNvbHV0YSBwYXJhIGhhbmRvZmYgY3Jvc3MtYXBwLlxuICAgKiBFajogeyBzaWdpZnk6ICdodHRwczovL3NpZ2lmeS5jb20nLCBteXZhbHRlY2g6ICdodHRwczovL2FwcC5teXZhbHRlY2guY29tJyB9XG4gICAqIE5vdGlmaWNhdGlvbkFjdGlvblNlcnZpY2UgdXNhIGVzdGUgbWFwIGFsIGRpc3BhcmFyIGhhbmRvZmYgYSBvdHJhIGFwcC5cbiAgICovXG4gIGFwcFVybHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogSGFiaWxpdGFyIHNpbmNyb25pemFjacOzbiByZWFjdGl2YSBkZSBwZXJtaXNvcyB2aWEgRmlyZXN0b3JlIG9uU25hcHNob3QgKGRlZmF1bHQ6IGZhbHNlKS5cbiAgICogUmVxdWllcmUgZW5hYmxlRmlyZWJhc2VJbnRlZ3JhdGlvbjogdHJ1ZS4gQ3VhbmRvIHVuIGFkbWluIGFzaWduYSBvIHJldm9jYSB1biByb2wsXG4gICAqIGVsIGZyb250ZW5kIGFjdHVhbGl6YSByb2xlcy9wZXJtaXNvcyBzaW4gcmVjYXJnYXIgbGEgcMOhZ2luYSAofjEtM3MgbGF0ZW5jaWEpLlxuICAgKiBSZXF1aWVyZSBxdWUgZWwgYmFja2VuZCB0ZW5nYSBTeW5jUkJBQ1RvRmlyZXN0b3JlIGFjdGl2by5cbiAgICovXG4gIGVuYWJsZUZpcmVzdG9yZVJCQUM/OiBib29sZWFuO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVNUQURPIERFIEFVVEVOVElDQUNJw5NOXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEVzdGFkbyBjb21wbGV0byBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRoU3RhdGUge1xuICAvKiogVXN1YXJpbyBlc3TDoSBhdXRlbnRpY2FkbyAqL1xuICBpc0F1dGhlbnRpY2F0ZWQ6IGJvb2xlYW47XG4gIC8qKiBFc3RhZG8gZGUgY2FyZ2EgaW5pY2lhbCAqL1xuICBpc0xvYWRpbmc6IGJvb2xlYW47XG4gIC8qKiBUb2tlbiBkZSBhY2Nlc28gYWN0dWFsICovXG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmcgfCBudWxsO1xuICAvKiogVG9rZW4gZGUgcmVmcmVzY28gYWN0dWFsICovXG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIElEIGRlbCB1c3VhcmlvICovXG4gIHVzZXJJZDogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIEVtYWlsIGRlbCB1c3VhcmlvICovXG4gIGVtYWlsOiBzdHJpbmcgfCBudWxsO1xuICAvKiogTm9tYnJlIGNvbXBsZXRvIGRlbCB1c3VhcmlvIChwb2JsYWRvIHRyYXMgYGdldFByb2ZpbGUoKWApICovXG4gIG5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogVXNlcm5hbWUvaGFuZGxlIChwb2JsYWRvIHRyYXMgYGdldFByb2ZpbGUoKWApICovXG4gIGhhbmRsZT86IHN0cmluZyB8IG51bGw7XG4gIC8qKiBVUkwgZGVsIGF2YXRhciAocG9ibGFkbyB0cmFzIGBnZXRQcm9maWxlKClgKSAqL1xuICBhdmF0YXJVcmw/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogVGVsw6lmb25vIChwb2JsYWRvIHRyYXMgYGdldFByb2ZpbGUoKWApICovXG4gIHBob25lPzogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIElEIGRlIGxhIG9yZ2FuaXphY2nDs24gYWN0aXZhICovXG4gIGFjdGl2ZU9yZz86IHN0cmluZyB8IG51bGw7XG4gIC8qKiBSb2xlcyBkZWwgdXN1YXJpbyAqL1xuICByb2xlczogc3RyaW5nW107XG4gIC8qKiBQZXJtaXNvcyBkZWwgdXN1YXJpbyAoZm9ybWF0byAncmVzb3VyY2U6YWN0aW9uJykgKi9cbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICAvKiogVXN1YXJpbyBlcyBzdXBlciBhZG1pbiAqL1xuICBpc1N1cGVyQWRtaW46IGJvb2xlYW47XG4gIC8qKiBVc3VhcmlvIHRpZW5lIHN1c2NyaXBjacOzbiBwcmVtaXVtIGFjdGl2YSAobm8gdmUgYWRzKSAqL1xuICBpc1ByZW1pdW06IGJvb2xlYW47XG4gIC8qKiBUaW1lc3RhbXAgZGUgZXhwaXJhY2nDs24gZGVsIGFjY2Vzc1Rva2VuIChtcykgKi9cbiAgZXhwaXJlc0F0OiBudW1iZXIgfCBudWxsO1xuICAvKiogRXJyb3IgZGUgYXV0ZW50aWNhY2nDs24gKHNpIGV4aXN0ZSkgKi9cbiAgZXJyb3I6IEF1dGhFcnJvciB8IG51bGw7XG59XG5cbi8qKlxuICogSW5mb3JtYWNpw7NuIGRlbCB1c3VhcmlvIGF1dGVudGljYWRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhVc2VyIHtcbiAgdXNlcklkOiBzdHJpbmc7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xuICAvKiogVXNlcm5hbWUvaGFuZGxlIGRlbCB1c3VhcmlvIChlajogQHZpY3RvcnYpICovXG4gIGhhbmRsZT86IHN0cmluZztcbiAgLyoqIElEIGRlIGxhIG9yZ2FuaXphY2nDs24gYWN0aXZhICovXG4gIGFjdGl2ZU9yZz86IHN0cmluZztcbiAgLyoqIFVSTCBkZWwgYXZhdGFyIGRlbCB1c3VhcmlvICovXG4gIGF2YXRhclVybD86IHN0cmluZztcbiAgcm9sZXM6IHN0cmluZ1tdO1xuICBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gIGlzU3VwZXJBZG1pbjogYm9vbGVhbjtcbiAgbWZhRW5hYmxlZD86IGJvb2xlYW47XG4gIG1mYU1ldGhvZD86IE1GQU1ldGhvZDtcbn1cblxuLyoqXG4gKiBFcnJvciBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRoRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBFc3RhZG8gaW5pY2lhbCBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGNvbnN0IElOSVRJQUxfQVVUSF9TVEFURTogQXV0aFN0YXRlID0ge1xuICBpc0F1dGhlbnRpY2F0ZWQ6IGZhbHNlLFxuICBpc0xvYWRpbmc6IHRydWUsXG4gIGFjY2Vzc1Rva2VuOiBudWxsLFxuICByZWZyZXNoVG9rZW46IG51bGwsXG4gIHVzZXJJZDogbnVsbCxcbiAgZW1haWw6IG51bGwsXG4gIGFjdGl2ZU9yZzogbnVsbCxcbiAgcm9sZXM6IFtdLFxuICBwZXJtaXNzaW9uczogW10sXG4gIGlzU3VwZXJBZG1pbjogZmFsc2UsXG4gIGlzUHJlbWl1bTogZmFsc2UsXG4gIGV4cGlyZXNBdDogbnVsbCxcbiAgZXJyb3I6IG51bGwsXG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTUZBXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKiogTcOpdG9kb3MgZGUgTUZBIHNvcG9ydGFkb3MgKi9cbmV4cG9ydCB0eXBlIE1GQU1ldGhvZCA9ICdFTUFJTCcgfCAnU01TJyB8ICdUT1RQJztcblxuLyoqXG4gKiBFc3RhZG8gZGUgTUZBIHBlbmRpZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFQZW5kaW5nU3RhdGUge1xuICByZXF1aXJlZDogYm9vbGVhbjtcbiAgbWZhVG9rZW46IHN0cmluZyB8IG51bGw7XG4gIG1ldGhvZDogTUZBTWV0aG9kIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBFc3RhZG8gaW5pY2lhbCBkZSBNRkEuXG4gKi9cbmV4cG9ydCBjb25zdCBJTklUSUFMX01GQV9TVEFURTogTUZBUGVuZGluZ1N0YXRlID0ge1xuICByZXF1aXJlZDogZmFsc2UsXG4gIG1mYVRva2VuOiBudWxsLFxuICBtZXRob2Q6IG51bGwsXG59O1xuXG4vKipcbiAqIFJlc3VsdGFkbyBkZSBzZXR1cCBkZSBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBU2V0dXBSZXN1bHQge1xuICBjb2RlU2VudDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEVzdGFkbyBkZSBNRkEgZGVsIHVzdWFyaW8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBU3RhdHVzIHtcbiAgZW5hYmxlZDogYm9vbGVhbjtcbiAgbWV0aG9kOiBNRkFNZXRob2QgfCBudWxsO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVE9UUCBNRkEgKEdvb2dsZSBBdXRoZW50aWNhdG9yKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBzZXR1cCBkZSBUT1RQLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRPVFBTZXR1cFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgLyoqIFNlY3JldG8gVE9UUCBlbiBiYXNlMzIgKHBhcmEgZW50cmFkYSBtYW51YWwpICovXG4gIHNlY3JldDogc3RyaW5nO1xuICAvKiogVVJMIHBhcmEgZ2VuZXJhciBRUiBjb2RlIChvdHBhdXRoOi8vLi4uKSAqL1xuICBxckNvZGVVcmw6IHN0cmluZztcbiAgLyoqIEPDs2RpZ29zIGRlIHJlc3BhbGRvIGRlIHVuIHNvbG8gdXNvICovXG4gIGJhY2t1cENvZGVzOiBzdHJpbmdbXTtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSB2ZXJpZmljYXIgc2V0dXAgZGUgVE9UUC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUT1RQVmVyaWZ5U2V0dXBSZXF1ZXN0IHtcbiAgLyoqIEPDs2RpZ28gVE9UUCBkZSA2IGTDrWdpdG9zICovXG4gIGNvZGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSB2ZXJpZmljYWNpw7NuIGRlIHNldHVwIFRPVFAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVE9UUFZlcmlmeVNldHVwUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBlbmFibGVkOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGRlc2hhYmlsaXRhciBUT1RQLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRPVFBEaXNhYmxlUmVxdWVzdCB7XG4gIHBhc3N3b3JkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgZGVzaGFiaWxpdGFyIFRPVFAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVE9UUERpc2FibGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGRpc2FibGVkOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgcmVnZW5lcmFyIGPDs2RpZ29zIGRlIHJlc3BhbGRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2VuZXJhdGVCYWNrdXBDb2Rlc1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgYmFja3VwQ29kZXM6IHN0cmluZ1tdO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgY2FudGlkYWQgZGUgY8OzZGlnb3MgZGUgcmVzcGFsZG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFja3VwQ29kZXNDb3VudFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgY291bnQ6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJFUVVFU1RTL1JFU1BPTlNFUyAoYWxpbmVhZG9zIGNvbiBiYWNrZW5kIEF1dGhWMilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNpZ251cCAocmVnaXN0cm8pLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ251cFJlcXVlc3Qge1xuICBlbWFpbDogc3RyaW5nO1xuICBwYXNzd29yZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHNpZ251cCAocmVnaXN0cm8pLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ251cFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgdXNlcklkOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgdmVyaWZpY2FyIGVtYWlsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeUVtYWlsUmVxdWVzdCB7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIGNvZGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSB2ZXJpZmljYWNpw7NuIGRlIGVtYWlsLlxuICogU2kgZXMgZXhpdG9zbywgaW5jbHV5ZSB0b2tlbnMgcGFyYSBhdXRvLWxvZ2luLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeUVtYWlsUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICB2ZXJpZmllZDogYm9vbGVhbjtcbiAgYWNjZXNzVG9rZW4/OiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbj86IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luPzogbnVtYmVyO1xuICB0b2tlblR5cGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHJlZW52aWFyIGPDs2RpZ28gZGUgdmVyaWZpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNlbmRDb2RlUmVxdWVzdCB7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIHR5cGU6ICdFTUFJTF9WRVJJRlknIHwgJ1BBU1NXT1JEX1JFU0VUJztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSByZWVudsOtbyBkZSBjw7NkaWdvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2VuZENvZGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHNlbnQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNpZ25pbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduaW5SZXF1ZXN0IHtcbiAgZW1haWw6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgLyoqIFBsYXRhZm9ybWEgZGVsIGRpc3Bvc2l0aXZvIChwYXJhIGRldGVjY2nDs24gZGUgbnVldm8gZGlzcG9zaXRpdm8pICovXG4gIHBsYXRmb3JtPzogRGV2aWNlUGxhdGZvcm07XG4gIC8qKiBOYXZlZ2Fkb3IgKHNvbG8gd2ViKSAqL1xuICBicm93c2VyPzogc3RyaW5nO1xuICAvKiogU2lzdGVtYSBvcGVyYXRpdm8gKi9cbiAgb3M/OiBzdHJpbmc7XG4gIC8qKiBOb21icmUgYW1pZ2FibGUgZGVsIGRpc3Bvc2l0aXZvICovXG4gIGRldmljZU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgc2lnbmluLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25pblJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgYWNjZXNzVG9rZW4/OiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbj86IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luPzogbnVtYmVyO1xuICB0b2tlblR5cGU/OiBzdHJpbmc7XG4gIG1mYVJlcXVpcmVkPzogYm9vbGVhbjtcbiAgbWZhVG9rZW4/OiBzdHJpbmc7XG4gIG1mYU1ldGhvZD86IE1GQU1ldGhvZDtcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbiAgLyoqIEluZGljYSBzaSBlbCBsb2dpbiBmdWUgZGVzZGUgdW4gZGlzcG9zaXRpdm8gbnVldm8vbm8gcmVjb25vY2lkbyAqL1xuICBpc05ld0RldmljZT86IGJvb2xlYW47XG4gIC8qKiBJRCBkZWwgZGlzcG9zaXRpdm8gdXNhZG8gcGFyYSBlbCBsb2dpbiAqL1xuICBkZXZpY2VJZD86IHN0cmluZztcbiAgLyoqIElkaW9tYSBwcmVmZXJpZG8gZGVsIHVzdWFyaW8gKHBhcmEgc2luY3Jvbml6YXIgY29uIGkxOG4pICovXG4gIGxhbmd1YWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSB2ZXJpZmljYXIgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVZlcmlmeVJlcXVlc3Qge1xuICBtZmFUb2tlbjogc3RyaW5nO1xuICBjb2RlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgdmVyaWZpY2FyIE1GQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFWZXJpZnlSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICBmaXJlYmFzZVRva2VuPzogc3RyaW5nO1xuICBleHBpcmVzSW46IG51bWJlcjtcbiAgdG9rZW5UeXBlOiBzdHJpbmc7XG4gIHJvbGVzPzogc3RyaW5nW107XG4gIHBlcm1pc3Npb25zPzogc3RyaW5nW107XG4gIC8qKiBJZGlvbWEgcHJlZmVyaWRvIGRlbCB1c3VhcmlvIChwYXJhIHNpbmNyb25pemFyIGNvbiBpMThuKSAqL1xuICBsYW5ndWFnZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgcmVmcmVzY2FyIHRva2VuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZnJlc2hSZXF1ZXN0IHtcbiAgcmVmcmVzaFRva2VuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgcmVmcmVzY2FyIHRva2VuLlxuICogSW1wbGVtZW50YSB0b2tlbiByb3RhdGlvbjogY2FkYSByZWZyZXNoIGdlbmVyYSB1biBudWV2byByZWZyZXNoIHRva2VuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZnJlc2hSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nOyAvLyBUb2tlbiByb3RhdGlvbjogbnVldm8gcmVmcmVzaCB0b2tlblxuICBleHBpcmVzSW46IG51bWJlcjtcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgbG9nb3V0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ291dFJlcXVlc3Qge1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBsb2dvdXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb3V0UmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIG9idGVuZXIgcGVybWlzb3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0UGVybWlzc2lvbnNSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHJvbGVzOiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICBpc1N1cGVyQWRtaW46IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNldHVwIGRlIE1GQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFTZXR1cFJlcXVlc3Qge1xuICBtZXRob2Q6IE1GQU1ldGhvZDtcbiAgcGhvbmU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgc2V0dXAgZGUgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVNldHVwUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBjb2RlU2VudDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjb25maXJtYXIgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQUNvbmZpcm1SZXF1ZXN0IHtcbiAgY29kZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGNvbmZpcm1hciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBQ29uZmlybVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWZhRW5hYmxlZDogYm9vbGVhbjtcbiAgbWV0aG9kOiBNRkFNZXRob2Q7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGRlc2hhYmlsaXRhciBNRkEuXG4gKi9cbi8qKlxuICogQWNlcHRhIGBwYXNzd29yZGAgKGN1ZW50YSBjb24gY29udHJhc2XDsWEpIG8gYG1mYUNvZGVgIChjdWVudGEgT0F1dGgtb25seVxuICogY29uIFRPVFAgcXVlIHBydWViYSBwb3Nlc2nDs24gZGVsIHNlZ3VuZG8gZmFjdG9yKS4gVW5vIHJlcXVlcmlkby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFEaXNhYmxlUmVxdWVzdCB7XG4gIHBhc3N3b3JkPzogc3RyaW5nO1xuICBtZmFDb2RlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGRlc2hhYmlsaXRhciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBRGlzYWJsZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWZhRGlzYWJsZWQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGluaWNpYXIgcmVjdXBlcmFjacOzbiBkZSBjb250cmFzZcOxYS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3Jnb3RQYXNzd29yZFJlcXVlc3Qge1xuICBlbWFpbDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGZvcmdvdCBwYXNzd29yZCAoc2llbXByZSBpZ3VhbCBwb3Igc2VndXJpZGFkKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3Jnb3RQYXNzd29yZFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSByZXNldGVhciBjb250cmFzZcOxYSBjb24gY8OzZGlnby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNldFBhc3N3b3JkUmVxdWVzdCB7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIGNvZGU6IHN0cmluZztcbiAgbmV3UGFzc3dvcmQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSByZXNldCBwYXNzd29yZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNldFBhc3N3b3JkUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjYW1iaWFyIGNvbnRyYXNlw7FhICh1c3VhcmlvIGF1dGVudGljYWRvKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VQYXNzd29yZFJlcXVlc3Qge1xuICBjdXJyZW50UGFzc3dvcmQ6IHN0cmluZztcbiAgbmV3UGFzc3dvcmQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBjYW1iaW8gZGUgY29udHJhc2XDsWEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhbmdlUGFzc3dvcmRSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGVsaW1pbmFyIGN1ZW50YS5cbiAqIFVzdWFyaW9zIGNvbiBjb250cmFzZcOxYTogZW52aWFyIGBwYXNzd29yZGAuXG4gKiBVc3VhcmlvcyBPQXV0aCBzaW4gY29udHJhc2XDsWE6IGVudmlhciBgY29kZWAgKG9idGVuaWRvIHZpYSBzZW5kRGVsZXRlQWNjb3VudENvZGUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlbGV0ZUFjY291bnRSZXF1ZXN0IHtcbiAgcGFzc3dvcmQ/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgZW52aWFyIGPDs2RpZ28gZGUgY29uZmlybWFjacOzbiBkZSBlbGltaW5hY2nDs24gZGUgY3VlbnRhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlbmREZWxldGVBY2NvdW50Q29kZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBlbGltaW5hciBjdWVudGEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVsZXRlQWNjb3VudFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgZGVsZXRlZDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIG9idGVuZXIgcGVyZmlsIGRlbCB1c3VhcmlvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdldFByb2ZpbGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHVzZXJJZDogc3RyaW5nO1xuICBlbWFpbDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xuICAvKiogVXNlcm5hbWUvaGFuZGxlIGRlbCB1c3VhcmlvICovXG4gIGhhbmRsZT86IHN0cmluZztcbiAgLyoqIFVSTCBkZWwgYXZhdGFyIGRlbCB1c3VhcmlvICovXG4gIGF2YXRhclVybD86IHN0cmluZztcbiAgZW1haWxWZXJpZmllZDogYm9vbGVhbjtcbiAgcGhvbmVWZXJpZmllZDogYm9vbGVhbjtcbiAgbWZhRW5hYmxlZDogYm9vbGVhbjtcbiAgbWZhTWV0aG9kPzogTUZBTWV0aG9kO1xuICAvKiogVHJ1ZSBzaSBsYSBjdWVudGEgdGllbmUgY29udHJhc2XDsWEgc2V0ZWFkYSAoZmFsc2UgcGFyYSBPQXV0aC1vbmx5IHNpbiBwYXNzd29yZCkuICovXG4gIGhhc1Bhc3N3b3JkPzogYm9vbGVhbjtcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBhY3R1YWxpemFyIHBlcmZpbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVQcm9maWxlUmVxdWVzdCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGFjdHVhbGl6YXIgcGVyZmlsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVByb2ZpbGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHVwZGF0ZWQ6IGJvb2xlYW47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBVUERBVEUgQVZBVEFSXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBhY3R1YWxpemFyIGF2YXRhciBkZWwgdXN1YXJpby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVBdmF0YXJSZXF1ZXN0IHtcbiAgLyoqIFVSTCBkZWwgYXZhdGFyIGVuIEZpcmViYXNlIFN0b3JhZ2UgKi9cbiAgYXZhdGFyVXJsOiBzdHJpbmc7XG4gIC8qKiBVUkwgZGVsIHRodW1ibmFpbCAob3BjaW9uYWwpICovXG4gIGF2YXRhclRodW1ibmFpbD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBhY3R1YWxpemFyIGF2YXRhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVBdmF0YXJSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGF2YXRhclVybDogc3RyaW5nO1xuICBhdmF0YXJUaHVtYm5haWw/OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlRPUyBERSBTSU5DUk9OSVpBQ0nDk05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTV0lUQ0ggT1JHQU5JWkFUSU9OXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjYW1iaWFyIGRlIG9yZ2FuaXphY2nDs24gYWN0aXZhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN3aXRjaE9yZ1JlcXVlc3Qge1xuICBvcmdhbml6YXRpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGNhbWJpbyBkZSBvcmdhbml6YWNpw7NuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN3aXRjaE9yZ1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbjogc3RyaW5nO1xuICBhY3RpdmVPcmc6IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVWRU5UT1MgREUgU0lOQ1JPTklaQUNJw5NOXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKiogVGlwb3MgZGUgZXZlbnRvcyBkZSBzaW5jcm9uaXphY2nDs24gZW50cmUgcGVzdGHDsWFzICovXG5leHBvcnQgdHlwZSBBdXRoU3luY0V2ZW50VHlwZSA9XG4gIHwgJ0xPR0lOJ1xuICB8ICdMT0dPVVQnXG4gIHwgJ1RPS0VOX1JFRlJFU0gnXG4gIHwgJ1BFUk1JU1NJT05TX1VQREFURSdcbiAgfCAnT1JHX1NXSVRDSCc7XG5cbi8qKlxuICogRXZlbnRvIGRlIHNpbmNyb25pemFjacOzbiBlbnRyZSBwZXN0YcOxYXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFN5bmNFdmVudCB7XG4gIHR5cGU6IEF1dGhTeW5jRXZlbnRUeXBlO1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgcGF5bG9hZD86IHtcbiAgICBhY2Nlc3NUb2tlbj86IHN0cmluZztcbiAgICByZWZyZXNoVG9rZW4/OiBzdHJpbmc7IC8vIFRva2VuIHJvdGF0aW9uIHN1cHBvcnRcbiAgICBleHBpcmVzQXQ/OiBudW1iZXI7XG4gICAgYWN0aXZlT3JnPzogc3RyaW5nO1xuICB9O1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSldUIENMQUlNU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBDbGFpbXMgZGVsIEpXVCBkZSBhY2Nlc28uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSldUQ2xhaW1zIHtcbiAgLyoqIFVzZXIgSUQgKi9cbiAgdWlkOiBzdHJpbmc7XG4gIC8qKiBFbWFpbCAqL1xuICBlbWFpbDogc3RyaW5nO1xuICAvKiogU2Vzc2lvbiBJRCAqL1xuICBzaWQ/OiBzdHJpbmc7XG4gIC8qKiBVc3VhcmlvIHRpZW5lIHN1c2NyaXBjacOzbiBwcmVtaXVtIGFjdGl2YSAqL1xuICBwcmVtaXVtPzogYm9vbGVhbjtcbiAgLyoqIEFjdGl2ZSBvcmdhbml6YXRpb24gSUQgKEpXVCBjbGFpbSBcIm9yZ1wiKSAqL1xuICBvcmc/OiBzdHJpbmc7XG4gIC8qKiBJc3N1ZWQgYXQgKi9cbiAgaWF0OiBudW1iZXI7XG4gIC8qKiBFeHBpcmF0aW9uICovXG4gIGV4cDogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1RPUkFHRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBEYXRvcyBwZXJzaXN0aWRvcyBlbiBzdG9yYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0b3JlZEF1dGhTdGF0ZSB7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICByb2xlczogc3RyaW5nW107XG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcbiAgaXNTdXBlckFkbWluOiBib29sZWFuO1xuICBpc1ByZW1pdW0/OiBib29sZWFuO1xuICBleHBpcmVzQXQ/OiBudW1iZXI7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBERVZJQ0UgUkVHSVNUUkFUSU9OIChQdXNoIE5vdGlmaWNhdGlvbnMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFBsYXRhZm9ybWFzIHNvcG9ydGFkYXMgcGFyYSBwdXNoIG5vdGlmaWNhdGlvbnMuXG4gKi9cbmV4cG9ydCB0eXBlIERldmljZVBsYXRmb3JtID0gJ3dlYicgfCAnaW9zJyB8ICdhbmRyb2lkJztcblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgcmVnaXN0cmFyIHVuIGRpc3Bvc2l0aXZvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2lzdGVyRGV2aWNlUmVxdWVzdCB7XG4gIC8qKiBGQ00gdG9rZW4gZGVsIGRpc3Bvc2l0aXZvICovXG4gIHRva2VuOiBzdHJpbmc7XG4gIC8qKiBQbGF0YWZvcm1hIGRlbCBkaXNwb3NpdGl2byAqL1xuICBwbGF0Zm9ybTogRGV2aWNlUGxhdGZvcm07XG4gIC8qKiBOYXZlZ2Fkb3IgKHNvbG8gd2ViKSAqL1xuICBicm93c2VyPzogc3RyaW5nO1xuICAvKiogU2lzdGVtYSBvcGVyYXRpdm8gKi9cbiAgb3M/OiBzdHJpbmc7XG4gIC8qKiBWZXJzacOzbiBkZSBsYSBhcGxpY2FjacOzbiAqL1xuICBhcHBWZXJzaW9uPzogc3RyaW5nO1xuICAvKiogTm9tYnJlIGFtaWdhYmxlIGRlbCBkaXNwb3NpdGl2byAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKiogTWV0YWRhdGEgYWRpY2lvbmFsICovXG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSByZWdpc3RybyBkZSBkaXNwb3NpdGl2by5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlckRldmljZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgZGV2aWNlOiB7XG4gICAgZGV2aWNlSWQ6IHN0cmluZztcbiAgICB0b2tlbjogc3RyaW5nO1xuICAgIHBsYXRmb3JtOiBEZXZpY2VQbGF0Zm9ybTtcbiAgICBicm93c2VyPzogc3RyaW5nO1xuICAgIG9zPzogc3RyaW5nO1xuICAgIGxhc3RBY3RpdmU6IHN0cmluZztcbiAgICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgfTtcbiAgLyoqIHRydWUgc2kgZXMgdW4gbnVldm8gZGlzcG9zaXRpdm8sIGZhbHNlIHNpIHNlIGFjdHVhbGl6w7MgdW5vIGV4aXN0ZW50ZSAqL1xuICBpc05ldzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBSZXN1bHRhZG8gZGUgaGFiaWxpdGFyIG5vdGlmaWNhY2lvbmVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVuYWJsZU5vdGlmaWNhdGlvbnNSZXN1bHQge1xuICAvKiogU2kgc2Ugb3Rvcmdhcm9uIGxvcyBwZXJtaXNvcyAqL1xuICBncmFudGVkOiBib29sZWFuO1xuICAvKiogRkNNIHRva2VuIChzb2xvIHNpIGdyYW50ZWQ9dHJ1ZSkgKi9cbiAgdG9rZW4/OiBzdHJpbmc7XG4gIC8qKiBTaSBlbCBkaXNwb3NpdGl2byBmdWUgcmVnaXN0cmFkbyBlbiBlbCBiYWNrZW5kICovXG4gIHJlZ2lzdGVyZWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEVzdGFkbyBkZSBwZXJtaXNvcyBkZSBub3RpZmljYWNpw7NuLlxuICovXG5leHBvcnQgdHlwZSBOb3RpZmljYXRpb25QZXJtaXNzaW9uU3RhdGUgPSAnZ3JhbnRlZCcgfCAnZGVuaWVkJyB8ICdkZWZhdWx0JyB8ICd1bnN1cHBvcnRlZCc7XG5cbi8qKlxuICogUmVzdWx0YWRvIGRlbCByZWdpc3RybyBtYW51YWwgZGUgZGlzcG9zaXRpdm8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0ZXJEZXZpY2VSZXN1bHQge1xuICAvKiogU2kgZWwgZGlzcG9zaXRpdm8gZnVlIHJlZ2lzdHJhZG8gZXhpdG9zYW1lbnRlICovXG4gIHJlZ2lzdGVyZWQ6IGJvb2xlYW47XG4gIC8qKiBJRCBkZWwgZGlzcG9zaXRpdm8gKHNvbG8gc2kgcmVnaXN0ZXJlZD10cnVlKSAqL1xuICBkZXZpY2VJZD86IHN0cmluZztcbiAgLyoqIEZDTSB0b2tlbiB1c2FkbyBwYXJhIGVsIHJlZ2lzdHJvICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKiogTWVuc2FqZSBkZSBlcnJvciAoc29sbyBzaSByZWdpc3RlcmVkPWZhbHNlKSAqL1xuICBlcnJvcj86IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERFVklDRSBNQU5BR0VNRU5UIChEZXRlY2Npw7NuIGRlIGRpc3Bvc2l0aXZvcyBudWV2b3MpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEVzdGFkb3MgcG9zaWJsZXMgZGUgdW4gZGlzcG9zaXRpdm8uXG4gKi9cbmV4cG9ydCB0eXBlIERldmljZVN0YXR1cyA9ICdhY3RpdmUnIHwgJ3BlbmRpbmdfYXBwcm92YWwnIHwgJ2Jsb2NrZWQnO1xuXG4vKipcbiAqIEluZm9ybWFjacOzbiBjb21wbGV0YSBkZSB1biBkaXNwb3NpdGl2byByZWdpc3RyYWRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERldmljZUluZm8ge1xuICAvKiogSUQgw7puaWNvIGRlbCBkaXNwb3NpdGl2byAqL1xuICBkZXZpY2VJZDogc3RyaW5nO1xuICAvKiogUGxhdGFmb3JtYSBkZWwgZGlzcG9zaXRpdm8gKi9cbiAgcGxhdGZvcm06IERldmljZVBsYXRmb3JtO1xuICAvKiogTmF2ZWdhZG9yIChzb2xvIHdlYikgKi9cbiAgYnJvd3Nlcj86IHN0cmluZztcbiAgLyoqIFNpc3RlbWEgb3BlcmF0aXZvICovXG4gIG9zPzogc3RyaW5nO1xuICAvKiogTm9tYnJlIGFtaWdhYmxlIGRlbCBkaXNwb3NpdGl2byAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKiogRXN0YWRvIGFjdHVhbCBkZWwgZGlzcG9zaXRpdm8gKi9cbiAgc3RhdHVzOiBEZXZpY2VTdGF0dXM7XG4gIC8qKiBEaXJlY2Npw7NuIElQIGRlbCDDumx0aW1vIGFjY2VzbyAqL1xuICBpcEFkZHJlc3M/OiBzdHJpbmc7XG4gIC8qKiBVYmljYWNpw7NuIGdlb2dyw6FmaWNhIGFwcm94aW1hZGEgKi9cbiAgbG9jYXRpb24/OiBzdHJpbmc7XG4gIC8qKiDDmmx0aW1hIGFjdGl2aWRhZCAqL1xuICBsYXN0QWN0aXZlOiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBjcmVhY2nDs24vcmVnaXN0cm8gKi9cbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBhcHJvYmFjacOzbiAoc2kgYXBsaWNhKSAqL1xuICBhcHByb3ZlZEF0Pzogc3RyaW5nO1xuICAvKiogRmVjaGEgZGUgYmxvcXVlbyAoc2kgYXBsaWNhKSAqL1xuICBibG9ja2VkQXQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgbGlzdGFyIGRpc3Bvc2l0aXZvcyBkZWwgdXN1YXJpby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaXN0RGV2aWNlc1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgZGV2aWNlczogRGV2aWNlSW5mb1tdO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGFjY2nDs24gc29icmUgZGlzcG9zaXRpdm8gKGJsb2NrL2FwcHJvdmUvZGVsZXRlKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VBY3Rpb25SZXN1bHQge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTRVNTSU9OIE1BTkFHRU1FTlQgKEdlc3Rpw7NuIGRlIHNlc2lvbmVzIGFjdGl2YXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEluZm9ybWFjacOzbiBkZSB1bmEgc2VzacOzbiBhY3RpdmEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2Vzc2lvbkluZm8ge1xuICAvKiogSUQgw7puaWNvIGRlIGxhIHNlc2nDs24gKi9cbiAgc2Vzc2lvbklkOiBzdHJpbmc7XG4gIC8qKiBJRCBkZWwgZGlzcG9zaXRpdm8gYXNvY2lhZG8gKHNpIGV4aXN0ZSkgKi9cbiAgZGV2aWNlSWQ/OiBzdHJpbmc7XG4gIC8qKiBJbmZvcm1hY2nDs24gZGVsIGRpc3Bvc2l0aXZvIChVc2VyLUFnZW50KSAqL1xuICBkZXZpY2VJbmZvPzogc3RyaW5nO1xuICAvKiogRGlyZWNjacOzbiBJUCBkZSBsYSBzZXNpw7NuICovXG4gIGlwPzogc3RyaW5nO1xuICAvKiogVWJpY2FjacOzbiBnZW9ncsOhZmljYSBhcHJveGltYWRhICovXG4gIGxvY2F0aW9uPzogc3RyaW5nO1xuICAvKiogRmVjaGEgZGUgY3JlYWNpw7NuIGRlIGxhIHNlc2nDs24gKi9cbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBleHBpcmFjacOzbiBkZSBsYSBzZXNpw7NuICovXG4gIGV4cGlyZXNBdDogc3RyaW5nO1xuICAvKiogSW5kaWNhIHNpIGVzIGxhIHNlc2nDs24gYWN0dWFsIGRlbCB1c3VhcmlvICovXG4gIGlzQ3VycmVudDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBsaXN0YXIgc2VzaW9uZXMgYWN0aXZhcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaXN0U2Vzc2lvbnNSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHNlc3Npb25zOiBTZXNzaW9uSW5mb1tdO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHJldm9jYXIgc2VzacOzbihlcykuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmV2b2tlU2Vzc2lvbnNSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIC8qKiBOw7ptZXJvIGRlIHNlc2lvbmVzIHJldm9jYWRhcyAqL1xuICBzZXNzaW9uc1Jldm9rZWQ6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERFVklDRSBBQ1RJT04gKEFjY2lvbmVzIGRlc2RlIGVtYWlsIGRlIGFsZXJ0YSlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGVqZWN1dGFyIGFjY2nDs24gZGUgZGlzcG9zaXRpdm8gZGVzZGUgZW1haWwuXG4gKiBFbCB0b2tlbiB2aWVuZSBlbiBsYSBVUkwgZGVsIGVtYWlsIGRlIGFsZXJ0YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VBY3Rpb25SZXF1ZXN0IHtcbiAgLyoqIFRva2VuIEpXVCBkZSBhY2Npw7NuICgyNGgsIHVuIHNvbG8gdXNvKSAqL1xuICB0b2tlbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGVqZWN1dGFyIGFjY2nDs24gZGUgZGlzcG9zaXRpdm8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlQWN0aW9uUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICAvKiogU2kgbGEgYWNjacOzbiBmdWUgZWplY3V0YWRhIGV4aXRvc2FtZW50ZSAqL1xuICBzdWNjZXNzOiBib29sZWFuO1xuICAvKiogQWNjacOzbiBlamVjdXRhZGEgKHJlZnVzZSwgYXBwcm92ZSwgYmxvY2spICovXG4gIGFjdGlvbjogc3RyaW5nO1xuICAvKiogSUQgZGVsIGRpc3Bvc2l0aXZvIGFmZWN0YWRvICovXG4gIGRldmljZUlkOiBzdHJpbmc7XG4gIC8qKiBOw7ptZXJvIGRlIHNlc2lvbmVzIHJldm9jYWRhcyAoc2kgYWN0aW9uPXJlZnVzZS9ibG9jaykgKi9cbiAgc2Vzc2lvbnNSZXZva2VkPzogbnVtYmVyO1xuICAvKiogTWVuc2FqZSBkZXNjcmlwdGl2byAqL1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgdmFsaWRhciB0b2tlbiBkZSBhY2Npw7NuIChzaW4gZWplY3V0YXIpLlxuICogVXNhZG8gcGFyYSBtb3N0cmFyIGNvbmZpcm1hY2nDs24gYWwgdXN1YXJpbyBhbnRlcyBkZSBlamVjdXRhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWYWxpZGF0ZUFjdGlvblJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgLyoqIFNpIGVsIHRva2VuIGVzIHbDoWxpZG8gKi9cbiAgdmFsaWQ6IGJvb2xlYW47XG4gIC8qKiBUaXBvIGRlIGFjY2nDs24gKGRldmljZTpyZWZ1c2UsIGRldmljZTphcHByb3ZlLCBldGMuKSAqL1xuICBhY3Rpb25UeXBlPzogc3RyaW5nO1xuICAvKiogVGlwbyBkZSByZWN1cnNvIG9iamV0aXZvIChkZXZpY2UsIGRvY3VtZW50LCBldGMuKSAqL1xuICB0YXJnZXRUeXBlPzogc3RyaW5nO1xuICAvKiogSUQgZGVsIHJlY3Vyc28gb2JqZXRpdm8gKi9cbiAgdGFyZ2V0SWQ/OiBzdHJpbmc7XG4gIC8qKiBNZW5zYWplIGRlIGVycm9yIChzaSB2YWxpZD1mYWxzZSkgKi9cbiAgbWVzc2FnZT86IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE9BVVRIIChMb2dpbiBzb2NpYWwpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFByb3ZlZWRvcmVzIE9BdXRoIHNvcG9ydGFkb3MuXG4gKi9cbmV4cG9ydCB0eXBlIE9BdXRoUHJvdmlkZXIgPSAnZ29vZ2xlJyB8ICdhcHBsZScgfCAnbWljcm9zb2Z0JztcblxuLyoqXG4gKiBSZXN1bHRhZG8gZXhpdG9zbyBkZSBmbHVqbyBPQXV0aC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPQXV0aFJlc3VsdCB7XG4gIC8qKiBUb2tlbiBkZSBhY2Nlc28gSldUICovXG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIC8qKiBUb2tlbiBkZSByZWZyZXNjbyAqL1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbiAgLyoqIFRva2VuIGRlIEZpcmViYXNlIChzaSBlc3TDoSBoYWJpbGl0YWRvKSAqL1xuICBmaXJlYmFzZVRva2VuPzogc3RyaW5nO1xuICAvKiogVGllbXBvIGRlIGV4cGlyYWNpw7NuIGVuIHNlZ3VuZG9zICovXG4gIGV4cGlyZXNJbjogbnVtYmVyO1xuICAvKiogUm9sZXMgZGVsIHVzdWFyaW8gKi9cbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgLyoqIFBlcm1pc29zIGRlbCB1c3VhcmlvICovXG4gIHBlcm1pc3Npb25zPzogc3RyaW5nW107XG4gIC8qKiBJbmRpY2Egc2kgZXMgdW4gdXN1YXJpbyBudWV2byAocmVjacOpbiBjcmVhZG8pICovXG4gIGlzTmV3VXNlcj86IGJvb2xlYW47XG4gIC8qKiBJbmRpY2Egc2kgbGEgY3VlbnRhIGZ1ZSB2aW5jdWxhZGEgYSB1c3VhcmlvIGV4aXN0ZW50ZSAqL1xuICBsaW5rZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogYHRydWVgIHNpIGVsIGJhY2tlbmQgZXhpZ2UgdmVyaWZpY2FjacOzbiBNRkEgdHJhcyBlbCBPQXV0aC4gRW4gZXNlIGNhc29cbiAgICogTk8gdmllbmVuIGBhY2Nlc3NUb2tlbmAvYHJlZnJlc2hUb2tlbmAg4oCUIGVsIGZsdWpvIGNvbnRpbsO6YSBjb24gYG1mYVRva2VuYC5cbiAgICovXG4gIG1mYVJlcXVpcmVkPzogYm9vbGVhbjtcbiAgLyoqIFRva2VuIHRlbXBvcmFsIHBhcmEgZWwgY2hhbGxlbmdlIE1GQSAocHJlc2VudGUgc2kgYG1mYVJlcXVpcmVkYCkuICovXG4gIG1mYVRva2VuPzogc3RyaW5nO1xuICAvKiogTcOpdG9kbyBNRkEgY29uZmlndXJhZG8gcG9yIGVsIHVzdWFyaW8gKHByZXNlbnRlIHNpIGBtZmFSZXF1aXJlZGApLiAqL1xuICBtZmFNZXRob2Q/OiBNRkFNZXRob2Q7XG59XG5cbi8qKlxuICogRXJyb3IgZGUgT0F1dGguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT0F1dGhFcnJvciB7XG4gIC8qKiBDw7NkaWdvIGRlIGVycm9yICovXG4gIGNvZGU6IHN0cmluZztcbiAgLyoqIE1lbnNhamUgZGVzY3JpcHRpdm8gKi9cbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIERhdG9zIGVudmlhZG9zIGRlc2RlIHBvcHVwIGNhbGxiYWNrIHZpYSBwb3N0TWVzc2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPQXV0aENhbGxiYWNrRGF0YSB7XG4gIC8qKiBUaXBvIGRlIG1lbnNhamUgKi9cbiAgdHlwZTogJ29hdXRoLWNhbGxiYWNrJztcbiAgLyoqIFRva2VucyAoc2kgw6l4aXRvKSAqL1xuICB0b2tlbnM/OiBPQXV0aFJlc3VsdDtcbiAgLyoqIEVycm9yIChzaSBmYWxsw7MpICovXG4gIGVycm9yPzogT0F1dGhFcnJvcjtcbn1cblxuLyoqXG4gKiBQcm92ZWVkb3IgT0F1dGggdmluY3VsYWRvIGFsIHVzdWFyaW8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlua2VkUHJvdmlkZXIge1xuICAvKiogTm9tYnJlIGRlbCBwcm92ZWVkb3IgKi9cbiAgcHJvdmlkZXI6IE9BdXRoUHJvdmlkZXI7XG4gIC8qKiBFbWFpbCBhc29jaWFkbyBhbCBwcm92ZWVkb3IgKi9cbiAgZW1haWw6IHN0cmluZztcbiAgLyoqIE5vbWJyZSBkZWwgdXN1YXJpbyBlbiBlbCBwcm92ZWVkb3IgKi9cbiAgbmFtZT86IHN0cmluZztcbiAgLyoqIFVSTCBkZSBpbWFnZW4gZGUgcGVyZmlsICovXG4gIHBpY3R1cmU/OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSB2aW5jdWxhY2nDs24gKi9cbiAgbGlua2VkQXQ6IHN0cmluZztcbiAgLyoqIMOabHRpbWEgdmV6IHF1ZSBzZSB1c8OzIHBhcmEgbG9naW4gKi9cbiAgbGFzdFVzZWRBdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSB2ZXJpZmljYXIgc2kgdGllbmUgY29udHJhc2XDsWEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFzUGFzc3dvcmRSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGhhc1Bhc3N3b3JkOiBib29sZWFuO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSEFORExFIChVc2VybmFtZSlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGFjdHVhbGl6YXIgaGFuZGxlIChAdXNlcm5hbWUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUhhbmRsZVJlcXVlc3Qge1xuICBoYW5kbGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBhY3R1YWxpemFyIGhhbmRsZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVIYW5kbGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGhhbmRsZTogc3RyaW5nO1xuICB1cGRhdGVkOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSB2ZXJpZmljYXIgZGlzcG9uaWJpbGlkYWQgZGUgaGFuZGxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrSGFuZGxlUmVxdWVzdCB7XG4gIGhhbmRsZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHZlcmlmaWNhciBkaXNwb25pYmlsaWRhZCBkZSBoYW5kbGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2tIYW5kbGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGhhbmRsZTogc3RyaW5nO1xuICBhdmFpbGFibGU6IGJvb2xlYW47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMSU5LRUQgUFJPVklERVJTIChPQXV0aClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgb2J0ZW5lciBwcm92ZWVkb3JlcyBPQXV0aCB2aW5jdWxhZG9zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdldExpbmtlZFByb3ZpZGVyc1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgcHJvdmlkZXJzOiBMaW5rZWRQcm92aWRlcltdO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBkZXN2aW5jdWxhciB1biBwcm92ZWVkb3IgT0F1dGguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVW5saW5rUHJvdmlkZXJSZXF1ZXN0IHtcbiAgcHJvdmlkZXI6IE9BdXRoUHJvdmlkZXI7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgZGVzdmluY3VsYXIgcHJvdmVlZG9yLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVubGlua1Byb3ZpZGVyUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICB1bmxpbmtlZDogYm9vbGVhbjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFTUFJTCBDSEFOR0Ug4oCUIDMtc3RlcCBmbG93XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWF0ZUVtYWlsQ2hhbmdlUmVxdWVzdCB7XG4gIGN1cnJlbnRQYXNzd29yZDogc3RyaW5nO1xuICBuZXdFbWFpbDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRpYXRlRW1haWxDaGFuZ2VSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHBlbmRpbmdFbWFpbDogc3RyaW5nO1xuICByZXF1ZXN0TG9jYXRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maXJtRW1haWxDaGFuZ2VTdGVwMVJlcXVlc3Qge1xuICBjb2RlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybUVtYWlsQ2hhbmdlU3RlcDFSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHZlcmlmaWVkOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpcm1FbWFpbENoYW5nZVN0ZXAyUmVxdWVzdCB7XG4gIGNvZGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maXJtRW1haWxDaGFuZ2VTdGVwMlJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgc3VjY2VzczogYm9vbGVhbjtcbiAgbmV3RW1haWw6IHN0cmluZztcbn1cbiJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2F1dGgvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBNEhIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWM7SUFDM0MsZUFBZSxFQUFFLEtBQUs7SUFDdEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixZQUFZLEVBQUUsSUFBSTtJQUNsQixNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUk7SUFDZixLQUFLLEVBQUUsRUFBRTtJQUNULFdBQVcsRUFBRSxFQUFFO0lBQ2YsWUFBWSxFQUFFLEtBQUs7SUFDbkIsU0FBUyxFQUFFLEtBQUs7SUFDaEIsU0FBUyxFQUFFLElBQUk7SUFDZixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFrQkY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBb0I7SUFDaEQsUUFBUSxFQUFFLEtBQUs7SUFDZixRQUFRLEVBQUUsSUFBSTtJQUNkLE1BQU0sRUFBRSxJQUFJO0NBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGlwb3MgZSBpbnRlcmZhY2VzIHBhcmEgZWwgc2VydmljaW8gZGUgYXV0ZW50aWNhY2nDs24gZGUgVmFsdGVjaC5cbiAqIEFsaW5lYWRvcyBjb24gZWwgYmFja2VuZCBBdXRoVjIuXG4gKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENPTkZJR1VSQUNJw5NOXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIENvbmZpZ3VyYWNpw7NuIHBhcmEgZWwgc2VydmljaW8gZGUgYXV0ZW50aWNhY2nDs24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdGVjaEF1dGhDb25maWcge1xuICAvKiogVVJMIGJhc2UgZGUgbGEgQVBJIChlajogJ2h0dHBzOi8vYXBpLm15dmFsdGVjaC5jb20nKSAqL1xuICBhcGlVcmw6IHN0cmluZztcbiAgLyoqIFByZWZpam8gcGFyYSBlbmRwb2ludHMgZGUgYXV0aCAoZGVmYXVsdDogJy92Mi9hdXRoJykgKi9cbiAgYXV0aFByZWZpeD86IHN0cmluZztcbiAgLyoqIFByZWZpam8gcGFyYSBsYXMgY2xhdmVzIGRlIGxvY2FsU3RvcmFnZSAoZGVmYXVsdDogJ3ZhbHRlY2hfYXV0aF8nKSAqL1xuICBzdG9yYWdlUHJlZml4Pzogc3RyaW5nO1xuICAvKiogVGllbXBvIGFudGVzIGRlIGV4cGlyYWNpw7NuIHBhcmEgcmVmcmVzY2FyIHRva2VuIGVuIHNlZ3VuZG9zIChkZWZhdWx0OiA2MCkgKi9cbiAgcmVmcmVzaEJlZm9yZUV4cGlyeT86IG51bWJlcjtcbiAgLyoqIEhhYmlsaXRhciBzaW5jcm9uaXphY2nDs24gZW50cmUgcGVzdGHDsWFzIChkZWZhdWx0OiB0cnVlKSAqL1xuICBlbmFibGVUYWJTeW5jPzogYm9vbGVhbjtcbiAgLyoqIFJ1dGEgZGUgcmVkaXJlY2Npw7NuIGN1YW5kbyBubyBhdXRlbnRpY2FkbyAoZGVmYXVsdDogJy9sb2dpbicpICovXG4gIGxvZ2luUm91dGU/OiBzdHJpbmc7XG4gIC8qKiBSdXRhIGRlIHJlZGlyZWNjacOzbiBjdWFuZG8geWEgYXV0ZW50aWNhZG8gKGRlZmF1bHQ6ICcvJykgKi9cbiAgaG9tZVJvdXRlPzogc3RyaW5nO1xuICAvKiogUnV0YSBwYXJhIGFjY2VzbyBkZW5lZ2FkbyAoZGVmYXVsdDogJy91bmF1dGhvcml6ZWQnKSAqL1xuICB1bmF1dGhvcml6ZWRSb3V0ZT86IHN0cmluZztcbiAgLyoqIEhhYmlsaXRhciBpbnRlZ3JhY2nDs24gY29uIEZpcmViYXNlU2VydmljZSAoZGVmYXVsdDogZmFsc2UpICovXG4gIGVuYWJsZUZpcmViYXNlSW50ZWdyYXRpb24/OiBib29sZWFuO1xuICAvKiogSGFiaWxpdGFyIHJlZ2lzdHJvIGF1dG9tw6F0aWNvIGRlIGRldmljZSB0b2tlbnMgcGFyYSBwdXNoIG5vdGlmaWNhdGlvbnMgKGRlZmF1bHQ6IGZhbHNlKSAqL1xuICBlbmFibGVEZXZpY2VSZWdpc3RyYXRpb24/OiBib29sZWFuO1xuICAvKipcbiAgICogQXBwSUQgZGUgZXN0YSBhcHAgZGVudHJvIGRlbCBmYWN0b3J5IChlajogJ3Nob3djYXNlJywgJ3NpZ2lmeScsICdteXZhbHRlY2gnKS5cbiAgICogVXNhZG8gcG9yIE5vdGlmaWNhdGlvbkFjdGlvblNlcnZpY2UgcGFyYSBkZWNpZGlyIHNpIHVuYSBub3RpZmljYWNpw7NuXG4gICAqIGFwdW50YSBhIGxhIGFwcCBhY3R1YWwgbyByZXF1aWVyZSBoYW5kb2ZmIGNyb3NzLWFwcC5cbiAgICovXG4gIGFwcElkPzogc3RyaW5nO1xuICAvKipcbiAgICogTWFwYSBhcHBJZCDihpIgYmFzZVVybCBhYnNvbHV0YSBwYXJhIGhhbmRvZmYgY3Jvc3MtYXBwLlxuICAgKiBFajogeyBzaWdpZnk6ICdodHRwczovL3NpZ2lmeS5jb20nLCBteXZhbHRlY2g6ICdodHRwczovL2FwcC5teXZhbHRlY2guY29tJyB9XG4gICAqIE5vdGlmaWNhdGlvbkFjdGlvblNlcnZpY2UgdXNhIGVzdGUgbWFwIGFsIGRpc3BhcmFyIGhhbmRvZmYgYSBvdHJhIGFwcC5cbiAgICovXG4gIGFwcFVybHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogSGFiaWxpdGFyIHNpbmNyb25pemFjacOzbiByZWFjdGl2YSBkZSBwZXJtaXNvcyB2aWEgRmlyZXN0b3JlIG9uU25hcHNob3QgKGRlZmF1bHQ6IGZhbHNlKS5cbiAgICogUmVxdWllcmUgZW5hYmxlRmlyZWJhc2VJbnRlZ3JhdGlvbjogdHJ1ZS4gQ3VhbmRvIHVuIGFkbWluIGFzaWduYSBvIHJldm9jYSB1biByb2wsXG4gICAqIGVsIGZyb250ZW5kIGFjdHVhbGl6YSByb2xlcy9wZXJtaXNvcyBzaW4gcmVjYXJnYXIgbGEgcMOhZ2luYSAofjEtM3MgbGF0ZW5jaWEpLlxuICAgKiBSZXF1aWVyZSBxdWUgZWwgYmFja2VuZCB0ZW5nYSBTeW5jUkJBQ1RvRmlyZXN0b3JlIGFjdGl2by5cbiAgICovXG4gIGVuYWJsZUZpcmVzdG9yZVJCQUM/OiBib29sZWFuO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVNUQURPIERFIEFVVEVOVElDQUNJw5NOXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEVzdGFkbyBjb21wbGV0byBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRoU3RhdGUge1xuICAvKiogVXN1YXJpbyBlc3TDoSBhdXRlbnRpY2FkbyAqL1xuICBpc0F1dGhlbnRpY2F0ZWQ6IGJvb2xlYW47XG4gIC8qKiBFc3RhZG8gZGUgY2FyZ2EgaW5pY2lhbCAqL1xuICBpc0xvYWRpbmc6IGJvb2xlYW47XG4gIC8qKiBUb2tlbiBkZSBhY2Nlc28gYWN0dWFsICovXG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmcgfCBudWxsO1xuICAvKiogVG9rZW4gZGUgcmVmcmVzY28gYWN0dWFsICovXG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIElEIGRlbCB1c3VhcmlvICovXG4gIHVzZXJJZDogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIEVtYWlsIGRlbCB1c3VhcmlvICovXG4gIGVtYWlsOiBzdHJpbmcgfCBudWxsO1xuICAvKiogTm9tYnJlIGNvbXBsZXRvIGRlbCB1c3VhcmlvIChwb2JsYWRvIHRyYXMgYGdldFByb2ZpbGUoKWApICovXG4gIG5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogVXNlcm5hbWUvaGFuZGxlIChwb2JsYWRvIHRyYXMgYGdldFByb2ZpbGUoKWApICovXG4gIGhhbmRsZT86IHN0cmluZyB8IG51bGw7XG4gIC8qKiBVUkwgZGVsIGF2YXRhciAocG9ibGFkbyB0cmFzIGBnZXRQcm9maWxlKClgKSAqL1xuICBhdmF0YXJVcmw/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogVGVsw6lmb25vIChwb2JsYWRvIHRyYXMgYGdldFByb2ZpbGUoKWApICovXG4gIHBob25lPzogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIElEIGRlIGxhIG9yZ2FuaXphY2nDs24gYWN0aXZhICovXG4gIGFjdGl2ZU9yZz86IHN0cmluZyB8IG51bGw7XG4gIC8qKiBSb2xlcyBkZWwgdXN1YXJpbyAqL1xuICByb2xlczogc3RyaW5nW107XG4gIC8qKiBQZXJtaXNvcyBkZWwgdXN1YXJpbyAoZm9ybWF0byAncmVzb3VyY2U6YWN0aW9uJykgKi9cbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICAvKiogVXN1YXJpbyBlcyBzdXBlciBhZG1pbiAqL1xuICBpc1N1cGVyQWRtaW46IGJvb2xlYW47XG4gIC8qKiBVc3VhcmlvIHRpZW5lIHN1c2NyaXBjacOzbiBwcmVtaXVtIGFjdGl2YSAobm8gdmUgYWRzKSAqL1xuICBpc1ByZW1pdW06IGJvb2xlYW47XG4gIC8qKiBUaW1lc3RhbXAgZGUgZXhwaXJhY2nDs24gZGVsIGFjY2Vzc1Rva2VuIChtcykgKi9cbiAgZXhwaXJlc0F0OiBudW1iZXIgfCBudWxsO1xuICAvKiogRXJyb3IgZGUgYXV0ZW50aWNhY2nDs24gKHNpIGV4aXN0ZSkgKi9cbiAgZXJyb3I6IEF1dGhFcnJvciB8IG51bGw7XG59XG5cbi8qKlxuICogSW5mb3JtYWNpw7NuIGRlbCB1c3VhcmlvIGF1dGVudGljYWRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhVc2VyIHtcbiAgdXNlcklkOiBzdHJpbmc7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xuICAvKiogVXNlcm5hbWUvaGFuZGxlIGRlbCB1c3VhcmlvIChlajogQHZpY3RvcnYpICovXG4gIGhhbmRsZT86IHN0cmluZztcbiAgLyoqIElEIGRlIGxhIG9yZ2FuaXphY2nDs24gYWN0aXZhICovXG4gIGFjdGl2ZU9yZz86IHN0cmluZztcbiAgLyoqIFVSTCBkZWwgYXZhdGFyIGRlbCB1c3VhcmlvICovXG4gIGF2YXRhclVybD86IHN0cmluZztcbiAgcm9sZXM6IHN0cmluZ1tdO1xuICBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gIGlzU3VwZXJBZG1pbjogYm9vbGVhbjtcbiAgbWZhRW5hYmxlZD86IGJvb2xlYW47XG4gIG1mYU1ldGhvZD86IE1GQU1ldGhvZDtcbn1cblxuLyoqXG4gKiBFcnJvciBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRoRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBFc3RhZG8gaW5pY2lhbCBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGNvbnN0IElOSVRJQUxfQVVUSF9TVEFURTogQXV0aFN0YXRlID0ge1xuICBpc0F1dGhlbnRpY2F0ZWQ6IGZhbHNlLFxuICBpc0xvYWRpbmc6IHRydWUsXG4gIGFjY2Vzc1Rva2VuOiBudWxsLFxuICByZWZyZXNoVG9rZW46IG51bGwsXG4gIHVzZXJJZDogbnVsbCxcbiAgZW1haWw6IG51bGwsXG4gIGFjdGl2ZU9yZzogbnVsbCxcbiAgcm9sZXM6IFtdLFxuICBwZXJtaXNzaW9uczogW10sXG4gIGlzU3VwZXJBZG1pbjogZmFsc2UsXG4gIGlzUHJlbWl1bTogZmFsc2UsXG4gIGV4cGlyZXNBdDogbnVsbCxcbiAgZXJyb3I6IG51bGwsXG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTUZBXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKiogTcOpdG9kb3MgZGUgTUZBIHNvcG9ydGFkb3MgKi9cbmV4cG9ydCB0eXBlIE1GQU1ldGhvZCA9ICdFTUFJTCcgfCAnU01TJyB8ICdUT1RQJztcblxuLyoqXG4gKiBFc3RhZG8gZGUgTUZBIHBlbmRpZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFQZW5kaW5nU3RhdGUge1xuICByZXF1aXJlZDogYm9vbGVhbjtcbiAgbWZhVG9rZW46IHN0cmluZyB8IG51bGw7XG4gIG1ldGhvZDogTUZBTWV0aG9kIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBFc3RhZG8gaW5pY2lhbCBkZSBNRkEuXG4gKi9cbmV4cG9ydCBjb25zdCBJTklUSUFMX01GQV9TVEFURTogTUZBUGVuZGluZ1N0YXRlID0ge1xuICByZXF1aXJlZDogZmFsc2UsXG4gIG1mYVRva2VuOiBudWxsLFxuICBtZXRob2Q6IG51bGwsXG59O1xuXG4vKipcbiAqIFJlc3VsdGFkbyBkZSBzZXR1cCBkZSBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBU2V0dXBSZXN1bHQge1xuICBjb2RlU2VudDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEVzdGFkbyBkZSBNRkEgZGVsIHVzdWFyaW8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBU3RhdHVzIHtcbiAgZW5hYmxlZDogYm9vbGVhbjtcbiAgbWV0aG9kOiBNRkFNZXRob2QgfCBudWxsO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVE9UUCBNRkEgKEdvb2dsZSBBdXRoZW50aWNhdG9yKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBzZXR1cCBkZSBUT1RQLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRPVFBTZXR1cFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgLyoqIFNlY3JldG8gVE9UUCBlbiBiYXNlMzIgKHBhcmEgZW50cmFkYSBtYW51YWwpICovXG4gIHNlY3JldDogc3RyaW5nO1xuICAvKiogVVJMIHBhcmEgZ2VuZXJhciBRUiBjb2RlIChvdHBhdXRoOi8vLi4uKSAqL1xuICBxckNvZGVVcmw6IHN0cmluZztcbiAgLyoqIEPDs2RpZ29zIGRlIHJlc3BhbGRvIGRlIHVuIHNvbG8gdXNvICovXG4gIGJhY2t1cENvZGVzOiBzdHJpbmdbXTtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSB2ZXJpZmljYXIgc2V0dXAgZGUgVE9UUC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUT1RQVmVyaWZ5U2V0dXBSZXF1ZXN0IHtcbiAgLyoqIEPDs2RpZ28gVE9UUCBkZSA2IGTDrWdpdG9zICovXG4gIGNvZGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSB2ZXJpZmljYWNpw7NuIGRlIHNldHVwIFRPVFAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVE9UUFZlcmlmeVNldHVwUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBlbmFibGVkOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGRlc2hhYmlsaXRhciBUT1RQLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRPVFBEaXNhYmxlUmVxdWVzdCB7XG4gIHBhc3N3b3JkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgZGVzaGFiaWxpdGFyIFRPVFAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVE9UUERpc2FibGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGRpc2FibGVkOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgcmVnZW5lcmFyIGPDs2RpZ29zIGRlIHJlc3BhbGRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2VuZXJhdGVCYWNrdXBDb2Rlc1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgYmFja3VwQ29kZXM6IHN0cmluZ1tdO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgY2FudGlkYWQgZGUgY8OzZGlnb3MgZGUgcmVzcGFsZG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFja3VwQ29kZXNDb3VudFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgY291bnQ6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJFUVVFU1RTL1JFU1BPTlNFUyAoYWxpbmVhZG9zIGNvbiBiYWNrZW5kIEF1dGhWMilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNpZ251cCAocmVnaXN0cm8pLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ251cFJlcXVlc3Qge1xuICBlbWFpbDogc3RyaW5nO1xuICBwYXNzd29yZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHNpZ251cCAocmVnaXN0cm8pLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ251cFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgdXNlcklkOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgdmVyaWZpY2FyIGVtYWlsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeUVtYWlsUmVxdWVzdCB7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIGNvZGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSB2ZXJpZmljYWNpw7NuIGRlIGVtYWlsLlxuICogU2kgZXMgZXhpdG9zbywgaW5jbHV5ZSB0b2tlbnMgcGFyYSBhdXRvLWxvZ2luLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeUVtYWlsUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICB2ZXJpZmllZDogYm9vbGVhbjtcbiAgYWNjZXNzVG9rZW4/OiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbj86IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luPzogbnVtYmVyO1xuICB0b2tlblR5cGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHJlZW52aWFyIGPDs2RpZ28gZGUgdmVyaWZpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNlbmRDb2RlUmVxdWVzdCB7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIHR5cGU6ICdFTUFJTF9WRVJJRlknIHwgJ1BBU1NXT1JEX1JFU0VUJztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSByZWVudsOtbyBkZSBjw7NkaWdvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2VuZENvZGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHNlbnQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNpZ25pbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduaW5SZXF1ZXN0IHtcbiAgZW1haWw6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgLyoqIFBsYXRhZm9ybWEgZGVsIGRpc3Bvc2l0aXZvIChwYXJhIGRldGVjY2nDs24gZGUgbnVldm8gZGlzcG9zaXRpdm8pICovXG4gIHBsYXRmb3JtPzogRGV2aWNlUGxhdGZvcm07XG4gIC8qKiBOYXZlZ2Fkb3IgKHNvbG8gd2ViKSAqL1xuICBicm93c2VyPzogc3RyaW5nO1xuICAvKiogU2lzdGVtYSBvcGVyYXRpdm8gKi9cbiAgb3M/OiBzdHJpbmc7XG4gIC8qKiBOb21icmUgYW1pZ2FibGUgZGVsIGRpc3Bvc2l0aXZvICovXG4gIGRldmljZU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgc2lnbmluLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25pblJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgYWNjZXNzVG9rZW4/OiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbj86IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luPzogbnVtYmVyO1xuICB0b2tlblR5cGU/OiBzdHJpbmc7XG4gIG1mYVJlcXVpcmVkPzogYm9vbGVhbjtcbiAgbWZhVG9rZW4/OiBzdHJpbmc7XG4gIG1mYU1ldGhvZD86IE1GQU1ldGhvZDtcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbiAgLyoqIEluZGljYSBzaSBlbCBsb2dpbiBmdWUgZGVzZGUgdW4gZGlzcG9zaXRpdm8gbnVldm8vbm8gcmVjb25vY2lkbyAqL1xuICBpc05ld0RldmljZT86IGJvb2xlYW47XG4gIC8qKiBJRCBkZWwgZGlzcG9zaXRpdm8gdXNhZG8gcGFyYSBlbCBsb2dpbiAqL1xuICBkZXZpY2VJZD86IHN0cmluZztcbiAgLyoqIElkaW9tYSBwcmVmZXJpZG8gZGVsIHVzdWFyaW8gKHBhcmEgc2luY3Jvbml6YXIgY29uIGkxOG4pICovXG4gIGxhbmd1YWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSB2ZXJpZmljYXIgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVZlcmlmeVJlcXVlc3Qge1xuICBtZmFUb2tlbjogc3RyaW5nO1xuICBjb2RlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgdmVyaWZpY2FyIE1GQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFWZXJpZnlSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICBmaXJlYmFzZVRva2VuPzogc3RyaW5nO1xuICBleHBpcmVzSW46IG51bWJlcjtcbiAgdG9rZW5UeXBlOiBzdHJpbmc7XG4gIHJvbGVzPzogc3RyaW5nW107XG4gIHBlcm1pc3Npb25zPzogc3RyaW5nW107XG4gIC8qKiBJZGlvbWEgcHJlZmVyaWRvIGRlbCB1c3VhcmlvIChwYXJhIHNpbmNyb25pemFyIGNvbiBpMThuKSAqL1xuICBsYW5ndWFnZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgcmVmcmVzY2FyIHRva2VuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZnJlc2hSZXF1ZXN0IHtcbiAgcmVmcmVzaFRva2VuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgcmVmcmVzY2FyIHRva2VuLlxuICogSW1wbGVtZW50YSB0b2tlbiByb3RhdGlvbjogY2FkYSByZWZyZXNoIGdlbmVyYSB1biBudWV2byByZWZyZXNoIHRva2VuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZnJlc2hSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nOyAvLyBUb2tlbiByb3RhdGlvbjogbnVldm8gcmVmcmVzaCB0b2tlblxuICBleHBpcmVzSW46IG51bWJlcjtcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgbG9nb3V0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ291dFJlcXVlc3Qge1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBsb2dvdXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb3V0UmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIG9idGVuZXIgcGVybWlzb3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0UGVybWlzc2lvbnNSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHJvbGVzOiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICBpc1N1cGVyQWRtaW46IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNldHVwIGRlIE1GQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFTZXR1cFJlcXVlc3Qge1xuICBtZXRob2Q6IE1GQU1ldGhvZDtcbiAgcGhvbmU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgc2V0dXAgZGUgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVNldHVwUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBjb2RlU2VudDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjb25maXJtYXIgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQUNvbmZpcm1SZXF1ZXN0IHtcbiAgY29kZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGNvbmZpcm1hciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBQ29uZmlybVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWZhRW5hYmxlZDogYm9vbGVhbjtcbiAgbWV0aG9kOiBNRkFNZXRob2Q7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGRlc2hhYmlsaXRhciBNRkEuXG4gKi9cbi8qKlxuICogQWNlcHRhIGBwYXNzd29yZGAgKGN1ZW50YSBjb24gY29udHJhc2XDsWEpIG8gYG1mYUNvZGVgIChjdWVudGEgT0F1dGgtb25seVxuICogY29uIFRPVFAgcXVlIHBydWViYSBwb3Nlc2nDs24gZGVsIHNlZ3VuZG8gZmFjdG9yKS4gVW5vIHJlcXVlcmlkby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFEaXNhYmxlUmVxdWVzdCB7XG4gIHBhc3N3b3JkPzogc3RyaW5nO1xuICBtZmFDb2RlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGRlc2hhYmlsaXRhciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBRGlzYWJsZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWZhRGlzYWJsZWQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGluaWNpYXIgcmVjdXBlcmFjacOzbiBkZSBjb250cmFzZcOxYS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3Jnb3RQYXNzd29yZFJlcXVlc3Qge1xuICBlbWFpbDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGZvcmdvdCBwYXNzd29yZCAoc2llbXByZSBpZ3VhbCBwb3Igc2VndXJpZGFkKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3Jnb3RQYXNzd29yZFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSByZXNldGVhciBjb250cmFzZcOxYSBjb24gY8OzZGlnby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNldFBhc3N3b3JkUmVxdWVzdCB7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIGNvZGU6IHN0cmluZztcbiAgbmV3UGFzc3dvcmQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSByZXNldCBwYXNzd29yZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNldFBhc3N3b3JkUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjYW1iaWFyIGNvbnRyYXNlw7FhICh1c3VhcmlvIGF1dGVudGljYWRvKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VQYXNzd29yZFJlcXVlc3Qge1xuICBjdXJyZW50UGFzc3dvcmQ6IHN0cmluZztcbiAgbmV3UGFzc3dvcmQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBjYW1iaW8gZGUgY29udHJhc2XDsWEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhbmdlUGFzc3dvcmRSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGVsaW1pbmFyIGN1ZW50YS5cbiAqIFVzdWFyaW9zIGNvbiBjb250cmFzZcOxYTogZW52aWFyIGBwYXNzd29yZGAuXG4gKiBVc3VhcmlvcyBPQXV0aCBzaW4gY29udHJhc2XDsWE6IGVudmlhciBgY29kZWAgKG9idGVuaWRvIHZpYSBzZW5kRGVsZXRlQWNjb3VudENvZGUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlbGV0ZUFjY291bnRSZXF1ZXN0IHtcbiAgcGFzc3dvcmQ/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgZW52aWFyIGPDs2RpZ28gZGUgY29uZmlybWFjacOzbiBkZSBlbGltaW5hY2nDs24gZGUgY3VlbnRhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlbmREZWxldGVBY2NvdW50Q29kZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBlbGltaW5hciBjdWVudGEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVsZXRlQWNjb3VudFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgZGVsZXRlZDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIG9idGVuZXIgcGVyZmlsIGRlbCB1c3VhcmlvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdldFByb2ZpbGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHVzZXJJZDogc3RyaW5nO1xuICBlbWFpbDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xuICAvKiogVXNlcm5hbWUvaGFuZGxlIGRlbCB1c3VhcmlvICovXG4gIGhhbmRsZT86IHN0cmluZztcbiAgLyoqIFVSTCBkZWwgYXZhdGFyIGRlbCB1c3VhcmlvICovXG4gIGF2YXRhclVybD86IHN0cmluZztcbiAgZW1haWxWZXJpZmllZDogYm9vbGVhbjtcbiAgcGhvbmVWZXJpZmllZDogYm9vbGVhbjtcbiAgbWZhRW5hYmxlZDogYm9vbGVhbjtcbiAgbWZhTWV0aG9kPzogTUZBTWV0aG9kO1xuICAvKiogVHJ1ZSBzaSBsYSBjdWVudGEgdGllbmUgY29udHJhc2XDsWEgc2V0ZWFkYSAoZmFsc2UgcGFyYSBPQXV0aC1vbmx5IHNpbiBwYXNzd29yZCkuICovXG4gIGhhc1Bhc3N3b3JkPzogYm9vbGVhbjtcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBhY3R1YWxpemFyIHBlcmZpbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVQcm9maWxlUmVxdWVzdCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHBob25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGFjdHVhbGl6YXIgcGVyZmlsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVByb2ZpbGVSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHVwZGF0ZWQ6IGJvb2xlYW47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBVUERBVEUgQVZBVEFSXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBhY3R1YWxpemFyIGF2YXRhciBkZWwgdXN1YXJpby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVBdmF0YXJSZXF1ZXN0IHtcbiAgLyoqIFVSTCBkZWwgYXZhdGFyIGVuIEZpcmViYXNlIFN0b3JhZ2UgKi9cbiAgYXZhdGFyVXJsOiBzdHJpbmc7XG4gIC8qKiBVUkwgZGVsIHRodW1ibmFpbCAob3BjaW9uYWwpICovXG4gIGF2YXRhclRodW1ibmFpbD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBhY3R1YWxpemFyIGF2YXRhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVBdmF0YXJSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGF2YXRhclVybDogc3RyaW5nO1xuICBhdmF0YXJUaHVtYm5haWw/OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlRPUyBERSBTSU5DUk9OSVpBQ0nDk05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTV0lUQ0ggT1JHQU5JWkFUSU9OXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjYW1iaWFyIGRlIG9yZ2FuaXphY2nDs24gYWN0aXZhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN3aXRjaE9yZ1JlcXVlc3Qge1xuICBvcmdhbml6YXRpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGNhbWJpbyBkZSBvcmdhbml6YWNpw7NuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN3aXRjaE9yZ1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbjogc3RyaW5nO1xuICBhY3RpdmVPcmc6IHN0cmluZztcbiAgLyoqIE51ZXZvIEpXVCBjb24gYWN0aXZlT3JnIGFjdHVhbGl6YWRvLiBFbCBGRSBsbyBhbG1hY2VuYSBwYXJhIHF1ZSBlbFxuICAgKiAgYm9vdHN0cmFwIHBvc3QtcmVmcmVzaCB1c2UgbGEgb3JnIGNvcnJlY3RhIGVuIHZleiBkZWwgSldUIGNhY2hlYWRvLiAqL1xuICBhY2Nlc3NUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luPzogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlRPUyBERSBTSU5DUk9OSVpBQ0nDk05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKiBUaXBvcyBkZSBldmVudG9zIGRlIHNpbmNyb25pemFjacOzbiBlbnRyZSBwZXN0YcOxYXMgKi9cbmV4cG9ydCB0eXBlIEF1dGhTeW5jRXZlbnRUeXBlID1cbiAgfCAnTE9HSU4nXG4gIHwgJ0xPR09VVCdcbiAgfCAnVE9LRU5fUkVGUkVTSCdcbiAgfCAnUEVSTUlTU0lPTlNfVVBEQVRFJ1xuICB8ICdPUkdfU1dJVENIJztcblxuLyoqXG4gKiBFdmVudG8gZGUgc2luY3Jvbml6YWNpw7NuIGVudHJlIHBlc3Rhw7Fhcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRoU3luY0V2ZW50IHtcbiAgdHlwZTogQXV0aFN5bmNFdmVudFR5cGU7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xuICBwYXlsb2FkPzoge1xuICAgIGFjY2Vzc1Rva2VuPzogc3RyaW5nO1xuICAgIHJlZnJlc2hUb2tlbj86IHN0cmluZzsgLy8gVG9rZW4gcm90YXRpb24gc3VwcG9ydFxuICAgIGV4cGlyZXNBdD86IG51bWJlcjtcbiAgICBhY3RpdmVPcmc/OiBzdHJpbmc7XG4gIH07XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBKV1QgQ0xBSU1TXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIENsYWltcyBkZWwgSldUIGRlIGFjY2Vzby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBKV1RDbGFpbXMge1xuICAvKiogVXNlciBJRCAqL1xuICB1aWQ6IHN0cmluZztcbiAgLyoqIEVtYWlsICovXG4gIGVtYWlsOiBzdHJpbmc7XG4gIC8qKiBTZXNzaW9uIElEICovXG4gIHNpZD86IHN0cmluZztcbiAgLyoqIFVzdWFyaW8gdGllbmUgc3VzY3JpcGNpw7NuIHByZW1pdW0gYWN0aXZhICovXG4gIHByZW1pdW0/OiBib29sZWFuO1xuICAvKiogQWN0aXZlIG9yZ2FuaXphdGlvbiBJRCAoSldUIGNsYWltIFwib3JnXCIpICovXG4gIG9yZz86IHN0cmluZztcbiAgLyoqIElzc3VlZCBhdCAqL1xuICBpYXQ6IG51bWJlcjtcbiAgLyoqIEV4cGlyYXRpb24gKi9cbiAgZXhwOiBudW1iZXI7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTVE9SQUdFXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIERhdG9zIHBlcnNpc3RpZG9zIGVuIHN0b3JhZ2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RvcmVkQXV0aFN0YXRlIHtcbiAgYWNjZXNzVG9rZW46IHN0cmluZztcbiAgcmVmcmVzaFRva2VuOiBzdHJpbmc7XG4gIHJvbGVzOiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICBpc1N1cGVyQWRtaW46IGJvb2xlYW47XG4gIGlzUHJlbWl1bT86IGJvb2xlYW47XG4gIGV4cGlyZXNBdD86IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERFVklDRSBSRUdJU1RSQVRJT04gKFB1c2ggTm90aWZpY2F0aW9ucylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUGxhdGFmb3JtYXMgc29wb3J0YWRhcyBwYXJhIHB1c2ggbm90aWZpY2F0aW9ucy5cbiAqL1xuZXhwb3J0IHR5cGUgRGV2aWNlUGxhdGZvcm0gPSAnd2ViJyB8ICdpb3MnIHwgJ2FuZHJvaWQnO1xuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSByZWdpc3RyYXIgdW4gZGlzcG9zaXRpdm8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0ZXJEZXZpY2VSZXF1ZXN0IHtcbiAgLyoqIEZDTSB0b2tlbiBkZWwgZGlzcG9zaXRpdm8gKi9cbiAgdG9rZW46IHN0cmluZztcbiAgLyoqIFBsYXRhZm9ybWEgZGVsIGRpc3Bvc2l0aXZvICovXG4gIHBsYXRmb3JtOiBEZXZpY2VQbGF0Zm9ybTtcbiAgLyoqIE5hdmVnYWRvciAoc29sbyB3ZWIpICovXG4gIGJyb3dzZXI/OiBzdHJpbmc7XG4gIC8qKiBTaXN0ZW1hIG9wZXJhdGl2byAqL1xuICBvcz86IHN0cmluZztcbiAgLyoqIFZlcnNpw7NuIGRlIGxhIGFwbGljYWNpw7NuICovXG4gIGFwcFZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKiBOb21icmUgYW1pZ2FibGUgZGVsIGRpc3Bvc2l0aXZvICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKiBNZXRhZGF0YSBhZGljaW9uYWwgKi9cbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHJlZ2lzdHJvIGRlIGRpc3Bvc2l0aXZvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2lzdGVyRGV2aWNlUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBkZXZpY2U6IHtcbiAgICBkZXZpY2VJZDogc3RyaW5nO1xuICAgIHRva2VuOiBzdHJpbmc7XG4gICAgcGxhdGZvcm06IERldmljZVBsYXRmb3JtO1xuICAgIGJyb3dzZXI/OiBzdHJpbmc7XG4gICAgb3M/OiBzdHJpbmc7XG4gICAgbGFzdEFjdGl2ZTogc3RyaW5nO1xuICAgIGNyZWF0ZWRBdDogc3RyaW5nO1xuICB9O1xuICAvKiogdHJ1ZSBzaSBlcyB1biBudWV2byBkaXNwb3NpdGl2bywgZmFsc2Ugc2kgc2UgYWN0dWFsaXrDsyB1bm8gZXhpc3RlbnRlICovXG4gIGlzTmV3OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlc3VsdGFkbyBkZSBoYWJpbGl0YXIgbm90aWZpY2FjaW9uZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5hYmxlTm90aWZpY2F0aW9uc1Jlc3VsdCB7XG4gIC8qKiBTaSBzZSBvdG9yZ2Fyb24gbG9zIHBlcm1pc29zICovXG4gIGdyYW50ZWQ6IGJvb2xlYW47XG4gIC8qKiBGQ00gdG9rZW4gKHNvbG8gc2kgZ3JhbnRlZD10cnVlKSAqL1xuICB0b2tlbj86IHN0cmluZztcbiAgLyoqIFNpIGVsIGRpc3Bvc2l0aXZvIGZ1ZSByZWdpc3RyYWRvIGVuIGVsIGJhY2tlbmQgKi9cbiAgcmVnaXN0ZXJlZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogRXN0YWRvIGRlIHBlcm1pc29zIGRlIG5vdGlmaWNhY2nDs24uXG4gKi9cbmV4cG9ydCB0eXBlIE5vdGlmaWNhdGlvblBlcm1pc3Npb25TdGF0ZSA9ICdncmFudGVkJyB8ICdkZW5pZWQnIHwgJ2RlZmF1bHQnIHwgJ3Vuc3VwcG9ydGVkJztcblxuLyoqXG4gKiBSZXN1bHRhZG8gZGVsIHJlZ2lzdHJvIG1hbnVhbCBkZSBkaXNwb3NpdGl2by5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlckRldmljZVJlc3VsdCB7XG4gIC8qKiBTaSBlbCBkaXNwb3NpdGl2byBmdWUgcmVnaXN0cmFkbyBleGl0b3NhbWVudGUgKi9cbiAgcmVnaXN0ZXJlZDogYm9vbGVhbjtcbiAgLyoqIElEIGRlbCBkaXNwb3NpdGl2byAoc29sbyBzaSByZWdpc3RlcmVkPXRydWUpICovXG4gIGRldmljZUlkPzogc3RyaW5nO1xuICAvKiogRkNNIHRva2VuIHVzYWRvIHBhcmEgZWwgcmVnaXN0cm8gKi9cbiAgdG9rZW4/OiBzdHJpbmc7XG4gIC8qKiBNZW5zYWplIGRlIGVycm9yIChzb2xvIHNpIHJlZ2lzdGVyZWQ9ZmFsc2UpICovXG4gIGVycm9yPzogc3RyaW5nO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gREVWSUNFIE1BTkFHRU1FTlQgKERldGVjY2nDs24gZGUgZGlzcG9zaXRpdm9zIG51ZXZvcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogRXN0YWRvcyBwb3NpYmxlcyBkZSB1biBkaXNwb3NpdGl2by5cbiAqL1xuZXhwb3J0IHR5cGUgRGV2aWNlU3RhdHVzID0gJ2FjdGl2ZScgfCAncGVuZGluZ19hcHByb3ZhbCcgfCAnYmxvY2tlZCc7XG5cbi8qKlxuICogSW5mb3JtYWNpw7NuIGNvbXBsZXRhIGRlIHVuIGRpc3Bvc2l0aXZvIHJlZ2lzdHJhZG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlSW5mbyB7XG4gIC8qKiBJRCDDum5pY28gZGVsIGRpc3Bvc2l0aXZvICovXG4gIGRldmljZUlkOiBzdHJpbmc7XG4gIC8qKiBQbGF0YWZvcm1hIGRlbCBkaXNwb3NpdGl2byAqL1xuICBwbGF0Zm9ybTogRGV2aWNlUGxhdGZvcm07XG4gIC8qKiBOYXZlZ2Fkb3IgKHNvbG8gd2ViKSAqL1xuICBicm93c2VyPzogc3RyaW5nO1xuICAvKiogU2lzdGVtYSBvcGVyYXRpdm8gKi9cbiAgb3M/OiBzdHJpbmc7XG4gIC8qKiBOb21icmUgYW1pZ2FibGUgZGVsIGRpc3Bvc2l0aXZvICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKiBFc3RhZG8gYWN0dWFsIGRlbCBkaXNwb3NpdGl2byAqL1xuICBzdGF0dXM6IERldmljZVN0YXR1cztcbiAgLyoqIERpcmVjY2nDs24gSVAgZGVsIMO6bHRpbW8gYWNjZXNvICovXG4gIGlwQWRkcmVzcz86IHN0cmluZztcbiAgLyoqIFViaWNhY2nDs24gZ2VvZ3LDoWZpY2EgYXByb3hpbWFkYSAqL1xuICBsb2NhdGlvbj86IHN0cmluZztcbiAgLyoqIMOabHRpbWEgYWN0aXZpZGFkICovXG4gIGxhc3RBY3RpdmU6IHN0cmluZztcbiAgLyoqIEZlY2hhIGRlIGNyZWFjacOzbi9yZWdpc3RybyAqL1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgLyoqIEZlY2hhIGRlIGFwcm9iYWNpw7NuIChzaSBhcGxpY2EpICovXG4gIGFwcHJvdmVkQXQ/OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBibG9xdWVvIChzaSBhcGxpY2EpICovXG4gIGJsb2NrZWRBdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBsaXN0YXIgZGlzcG9zaXRpdm9zIGRlbCB1c3VhcmlvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3REZXZpY2VzUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBkZXZpY2VzOiBEZXZpY2VJbmZvW107XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgYWNjacOzbiBzb2JyZSBkaXNwb3NpdGl2byAoYmxvY2svYXBwcm92ZS9kZWxldGUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERldmljZUFjdGlvblJlc3VsdCB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNFU1NJT04gTUFOQUdFTUVOVCAoR2VzdGnDs24gZGUgc2VzaW9uZXMgYWN0aXZhcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogSW5mb3JtYWNpw7NuIGRlIHVuYSBzZXNpw7NuIGFjdGl2YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNzaW9uSW5mbyB7XG4gIC8qKiBJRCDDum5pY28gZGUgbGEgc2VzacOzbiAqL1xuICBzZXNzaW9uSWQ6IHN0cmluZztcbiAgLyoqIElEIGRlbCBkaXNwb3NpdGl2byBhc29jaWFkbyAoc2kgZXhpc3RlKSAqL1xuICBkZXZpY2VJZD86IHN0cmluZztcbiAgLyoqIEluZm9ybWFjacOzbiBkZWwgZGlzcG9zaXRpdm8gKFVzZXItQWdlbnQpICovXG4gIGRldmljZUluZm8/OiBzdHJpbmc7XG4gIC8qKiBEaXJlY2Npw7NuIElQIGRlIGxhIHNlc2nDs24gKi9cbiAgaXA/OiBzdHJpbmc7XG4gIC8qKiBVYmljYWNpw7NuIGdlb2dyw6FmaWNhIGFwcm94aW1hZGEgKi9cbiAgbG9jYXRpb24/OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBjcmVhY2nDs24gZGUgbGEgc2VzacOzbiAqL1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgLyoqIEZlY2hhIGRlIGV4cGlyYWNpw7NuIGRlIGxhIHNlc2nDs24gKi9cbiAgZXhwaXJlc0F0OiBzdHJpbmc7XG4gIC8qKiBJbmRpY2Egc2kgZXMgbGEgc2VzacOzbiBhY3R1YWwgZGVsIHVzdWFyaW8gKi9cbiAgaXNDdXJyZW50OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGxpc3RhciBzZXNpb25lcyBhY3RpdmFzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RTZXNzaW9uc1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgc2Vzc2lvbnM6IFNlc3Npb25JbmZvW107XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgcmV2b2NhciBzZXNpw7NuKGVzKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXZva2VTZXNzaW9uc1Jlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgc3VjY2VzczogYm9vbGVhbjtcbiAgLyoqIE7Dum1lcm8gZGUgc2VzaW9uZXMgcmV2b2NhZGFzICovXG4gIHNlc3Npb25zUmV2b2tlZDogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gREVWSUNFIEFDVElPTiAoQWNjaW9uZXMgZGVzZGUgZW1haWwgZGUgYWxlcnRhKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgZWplY3V0YXIgYWNjacOzbiBkZSBkaXNwb3NpdGl2byBkZXNkZSBlbWFpbC5cbiAqIEVsIHRva2VuIHZpZW5lIGVuIGxhIFVSTCBkZWwgZW1haWwgZGUgYWxlcnRhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERldmljZUFjdGlvblJlcXVlc3Qge1xuICAvKiogVG9rZW4gSldUIGRlIGFjY2nDs24gKDI0aCwgdW4gc29sbyB1c28pICovXG4gIHRva2VuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgZWplY3V0YXIgYWNjacOzbiBkZSBkaXNwb3NpdGl2by5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VBY3Rpb25SZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIC8qKiBTaSBsYSBhY2Npw7NuIGZ1ZSBlamVjdXRhZGEgZXhpdG9zYW1lbnRlICovXG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIC8qKiBBY2Npw7NuIGVqZWN1dGFkYSAocmVmdXNlLCBhcHByb3ZlLCBibG9jaykgKi9cbiAgYWN0aW9uOiBzdHJpbmc7XG4gIC8qKiBJRCBkZWwgZGlzcG9zaXRpdm8gYWZlY3RhZG8gKi9cbiAgZGV2aWNlSWQ6IHN0cmluZztcbiAgLyoqIE7Dum1lcm8gZGUgc2VzaW9uZXMgcmV2b2NhZGFzIChzaSBhY3Rpb249cmVmdXNlL2Jsb2NrKSAqL1xuICBzZXNzaW9uc1Jldm9rZWQ/OiBudW1iZXI7XG4gIC8qKiBNZW5zYWplIGRlc2NyaXB0aXZvICovXG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSB2YWxpZGFyIHRva2VuIGRlIGFjY2nDs24gKHNpbiBlamVjdXRhcikuXG4gKiBVc2FkbyBwYXJhIG1vc3RyYXIgY29uZmlybWFjacOzbiBhbCB1c3VhcmlvIGFudGVzIGRlIGVqZWN1dGFyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZhbGlkYXRlQWN0aW9uUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICAvKiogU2kgZWwgdG9rZW4gZXMgdsOhbGlkbyAqL1xuICB2YWxpZDogYm9vbGVhbjtcbiAgLyoqIFRpcG8gZGUgYWNjacOzbiAoZGV2aWNlOnJlZnVzZSwgZGV2aWNlOmFwcHJvdmUsIGV0Yy4pICovXG4gIGFjdGlvblR5cGU/OiBzdHJpbmc7XG4gIC8qKiBUaXBvIGRlIHJlY3Vyc28gb2JqZXRpdm8gKGRldmljZSwgZG9jdW1lbnQsIGV0Yy4pICovXG4gIHRhcmdldFR5cGU/OiBzdHJpbmc7XG4gIC8qKiBJRCBkZWwgcmVjdXJzbyBvYmpldGl2byAqL1xuICB0YXJnZXRJZD86IHN0cmluZztcbiAgLyoqIE1lbnNhamUgZGUgZXJyb3IgKHNpIHZhbGlkPWZhbHNlKSAqL1xuICBtZXNzYWdlPzogc3RyaW5nO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gT0FVVEggKExvZ2luIHNvY2lhbClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUHJvdmVlZG9yZXMgT0F1dGggc29wb3J0YWRvcy5cbiAqL1xuZXhwb3J0IHR5cGUgT0F1dGhQcm92aWRlciA9ICdnb29nbGUnIHwgJ2FwcGxlJyB8ICdtaWNyb3NvZnQnO1xuXG4vKipcbiAqIFJlc3VsdGFkbyBleGl0b3NvIGRlIGZsdWpvIE9BdXRoLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9BdXRoUmVzdWx0IHtcbiAgLyoqIFRva2VuIGRlIGFjY2VzbyBKV1QgKi9cbiAgYWNjZXNzVG9rZW46IHN0cmluZztcbiAgLyoqIFRva2VuIGRlIHJlZnJlc2NvICovXG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICAvKiogVG9rZW4gZGUgRmlyZWJhc2UgKHNpIGVzdMOhIGhhYmlsaXRhZG8pICovXG4gIGZpcmViYXNlVG9rZW4/OiBzdHJpbmc7XG4gIC8qKiBUaWVtcG8gZGUgZXhwaXJhY2nDs24gZW4gc2VndW5kb3MgKi9cbiAgZXhwaXJlc0luOiBudW1iZXI7XG4gIC8qKiBSb2xlcyBkZWwgdXN1YXJpbyAqL1xuICByb2xlcz86IHN0cmluZ1tdO1xuICAvKiogUGVybWlzb3MgZGVsIHVzdWFyaW8gKi9cbiAgcGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbiAgLyoqIEluZGljYSBzaSBlcyB1biB1c3VhcmlvIG51ZXZvIChyZWNpw6luIGNyZWFkbykgKi9cbiAgaXNOZXdVc2VyPzogYm9vbGVhbjtcbiAgLyoqIEluZGljYSBzaSBsYSBjdWVudGEgZnVlIHZpbmN1bGFkYSBhIHVzdWFyaW8gZXhpc3RlbnRlICovXG4gIGxpbmtlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBgdHJ1ZWAgc2kgZWwgYmFja2VuZCBleGlnZSB2ZXJpZmljYWNpw7NuIE1GQSB0cmFzIGVsIE9BdXRoLiBFbiBlc2UgY2Fzb1xuICAgKiBOTyB2aWVuZW4gYGFjY2Vzc1Rva2VuYC9gcmVmcmVzaFRva2VuYCDigJQgZWwgZmx1am8gY29udGluw7phIGNvbiBgbWZhVG9rZW5gLlxuICAgKi9cbiAgbWZhUmVxdWlyZWQ/OiBib29sZWFuO1xuICAvKiogVG9rZW4gdGVtcG9yYWwgcGFyYSBlbCBjaGFsbGVuZ2UgTUZBIChwcmVzZW50ZSBzaSBgbWZhUmVxdWlyZWRgKS4gKi9cbiAgbWZhVG9rZW4/OiBzdHJpbmc7XG4gIC8qKiBNw6l0b2RvIE1GQSBjb25maWd1cmFkbyBwb3IgZWwgdXN1YXJpbyAocHJlc2VudGUgc2kgYG1mYVJlcXVpcmVkYCkuICovXG4gIG1mYU1ldGhvZD86IE1GQU1ldGhvZDtcbn1cblxuLyoqXG4gKiBFcnJvciBkZSBPQXV0aC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPQXV0aEVycm9yIHtcbiAgLyoqIEPDs2RpZ28gZGUgZXJyb3IgKi9cbiAgY29kZTogc3RyaW5nO1xuICAvKiogTWVuc2FqZSBkZXNjcmlwdGl2byAqL1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGF0b3MgZW52aWFkb3MgZGVzZGUgcG9wdXAgY2FsbGJhY2sgdmlhIHBvc3RNZXNzYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9BdXRoQ2FsbGJhY2tEYXRhIHtcbiAgLyoqIFRpcG8gZGUgbWVuc2FqZSAqL1xuICB0eXBlOiAnb2F1dGgtY2FsbGJhY2snO1xuICAvKiogVG9rZW5zIChzaSDDqXhpdG8pICovXG4gIHRva2Vucz86IE9BdXRoUmVzdWx0O1xuICAvKiogRXJyb3IgKHNpIGZhbGzDsykgKi9cbiAgZXJyb3I/OiBPQXV0aEVycm9yO1xufVxuXG4vKipcbiAqIFByb3ZlZWRvciBPQXV0aCB2aW5jdWxhZG8gYWwgdXN1YXJpby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaW5rZWRQcm92aWRlciB7XG4gIC8qKiBOb21icmUgZGVsIHByb3ZlZWRvciAqL1xuICBwcm92aWRlcjogT0F1dGhQcm92aWRlcjtcbiAgLyoqIEVtYWlsIGFzb2NpYWRvIGFsIHByb3ZlZWRvciAqL1xuICBlbWFpbDogc3RyaW5nO1xuICAvKiogTm9tYnJlIGRlbCB1c3VhcmlvIGVuIGVsIHByb3ZlZWRvciAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKiogVVJMIGRlIGltYWdlbiBkZSBwZXJmaWwgKi9cbiAgcGljdHVyZT86IHN0cmluZztcbiAgLyoqIEZlY2hhIGRlIHZpbmN1bGFjacOzbiAqL1xuICBsaW5rZWRBdDogc3RyaW5nO1xuICAvKiogw5psdGltYSB2ZXogcXVlIHNlIHVzw7MgcGFyYSBsb2dpbiAqL1xuICBsYXN0VXNlZEF0Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHZlcmlmaWNhciBzaSB0aWVuZSBjb250cmFzZcOxYS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIYXNQYXNzd29yZFJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgaGFzUGFzc3dvcmQ6IGJvb2xlYW47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBIQU5ETEUgKFVzZXJuYW1lKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgYWN0dWFsaXphciBoYW5kbGUgKEB1c2VybmFtZSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlSGFuZGxlUmVxdWVzdCB7XG4gIGhhbmRsZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGFjdHVhbGl6YXIgaGFuZGxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUhhbmRsZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgaGFuZGxlOiBzdHJpbmc7XG4gIHVwZGF0ZWQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHZlcmlmaWNhciBkaXNwb25pYmlsaWRhZCBkZSBoYW5kbGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2tIYW5kbGVSZXF1ZXN0IHtcbiAgaGFuZGxlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgdmVyaWZpY2FyIGRpc3BvbmliaWxpZGFkIGRlIGhhbmRsZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja0hhbmRsZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgaGFuZGxlOiBzdHJpbmc7XG4gIGF2YWlsYWJsZTogYm9vbGVhbjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExJTktFRCBQUk9WSURFUlMgKE9BdXRoKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBvYnRlbmVyIHByb3ZlZWRvcmVzIE9BdXRoIHZpbmN1bGFkb3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0TGlua2VkUHJvdmlkZXJzUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBwcm92aWRlcnM6IExpbmtlZFByb3ZpZGVyW107XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGRlc3ZpbmN1bGFyIHVuIHByb3ZlZWRvciBPQXV0aC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVbmxpbmtQcm92aWRlclJlcXVlc3Qge1xuICBwcm92aWRlcjogT0F1dGhQcm92aWRlcjtcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBkZXN2aW5jdWxhciBwcm92ZWVkb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVW5saW5rUHJvdmlkZXJSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHVubGlua2VkOiBib29sZWFuO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVNQUlMIENIQU5HRSDigJQgMy1zdGVwIGZsb3dcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRpYXRlRW1haWxDaGFuZ2VSZXF1ZXN0IHtcbiAgY3VycmVudFBhc3N3b3JkOiBzdHJpbmc7XG4gIG5ld0VtYWlsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5pdGlhdGVFbWFpbENoYW5nZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgcGVuZGluZ0VtYWlsOiBzdHJpbmc7XG4gIHJlcXVlc3RMb2NhdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpcm1FbWFpbENoYW5nZVN0ZXAxUmVxdWVzdCB7XG4gIGNvZGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maXJtRW1haWxDaGFuZ2VTdGVwMVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgdmVyaWZpZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybUVtYWlsQ2hhbmdlU3RlcDJSZXF1ZXN0IHtcbiAgY29kZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpcm1FbWFpbENoYW5nZVN0ZXAyUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xuICBuZXdFbWFpbDogc3RyaW5nO1xufVxuIl19
@@ -1,6 +1,7 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
2
  import { Injectable, inject, isDevMode, signal } from '@angular/core';
3
3
  import { catchError, forkJoin, from, map, of, switchMap, throwError } from 'rxjs';
4
+ import { AuthService } from '../auth/auth.service';
4
5
  import { MarkdownArticleParserService } from '../markdown-article/markdown-article-parser.service';
5
6
  import { VALTECH_CONTENT_CONFIG } from './config';
6
7
  import * as i0 from "@angular/core";
@@ -27,6 +28,7 @@ export class ContentService {
27
28
  this.config = inject(VALTECH_CONTENT_CONFIG, { optional: true });
28
29
  this.http = inject(HttpClient);
29
30
  this.parser = inject(MarkdownArticleParserService);
31
+ this.auth = inject(AuthService, { optional: true });
30
32
  /** `true` si `provideValtechContent()` fue llamado en el bootstrap. */
31
33
  this.isConfigured = signal(!!this.config);
32
34
  /** Cache de las promesas de cada factory estática, keyed por locale. */
@@ -82,6 +84,44 @@ export class ContentService {
82
84
  invalidate() {
83
85
  this.staticCache.clear();
84
86
  }
87
+ /**
88
+ * Lista los documentos publicados de la org activa del usuario autenticado.
89
+ *
90
+ * Requiere sesión activa (`AuthService.isAuthenticated()`). El interceptor de
91
+ * auth agrega automáticamente `Authorization: Bearer {token}` a la request.
92
+ *
93
+ * @param type - Tipo de contenido (`'blog'`, `'news'`, …).
94
+ * @param options - `{ locale }` (default `'es'`).
95
+ * @returns Documentos de la org o `[]` si no hay config/sesión.
96
+ */
97
+ listForOrg(type, options = {}) {
98
+ if (!this.config?.apiUrl)
99
+ return of([]);
100
+ if (!this.auth?.isAuthenticated())
101
+ return of([]);
102
+ const locale = (options.locale ?? 'es').toLowerCase();
103
+ return this.listBackendOrg(type, locale).pipe(catchError(() => of([])));
104
+ }
105
+ /**
106
+ * Carga un documento de la org activa del usuario autenticado por `slug`.
107
+ *
108
+ * Requiere sesión activa. El interceptor de auth agrega el Bearer token.
109
+ *
110
+ * @param type - Tipo de contenido.
111
+ * @param slug - Slug del documento.
112
+ * @param options - `{ locale }` (default `'es'`).
113
+ * @returns El documento o error si no se encuentra / no hay sesión.
114
+ */
115
+ loadForOrg(type, slug, options = {}) {
116
+ if (!this.config?.apiUrl) {
117
+ return throwError(() => new Error('ContentService no está configurado.'));
118
+ }
119
+ if (!this.auth?.isAuthenticated()) {
120
+ return throwError(() => new Error('Se requiere sesión activa para cargar contenido de org.'));
121
+ }
122
+ const locale = (options.locale ?? 'es').toLowerCase();
123
+ return this.loadBackendOrg(type, slug, locale);
124
+ }
85
125
  // ===========================================================================
86
126
  // Internos
87
127
  // ===========================================================================
@@ -128,6 +168,26 @@ export class ContentService {
128
168
  .get(path)
129
169
  .pipe(map(res => res?.item ?? res));
130
170
  }
171
+ /**
172
+ * GET `{apiUrl}/v2/content/org?type=&locale=` — publicados de la org activa.
173
+ * El Bearer token lo añade el interceptor de auth automáticamente.
174
+ */
175
+ listBackendOrg(type, locale) {
176
+ const params = new URLSearchParams({ type, locale });
177
+ return this.http
178
+ .get(`${this.config.apiUrl}/v2/content/org?${params}`)
179
+ .pipe(map(res => res?.items ?? []));
180
+ }
181
+ /**
182
+ * GET `{apiUrl}/v2/content/org/{type}/{locale}/{slug}` — detalle de la org activa.
183
+ * El Bearer token lo añade el interceptor de auth automáticamente.
184
+ */
185
+ loadBackendOrg(type, slug, locale) {
186
+ const path = `${this.config.apiUrl}/v2/content/org/${type}/${locale}/${encodeURIComponent(slug)}`;
187
+ return this.http
188
+ .get(path)
189
+ .pipe(map(res => res?.item ?? res));
190
+ }
131
191
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
132
192
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentService, providedIn: 'root' }); }
133
193
  }
@@ -135,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
135
195
  type: Injectable,
136
196
  args: [{ providedIn: 'root' }]
137
197
  }], ctorParameters: () => [] });
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9jb250ZW50LXBsYXRmb3JtL2NvbnRlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RSxPQUFPLEVBQWMsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFHbEQ7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJHO0FBRUgsTUFBTSxPQUFPLGNBQWM7SUFXekI7UUFWaUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVELFNBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBRS9ELHVFQUF1RTtRQUM5RCxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTlDLHdFQUF3RTtRQUN2RCxnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFzQyxDQUFDO1FBMkY3RSxvRUFBb0U7UUFDNUQsb0JBQWUsR0FBRyxDQUFDLENBQWtCLEVBQUUsQ0FBa0IsRUFBVSxFQUFFO1lBQzNFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxX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QyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzlGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixHQUFHLENBQXdCLElBQUksQ0FBQzthQUNoQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLElBQUksSUFBSyxHQUFrQyxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDOytHQS9JVSxjQUFjO21IQUFkLGNBQWMsY0FERCxNQUFNOzs0RkFDbkIsY0FBYztrQkFEMUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0LCBpc0Rldk1vZGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY2F0Y2hFcnJvciwgZm9ya0pvaW4sIGZyb20sIG1hcCwgb2YsIHN3aXRjaE1hcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXJ0aWNsZU1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9vcmdhbmlzbXMvYXJ0aWNsZS90eXBlcyc7XG5pbXBvcnQgeyBNYXJrZG93bkFydGljbGVQYXJzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbWFya2Rvd24tYXJ0aWNsZS9tYXJrZG93bi1hcnRpY2xlLXBhcnNlci5zZXJ2aWNlJztcbmltcG9ydCB7IFZBTFRFQ0hfQ09OVEVOVF9DT05GSUcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBDb250ZW50RG9jdW1lbnQsIENvbnRlbnREb2N1bWVudFR5cGUsIENvbnRlbnRMb2FkT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIFNlcnZpY2lvIGRlIGxhIHBsYXRhZm9ybWEgZGUgY29udGVuaWRvIChBRFItMDIwIMKnMi41KS5cbiAqXG4gKiBVbmUgZG9zIG9yw61nZW5lcyAoKipow61icmlkbyoqKTpcbiAqICAtICoqRXN0w6F0aWNvKiog4oCUIGBzdGF0aWNTb3VyY2VzYCBsYXp5IHBvciBsb2NhbGUsIGdlbmVyYWRhcyBidWlsZC10aW1lLlxuICogIC0gKipCYWNrZW5kKiog4oCUIER5bmFtb0RCICsgQVBJIChgL3YyL2NvbnRlbnQqYCksIHB1YmxpY2FjacOzbiBzaW4gcmVkZXBsb3kuXG4gKlxuICogUmVnbGFzIGRlIG1lcmdlOlxuICogIC0gYGxpc3QoKWAgdW5lIGFtYm9zIG9yw61nZW5lcyBwb3IgYHR5cGVgLiBDb2xpc2nDs24gZGUgYHNsdWdgIOKGkiAqKmVzdMOhdGljb1xuICogICAgZ2FuYSoqIChjb250ZW5pZG8gY3VyYWRvKS4gT3JkZW5hIHBvciBgcHVibGlzaGVkQXRgIGRlc2MgKHNpbiBmZWNoYSBhbCBmaW5hbCkuXG4gKiAgLSBgbG9hZCgpYCByZXN1ZWx2ZSBlc3TDoXRpY28gcHJpbWVybywgY29uICoqZmFsbGJhY2sqKiBhbCBiYWNrZW5kLlxuICpcbiAqIFJlbmRlcjogYHRvQXJ0aWNsZShkb2MpYCBjb252aWVydGUgYGRvYy5ib2R5YCAoTWFya2Rvd24pIGEgYEFydGljbGVNZXRhZGF0YWBcbiAqIHbDrWEgZWwgYG1hcmtkb3duLWFydGljbGUtcGFyc2VyYCBleGlzdGVudGUg4oCUIGxhIHBhZ2UgaGFjZSBgPHZhbC1hcnRpY2xlIFtwcm9wc109XCIuLi5cIj5gLlxuICpcbiAqIFJlcXVpZXJlIGBwcm92aWRlVmFsdGVjaENvbnRlbnQoeyBhcGlVcmwsIGFwcElkLCBzdGF0aWNTb3VyY2VzPyB9KWAgZW4gYG1haW4udHNgLlxuICogU2luIHByb3ZpZGVyLCBlbCBzZXJ2aWNpbyBxdWVkYSBpbmVydGUgKGBpc0NvbmZpZ3VyZWQoKSA9PT0gZmFsc2VgKS5cbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBDb250ZW50U2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KFZBTFRFQ0hfQ09OVEVOVF9DT05GSUcsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXJzZXIgPSBpbmplY3QoTWFya2Rvd25BcnRpY2xlUGFyc2VyU2VydmljZSk7XG5cbiAgLyoqIGB0cnVlYCBzaSBgcHJvdmlkZVZhbHRlY2hDb250ZW50KClgIGZ1ZSBsbGFtYWRvIGVuIGVsIGJvb3RzdHJhcC4gKi9cbiAgcmVhZG9ubHkgaXNDb25maWd1cmVkID0gc2lnbmFsKCEhdGhpcy5jb25maWcpO1xuXG4gIC8qKiBDYWNoZSBkZSBsYXMgcHJvbWVzYXMgZGUgY2FkYSBmYWN0b3J5IGVzdMOhdGljYSwga2V5ZWQgcG9yIGxvY2FsZS4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBzdGF0aWNDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBQcm9taXNlPENvbnRlbnREb2N1bWVudFtdPj4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoIXRoaXMuY29uZmlnICYmIGlzRGV2TW9kZSgpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdbdmFsdGVjaC1jb21wb25lbnRzXSBDb250ZW50U2VydmljZTogcHJvdmlkZVZhbHRlY2hDb250ZW50KCkgbm8gZXN0w6EgZW4gbWFpbi50cy4gJyArXG4gICAgICAgICAgJ0VsIGxpc3RhZG8geSBsYSBjYXJnYSBkZSBjb250ZW5pZG8gbm8gZnVuY2lvbmFyw6FuLidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExpc3RhIGxvcyBkb2N1bWVudG9zIHB1YmxpY2Fkb3MgZGUgdW4gYHR5cGVgLCB1bmllbmRvIGVzdMOhdGljbyArIGJhY2tlbmQuXG4gICAqIENvbGlzacOzbiBkZSBgc2x1Z2Ag4oaSIGVzdMOhdGljbyBnYW5hLiBPcmRlbmFkb3MgcG9yIGBwdWJsaXNoZWRBdGAgZGVzYy5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgLSBUaXBvIGRlIGNvbnRlbmlkbyAoYCdibG9nJ2AsIGAnbmV3cydgLCDigKYpLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIGB7IGxvY2FsZSB9YCAoZGVmYXVsdCBgJ2VzJ2ApLlxuICAgKi9cbiAgbGlzdCh0eXBlOiBDb250ZW50RG9jdW1lbnRUeXBlLCBvcHRpb25zOiBDb250ZW50TG9hZE9wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8Q29udGVudERvY3VtZW50W10+IHtcbiAgICBjb25zdCBsb2NhbGUgPSAob3B0aW9ucy5sb2NhbGUgPz8gJ2VzJykudG9Mb3dlckNhc2UoKTtcblxuICAgIGNvbnN0IHN0YXRpYyQgPSBmcm9tKHRoaXMubG9hZFN0YXRpYyhsb2NhbGUpKS5waXBlKFxuICAgICAgbWFwKGRvY3MgPT4gZG9jcy5maWx0ZXIoZCA9PiBkLnR5cGUgPT09IHR5cGUgJiYgZC5zdGF0dXMgPT09ICdwdWJsaXNoZWQnKSlcbiAgICApO1xuXG4gICAgY29uc3QgYmFja2VuZCQgPSB0aGlzLmxpc3RCYWNrZW5kKHR5cGUsIGxvY2FsZSkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2Y8Q29udGVudERvY3VtZW50W10+KFtdKSlcbiAgICApO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKHsgc3RhdGljRG9jczogc3RhdGljJCwgYmFja2VuZERvY3M6IGJhY2tlbmQkIH0pLnBpcGUoXG4gICAgICBtYXAoKHsgc3RhdGljRG9jcywgYmFja2VuZERvY3MgfSkgPT4gdGhpcy5tZXJnZShzdGF0aWNEb2NzLCBiYWNrZW5kRG9jcykpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYXJnYSB1biBkb2N1bWVudG8gcG9yIGBzbHVnYDogZXN0w6F0aWNvIHByaW1lcm8sIGZhbGxiYWNrIGFsIGJhY2tlbmQuXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIC0gVGlwbyBkZSBjb250ZW5pZG8uXG4gICAqIEBwYXJhbSBzbHVnIC0gU2x1ZyBkZWwgZG9jdW1lbnRvLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIGB7IGxvY2FsZSB9YCAoZGVmYXVsdCBgJ2VzJ2ApLlxuICAgKi9cbiAgbG9hZChcbiAgICB0eXBlOiBDb250ZW50RG9jdW1lbnRUeXBlLFxuICAgIHNsdWc6IHN0cmluZyxcbiAgICBvcHRpb25zOiBDb250ZW50TG9hZE9wdGlvbnMgPSB7fVxuICApOiBPYnNlcnZhYmxlPENvbnRlbnREb2N1bWVudD4ge1xuICAgIGNvbnN0IGxvY2FsZSA9IChvcHRpb25zLmxvY2FsZSA/PyAnZXMnKS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgcmV0dXJuIGZyb20odGhpcy5sb2FkU3RhdGljKGxvY2FsZSkpLnBpcGUoXG4gICAgICBtYXAoZG9jcyA9PiBkb2NzLmZpbmQoZCA9PiBkLnR5cGUgPT09IHR5cGUgJiYgZC5zbHVnID09PSBzbHVnICYmIGQuc3RhdHVzID09PSAncHVibGlzaGVkJykpLFxuICAgICAgc3dpdGNoTWFwKHN0YXRpY0RvYyA9PlxuICAgICAgICBzdGF0aWNEb2NcbiAgICAgICAgICA/IG9mKHN0YXRpY0RvYylcbiAgICAgICAgICA6IHRoaXMubG9hZEJhY2tlbmQodHlwZSwgc2x1ZywgbG9jYWxlKS5waXBlKFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+XG4gICAgICAgICAgICAgICAgdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoYENvbnRlbmlkbyBubyBlbmNvbnRyYWRvOiAke3R5cGV9LyR7bG9jYWxlfS8ke3NsdWd9YCkpXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZpZXJ0ZSBlbCBgYm9keWAgKE1hcmtkb3duKSBkZSB1biBkb2N1bWVudG8gZW4gYEFydGljbGVNZXRhZGF0YWAgcGFyYVxuICAgKiByZW5kZXJpemFyIGNvbiBgPHZhbC1hcnRpY2xlIFtwcm9wc109XCIuLi5cIj5gLiBVc2EgZWwgcGFyc2VyIGV4aXN0ZW50ZS5cbiAgICpcbiAgICogQHBhcmFtIGRvYyAtIERvY3VtZW50byBkZSBjb250ZW5pZG8gYSByZW5kZXJpemFyLlxuICAgKiBAcGFyYW0gY29uZmlnIC0gT3ZlcnJpZGUgcGFyY2lhbCBkZSBsYSBgQXJ0aWNsZU1ldGFkYXRhYCByZXN1bHRhbnRlLlxuICAgKi9cbiAgdG9BcnRpY2xlKGRvYzogQ29udGVudERvY3VtZW50LCBjb25maWc/OiBQYXJ0aWFsPEFydGljbGVNZXRhZGF0YT4pOiBBcnRpY2xlTWV0YWRhdGEge1xuICAgIHJldHVybiB0aGlzLnBhcnNlci5wYXJzZShkb2MuYm9keSwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKiBMaW1waWEgbGEgY2FjaGUgZGUgZnVlbnRlcyBlc3TDoXRpY2FzLiBMbGFtYXIgYWwgY2FtYmlhciBkZSBsb2NhbGUgZW4gcnVudGltZS4gKi9cbiAgaW52YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRpY0NhY2hlLmNsZWFyKCk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gSW50ZXJub3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqIFVuZSBlc3TDoXRpY28gKyBiYWNrZW5kOiBlc3TDoXRpY28gZ2FuYSBwb3Igc2x1Zzsgb3JkZW4gcG9yIHB1Ymxpc2hlZEF0IGRlc2MuICovXG4gIHByaXZhdGUgbWVyZ2Uoc3RhdGljRG9jczogQ29udGVudERvY3VtZW50W10sIGJhY2tlbmREb2NzOiBDb250ZW50RG9jdW1lbnRbXSk6IENvbnRlbnREb2N1bWVudFtdIHtcbiAgICBjb25zdCBieVNsdWcgPSBuZXcgTWFwPHN0cmluZywgQ29udGVudERvY3VtZW50PigpO1xuICAgIGZvciAoY29uc3QgZG9jIG9mIGJhY2tlbmREb2NzKSBieVNsdWcuc2V0KGRvYy5zbHVnLCBkb2MpO1xuICAgIC8vIEVzdMOhdGljbyBnYW5hIOKAlCBzb2JyZXNjcmliZSBjdWFscXVpZXIgY29saXNpw7NuIGRlbCBiYWNrZW5kLlxuICAgIGZvciAoY29uc3QgZG9jIG9mIHN0YXRpY0RvY3MpIGJ5U2x1Zy5zZXQoZG9jLnNsdWcsIGRvYyk7XG4gICAgcmV0dXJuIFsuLi5ieVNsdWcudmFsdWVzKCldLnNvcnQodGhpcy5ieVB1Ymxpc2hlZERlc2MpO1xuICB9XG5cbiAgLyoqIENvbXBhcmFkb3I6IG3DoXMgcmVjaWVudGUgcHJpbWVybzsgc2luIGBwdWJsaXNoZWRBdGAgYWwgZmluYWwuICovXG4gIHByaXZhdGUgYnlQdWJsaXNoZWREZXNjID0gKGE6IENvbnRlbnREb2N1bWVudCwgYjogQ29udGVudERvY3VtZW50KTogbnVtYmVyID0+IHtcbiAgICBjb25zdCB0YSA9IGEucHVibGlzaGVkQXQgPyBEYXRlLnBhcnNlKGEucHVibGlzaGVkQXQpIDogLUluZmluaXR5O1xuICAgIGNvbnN0IHRiID0gYi5wdWJsaXNoZWRBdCA/IERhdGUucGFyc2UoYi5wdWJsaXNoZWRBdCkgOiAtSW5maW5pdHk7XG4gICAgcmV0dXJuIHRiIC0gdGE7XG4gIH07XG5cbiAgLyoqIENhcmdhICh5IGNhY2hlYSkgbG9zIGRvY3VtZW50b3MgZXN0w6F0aWNvcyBkZSB1biBsb2NhbGUsIHNpIGhheSBmYWN0b3J5LiAqL1xuICBwcml2YXRlIGxvYWRTdGF0aWMobG9jYWxlOiBzdHJpbmcpOiBQcm9taXNlPENvbnRlbnREb2N1bWVudFtdPiB7XG4gICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuY29uZmlnPy5zdGF0aWNTb3VyY2VzPy5bbG9jYWxlXTtcbiAgICBpZiAoIWZhY3RvcnkpIHJldHVybiBQcm9taXNlLnJlc29sdmUoW10pO1xuXG4gICAgY29uc3QgY2FjaGVkID0gdGhpcy5zdGF0aWNDYWNoZS5nZXQobG9jYWxlKTtcbiAgICBpZiAoY2FjaGVkKSByZXR1cm4gY2FjaGVkO1xuXG4gICAgY29uc3QgcHJvbWlzZSA9IGZhY3RvcnkoKS5jYXRjaCgoKSA9PiBbXSBhcyBDb250ZW50RG9jdW1lbnRbXSk7XG4gICAgdGhpcy5zdGF0aWNDYWNoZS5zZXQobG9jYWxlLCBwcm9taXNlKTtcbiAgICByZXR1cm4gcHJvbWlzZTtcbiAgfVxuXG4gIC8qKiBHRVQgYHthcGlVcmx9L3YyL2NvbnRlbnQ/dHlwZT0mbG9jYWxlPWAg4oCUIHNvbG8gcHVibGljYWRvcy4gKi9cbiAgcHJpdmF0ZSBsaXN0QmFja2VuZCh0eXBlOiBDb250ZW50RG9jdW1lbnRUeXBlLCBsb2NhbGU6IHN0cmluZyk6IE9ic2VydmFibGU8Q29udGVudERvY3VtZW50W10+IHtcbiAgICBpZiAoIXRoaXMuY29uZmlnPy5hcGlVcmwpIHJldHVybiBvZihbXSk7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7IHR5cGUsIGxvY2FsZSB9KTtcbiAgICBpZiAodGhpcy5jb25maWcuYXBwSWQpIHBhcmFtcy5zZXQoJ2FwcElkJywgdGhpcy5jb25maWcuYXBwSWQpO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8Q29udGVudExpc3RSZXNwb25zZT4oYCR7dGhpcy5jb25maWcuYXBpVXJsfS92Mi9jb250ZW50PyR7cGFyYW1zfWApXG4gICAgICAucGlwZShtYXAocmVzID0+IHJlcz8uaXRlbXMgPz8gW10pKTtcbiAgfVxuXG4gIC8qKiBHRVQgYHthcGlVcmx9L3YyL2NvbnRlbnQve3R5cGV9L3tsb2NhbGV9L3tzbHVnfWAg4oCUIGRldGFsbGUgcHVibGljYWRvLiAqL1xuICBwcml2YXRlIGxvYWRCYWNrZW5kKFxuICAgIHR5cGU6IENvbnRlbnREb2N1bWVudFR5cGUsXG4gICAgc2x1Zzogc3RyaW5nLFxuICAgIGxvY2FsZTogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8Q29udGVudERvY3VtZW50PiB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZz8uYXBpVXJsKSB7XG4gICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoJ0NvbnRlbnRTZXJ2aWNlIG5vIGVzdMOhIGNvbmZpZ3VyYWRvLicpKTtcbiAgICB9XG4gICAgY29uc3QgcGF0aCA9IGAke3RoaXMuY29uZmlnLmFwaVVybH0vdjIvY29udGVudC8ke3R5cGV9LyR7bG9jYWxlfS8ke2VuY29kZVVSSUNvbXBvbmVudChzbHVnKX1gO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8Q29udGVudERldGFpbFJlc3BvbnNlPihwYXRoKVxuICAgICAgLnBpcGUobWFwKHJlcyA9PiByZXM/Lml0ZW0gPz8gKHJlcyBhcyB1bmtub3duIGFzIENvbnRlbnREb2N1bWVudCkpKTtcbiAgfVxufVxuXG4vKiogU2hhcGUgZGUgbGEgcmVzcHVlc3RhIGRlIGxpc3RhZG8gZGVsIGJhY2tlbmQgKGAvdjIvY29udGVudGApLiAqL1xuaW50ZXJmYWNlIENvbnRlbnRMaXN0UmVzcG9uc2Uge1xuICBpdGVtcz86IENvbnRlbnREb2N1bWVudFtdO1xuICBvcGVyYXRpb25JZD86IHN0cmluZztcbn1cblxuLyoqIFNoYXBlIGRlIGxhIHJlc3B1ZXN0YSBkZSBkZXRhbGxlIGRlbCBiYWNrZW5kIChgL3YyL2NvbnRlbnQve3R5cGV9L3tsb2NhbGV9L3tzbHVnfWApLiAqL1xuaW50ZXJmYWNlIENvbnRlbnREZXRhaWxSZXNwb25zZSB7XG4gIGl0ZW0/OiBDb250ZW50RG9jdW1lbnQ7XG4gIG9wZXJhdGlvbklkPzogc3RyaW5nO1xufVxuIl19
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9jb250ZW50LXBsYXRmb3JtL2NvbnRlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RSxPQUFPLEVBQWMsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBR2xEOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUVILE1BQU0sT0FBTyxjQUFjO0lBWXpCO1FBWGlCLFdBQU0sR0FBRyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM1RCxTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLFdBQU0sR0FBRyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUM5QyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRWhFLHVFQUF1RTtRQUM5RCxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTlDLHdFQUF3RTtRQUN2RCxnQkFBVyxHQUFHLElB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QUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7K0dBdk5VLGNBQWM7bUhBQWQsY0FBYyxjQURELE1BQU07OzRGQUNuQixjQUFjO2tCQUQxQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QsIGlzRGV2TW9kZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjYXRjaEVycm9yLCBmb3JrSm9pbiwgZnJvbSwgbWFwLCBvZiwgc3dpdGNoTWFwLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBcnRpY2xlTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL29yZ2FuaXNtcy9hcnRpY2xlL3R5cGVzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aC9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFya2Rvd25BcnRpY2xlUGFyc2VyU2VydmljZSB9IGZyb20gJy4uL21hcmtkb3duLWFydGljbGUvbWFya2Rvd24tYXJ0aWNsZS1wYXJzZXIuc2VydmljZSc7XG5pbXBvcnQgeyBWQUxURUNIX0NPTlRFTlRfQ09ORklHIH0gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHsgQ29udGVudERvY3VtZW50LCBDb250ZW50RG9jdW1lbnRUeXBlLCBDb250ZW50TG9hZE9wdGlvbnMgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBkZSBsYSBwbGF0YWZvcm1hIGRlIGNvbnRlbmlkbyAoQURSLTAyMCDCpzIuNSkuXG4gKlxuICogVW5lIGRvcyBvcsOtZ2VuZXMgKCoqaMOtYnJpZG8qKik6XG4gKiAgLSAqKkVzdMOhdGljbyoqIOKAlCBgc3RhdGljU291cmNlc2AgbGF6eSBwb3IgbG9jYWxlLCBnZW5lcmFkYXMgYnVpbGQtdGltZS5cbiAqICAtICoqQmFja2VuZCoqIOKAlCBEeW5hbW9EQiArIEFQSSAoYC92Mi9jb250ZW50KmApLCBwdWJsaWNhY2nDs24gc2luIHJlZGVwbG95LlxuICpcbiAqIFJlZ2xhcyBkZSBtZXJnZTpcbiAqICAtIGBsaXN0KClgIHVuZSBhbWJvcyBvcsOtZ2VuZXMgcG9yIGB0eXBlYC4gQ29saXNpw7NuIGRlIGBzbHVnYCDihpIgKiplc3TDoXRpY29cbiAqICAgIGdhbmEqKiAoY29udGVuaWRvIGN1cmFkbykuIE9yZGVuYSBwb3IgYHB1Ymxpc2hlZEF0YCBkZXNjIChzaW4gZmVjaGEgYWwgZmluYWwpLlxuICogIC0gYGxvYWQoKWAgcmVzdWVsdmUgZXN0w6F0aWNvIHByaW1lcm8sIGNvbiAqKmZhbGxiYWNrKiogYWwgYmFja2VuZC5cbiAqXG4gKiBSZW5kZXI6IGB0b0FydGljbGUoZG9jKWAgY29udmllcnRlIGBkb2MuYm9keWAgKE1hcmtkb3duKSBhIGBBcnRpY2xlTWV0YWRhdGFgXG4gKiB2w61hIGVsIGBtYXJrZG93bi1hcnRpY2xlLXBhcnNlcmAgZXhpc3RlbnRlIOKAlCBsYSBwYWdlIGhhY2UgYDx2YWwtYXJ0aWNsZSBbcHJvcHNdPVwiLi4uXCI+YC5cbiAqXG4gKiBSZXF1aWVyZSBgcHJvdmlkZVZhbHRlY2hDb250ZW50KHsgYXBpVXJsLCBhcHBJZCwgc3RhdGljU291cmNlcz8gfSlgIGVuIGBtYWluLnRzYC5cbiAqIFNpbiBwcm92aWRlciwgZWwgc2VydmljaW8gcXVlZGEgaW5lcnRlIChgaXNDb25maWd1cmVkKCkgPT09IGZhbHNlYCkuXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQ29udGVudFNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdChWQUxURUNIX0NPTlRFTlRfQ09ORklHLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGFyc2VyID0gaW5qZWN0KE1hcmtkb3duQXJ0aWNsZVBhcnNlclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgLyoqIGB0cnVlYCBzaSBgcHJvdmlkZVZhbHRlY2hDb250ZW50KClgIGZ1ZSBsbGFtYWRvIGVuIGVsIGJvb3RzdHJhcC4gKi9cbiAgcmVhZG9ubHkgaXNDb25maWd1cmVkID0gc2lnbmFsKCEhdGhpcy5jb25maWcpO1xuXG4gIC8qKiBDYWNoZSBkZSBsYXMgcHJvbWVzYXMgZGUgY2FkYSBmYWN0b3J5IGVzdMOhdGljYSwga2V5ZWQgcG9yIGxvY2FsZS4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBzdGF0aWNDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBQcm9taXNlPENvbnRlbnREb2N1bWVudFtdPj4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoIXRoaXMuY29uZmlnICYmIGlzRGV2TW9kZSgpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdbdmFsdGVjaC1jb21wb25lbnRzXSBDb250ZW50U2VydmljZTogcHJvdmlkZVZhbHRlY2hDb250ZW50KCkgbm8gZXN0w6EgZW4gbWFpbi50cy4gJyArXG4gICAgICAgICAgJ0VsIGxpc3RhZG8geSBsYSBjYXJnYSBkZSBjb250ZW5pZG8gbm8gZnVuY2lvbmFyw6FuLidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExpc3RhIGxvcyBkb2N1bWVudG9zIHB1YmxpY2Fkb3MgZGUgdW4gYHR5cGVgLCB1bmllbmRvIGVzdMOhdGljbyArIGJhY2tlbmQuXG4gICAqIENvbGlzacOzbiBkZSBgc2x1Z2Ag4oaSIGVzdMOhdGljbyBnYW5hLiBPcmRlbmFkb3MgcG9yIGBwdWJsaXNoZWRBdGAgZGVzYy5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgLSBUaXBvIGRlIGNvbnRlbmlkbyAoYCdibG9nJ2AsIGAnbmV3cydgLCDigKYpLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIGB7IGxvY2FsZSB9YCAoZGVmYXVsdCBgJ2VzJ2ApLlxuICAgKi9cbiAgbGlzdCh0eXBlOiBDb250ZW50RG9jdW1lbnRUeXBlLCBvcHRpb25zOiBDb250ZW50TG9hZE9wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8Q29udGVudERvY3VtZW50W10+IHtcbiAgICBjb25zdCBsb2NhbGUgPSAob3B0aW9ucy5sb2NhbGUgPz8gJ2VzJykudG9Mb3dlckNhc2UoKTtcblxuICAgIGNvbnN0IHN0YXRpYyQgPSBmcm9tKHRoaXMubG9hZFN0YXRpYyhsb2NhbGUpKS5waXBlKFxuICAgICAgbWFwKGRvY3MgPT4gZG9jcy5maWx0ZXIoZCA9PiBkLnR5cGUgPT09IHR5cGUgJiYgZC5zdGF0dXMgPT09ICdwdWJsaXNoZWQnKSlcbiAgICApO1xuXG4gICAgY29uc3QgYmFja2VuZCQgPSB0aGlzLmxpc3RCYWNrZW5kKHR5cGUsIGxvY2FsZSkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2Y8Q29udGVudERvY3VtZW50W10+KFtdKSlcbiAgICApO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKHsgc3RhdGljRG9jczogc3RhdGljJCwgYmFja2VuZERvY3M6IGJhY2tlbmQkIH0pLnBpcGUoXG4gICAgICBtYXAoKHsgc3RhdGljRG9jcywgYmFja2VuZERvY3MgfSkgPT4gdGhpcy5tZXJnZShzdGF0aWNEb2NzLCBiYWNrZW5kRG9jcykpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYXJnYSB1biBkb2N1bWVudG8gcG9yIGBzbHVnYDogZXN0w6F0aWNvIHByaW1lcm8sIGZhbGxiYWNrIGFsIGJhY2tlbmQuXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIC0gVGlwbyBkZSBjb250ZW5pZG8uXG4gICAqIEBwYXJhbSBzbHVnIC0gU2x1ZyBkZWwgZG9jdW1lbnRvLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIGB7IGxvY2FsZSB9YCAoZGVmYXVsdCBgJ2VzJ2ApLlxuICAgKi9cbiAgbG9hZChcbiAgICB0eXBlOiBDb250ZW50RG9jdW1lbnRUeXBlLFxuICAgIHNsdWc6IHN0cmluZyxcbiAgICBvcHRpb25zOiBDb250ZW50TG9hZE9wdGlvbnMgPSB7fVxuICApOiBPYnNlcnZhYmxlPENvbnRlbnREb2N1bWVudD4ge1xuICAgIGNvbnN0IGxvY2FsZSA9IChvcHRpb25zLmxvY2FsZSA/PyAnZXMnKS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgcmV0dXJuIGZyb20odGhpcy5sb2FkU3RhdGljKGxvY2FsZSkpLnBpcGUoXG4gICAgICBtYXAoZG9jcyA9PiBkb2NzLmZpbmQoZCA9PiBkLnR5cGUgPT09IHR5cGUgJiYgZC5zbHVnID09PSBzbHVnICYmIGQuc3RhdHVzID09PSAncHVibGlzaGVkJykpLFxuICAgICAgc3dpdGNoTWFwKHN0YXRpY0RvYyA9PlxuICAgICAgICBzdGF0aWNEb2NcbiAgICAgICAgICA/IG9mKHN0YXRpY0RvYylcbiAgICAgICAgICA6IHRoaXMubG9hZEJhY2tlbmQodHlwZSwgc2x1ZywgbG9jYWxlKS5waXBlKFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+XG4gICAgICAgICAgICAgICAgdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoYENvbnRlbmlkbyBubyBlbmNvbnRyYWRvOiAke3R5cGV9LyR7bG9jYWxlfS8ke3NsdWd9YCkpXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZpZXJ0ZSBlbCBgYm9keWAgKE1hcmtkb3duKSBkZSB1biBkb2N1bWVudG8gZW4gYEFydGljbGVNZXRhZGF0YWAgcGFyYVxuICAgKiByZW5kZXJpemFyIGNvbiBgPHZhbC1hcnRpY2xlIFtwcm9wc109XCIuLi5cIj5gLiBVc2EgZWwgcGFyc2VyIGV4aXN0ZW50ZS5cbiAgICpcbiAgICogQHBhcmFtIGRvYyAtIERvY3VtZW50byBkZSBjb250ZW5pZG8gYSByZW5kZXJpemFyLlxuICAgKiBAcGFyYW0gY29uZmlnIC0gT3ZlcnJpZGUgcGFyY2lhbCBkZSBsYSBgQXJ0aWNsZU1ldGFkYXRhYCByZXN1bHRhbnRlLlxuICAgKi9cbiAgdG9BcnRpY2xlKGRvYzogQ29udGVudERvY3VtZW50LCBjb25maWc/OiBQYXJ0aWFsPEFydGljbGVNZXRhZGF0YT4pOiBBcnRpY2xlTWV0YWRhdGEge1xuICAgIHJldHVybiB0aGlzLnBhcnNlci5wYXJzZShkb2MuYm9keSwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKiBMaW1waWEgbGEgY2FjaGUgZGUgZnVlbnRlcyBlc3TDoXRpY2FzLiBMbGFtYXIgYWwgY2FtYmlhciBkZSBsb2NhbGUgZW4gcnVudGltZS4gKi9cbiAgaW52YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRpY0NhY2hlLmNsZWFyKCk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGEgbG9zIGRvY3VtZW50b3MgcHVibGljYWRvcyBkZSBsYSBvcmcgYWN0aXZhIGRlbCB1c3VhcmlvIGF1dGVudGljYWRvLlxuICAgKlxuICAgKiBSZXF1aWVyZSBzZXNpw7NuIGFjdGl2YSAoYEF1dGhTZXJ2aWNlLmlzQXV0aGVudGljYXRlZCgpYCkuIEVsIGludGVyY2VwdG9yIGRlXG4gICAqIGF1dGggYWdyZWdhIGF1dG9tw6F0aWNhbWVudGUgYEF1dGhvcml6YXRpb246IEJlYXJlciB7dG9rZW59YCBhIGxhIHJlcXVlc3QuXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlICAtIFRpcG8gZGUgY29udGVuaWRvIChgJ2Jsb2cnYCwgYCduZXdzJ2AsIOKApikuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gYHsgbG9jYWxlIH1gIChkZWZhdWx0IGAnZXMnYCkuXG4gICAqIEByZXR1cm5zIERvY3VtZW50b3MgZGUgbGEgb3JnIG8gYFtdYCBzaSBubyBoYXkgY29uZmlnL3Nlc2nDs24uXG4gICAqL1xuICBsaXN0Rm9yT3JnKFxuICAgIHR5cGU6IENvbnRlbnREb2N1bWVudFR5cGUsXG4gICAgb3B0aW9uczogQ29udGVudExvYWRPcHRpb25zID0ge31cbiAgKTogT2JzZXJ2YWJsZTxDb250ZW50RG9jdW1lbnRbXT4ge1xuICAgIGlmICghdGhpcy5jb25maWc/LmFwaVVybCkgcmV0dXJuIG9mKFtdKTtcbiAgICBpZiAoIXRoaXMuYXV0aD8uaXNBdXRoZW50aWNhdGVkKCkpIHJldHVybiBvZihbXSk7XG4gICAgY29uc3QgbG9jYWxlID0gKG9wdGlvbnMubG9jYWxlID8/ICdlcycpLnRvTG93ZXJDYXNlKCk7XG4gICAgcmV0dXJuIHRoaXMubGlzdEJhY2tlbmRPcmcodHlwZSwgbG9jYWxlKS5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2Y8Q29udGVudERvY3VtZW50W10+KFtdKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhcmdhIHVuIGRvY3VtZW50byBkZSBsYSBvcmcgYWN0aXZhIGRlbCB1c3VhcmlvIGF1dGVudGljYWRvIHBvciBgc2x1Z2AuXG4gICAqXG4gICAqIFJlcXVpZXJlIHNlc2nDs24gYWN0aXZhLiBFbCBpbnRlcmNlcHRvciBkZSBhdXRoIGFncmVnYSBlbCBCZWFyZXIgdG9rZW4uXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlICAtIFRpcG8gZGUgY29udGVuaWRvLlxuICAgKiBAcGFyYW0gc2x1ZyAgLSBTbHVnIGRlbCBkb2N1bWVudG8uXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gYHsgbG9jYWxlIH1gIChkZWZhdWx0IGAnZXMnYCkuXG4gICAqIEByZXR1cm5zIEVsIGRvY3VtZW50byBvIGVycm9yIHNpIG5vIHNlIGVuY3VlbnRyYSAvIG5vIGhheSBzZXNpw7NuLlxuICAgKi9cbiAgbG9hZEZvck9yZyhcbiAgICB0eXBlOiBDb250ZW50RG9jdW1lbnRUeXBlLFxuICAgIHNsdWc6IHN0cmluZyxcbiAgICBvcHRpb25zOiBDb250ZW50TG9hZE9wdGlvbnMgPSB7fVxuICApOiBPYnNlcnZhYmxlPENvbnRlbnREb2N1bWVudD4ge1xuICAgIGlmICghdGhpcy5jb25maWc/LmFwaVVybCkge1xuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCdDb250ZW50U2VydmljZSBubyBlc3TDoSBjb25maWd1cmFkby4nKSk7XG4gICAgfVxuICAgIGlmICghdGhpcy5hdXRoPy5pc0F1dGhlbnRpY2F0ZWQoKSkge1xuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCdTZSByZXF1aWVyZSBzZXNpw7NuIGFjdGl2YSBwYXJhIGNhcmdhciBjb250ZW5pZG8gZGUgb3JnLicpKTtcbiAgICB9XG4gICAgY29uc3QgbG9jYWxlID0gKG9wdGlvbnMubG9jYWxlID8/ICdlcycpLnRvTG93ZXJDYXNlKCk7XG4gICAgcmV0dXJuIHRoaXMubG9hZEJhY2tlbmRPcmcodHlwZSwgc2x1ZywgbG9jYWxlKTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBJbnRlcm5vc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvKiogVW5lIGVzdMOhdGljbyArIGJhY2tlbmQ6IGVzdMOhdGljbyBnYW5hIHBvciBzbHVnOyBvcmRlbiBwb3IgcHVibGlzaGVkQXQgZGVzYy4gKi9cbiAgcHJpdmF0ZSBtZXJnZShzdGF0aWNEb2NzOiBDb250ZW50RG9jdW1lbnRbXSwgYmFja2VuZERvY3M6IENvbnRlbnREb2N1bWVudFtdKTogQ29udGVudERvY3VtZW50W10ge1xuICAgIGNvbnN0IGJ5U2x1ZyA9IG5ldyBNYXA8c3RyaW5nLCBDb250ZW50RG9jdW1lbnQ+KCk7XG4gICAgZm9yIChjb25zdCBkb2Mgb2YgYmFja2VuZERvY3MpIGJ5U2x1Zy5zZXQoZG9jLnNsdWcsIGRvYyk7XG4gICAgLy8gRXN0w6F0aWNvIGdhbmEg4oCUIHNvYnJlc2NyaWJlIGN1YWxxdWllciBjb2xpc2nDs24gZGVsIGJhY2tlbmQuXG4gICAgZm9yIChjb25zdCBkb2Mgb2Ygc3RhdGljRG9jcykgYnlTbHVnLnNldChkb2Muc2x1ZywgZG9jKTtcbiAgICByZXR1cm4gWy4uLmJ5U2x1Zy52YWx1ZXMoKV0uc29ydCh0aGlzLmJ5UHVibGlzaGVkRGVzYyk7XG4gIH1cblxuICAvKiogQ29tcGFyYWRvcjogbcOhcyByZWNpZW50ZSBwcmltZXJvOyBzaW4gYHB1Ymxpc2hlZEF0YCBhbCBmaW5hbC4gKi9cbiAgcHJpdmF0ZSBieVB1Ymxpc2hlZERlc2MgPSAoYTogQ29udGVudERvY3VtZW50LCBiOiBDb250ZW50RG9jdW1lbnQpOiBudW1iZXIgPT4ge1xuICAgIGNvbnN0IHRhID0gYS5wdWJsaXNoZWRBdCA/IERhdGUucGFyc2UoYS5wdWJsaXNoZWRBdCkgOiAtSW5maW5pdHk7XG4gICAgY29uc3QgdGIgPSBiLnB1Ymxpc2hlZEF0ID8gRGF0ZS5wYXJzZShiLnB1Ymxpc2hlZEF0KSA6IC1JbmZpbml0eTtcbiAgICByZXR1cm4gdGIgLSB0YTtcbiAgfTtcblxuICAvKiogQ2FyZ2EgKHkgY2FjaGVhKSBsb3MgZG9jdW1lbnRvcyBlc3TDoXRpY29zIGRlIHVuIGxvY2FsZSwgc2kgaGF5IGZhY3RvcnkuICovXG4gIHByaXZhdGUgbG9hZFN0YXRpYyhsb2NhbGU6IHN0cmluZyk6IFByb21pc2U8Q29udGVudERvY3VtZW50W10+IHtcbiAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5jb25maWc/LnN0YXRpY1NvdXJjZXM/Lltsb2NhbGVdO1xuICAgIGlmICghZmFjdG9yeSkgcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7XG5cbiAgICBjb25zdCBjYWNoZWQgPSB0aGlzLnN0YXRpY0NhY2hlLmdldChsb2NhbGUpO1xuICAgIGlmIChjYWNoZWQpIHJldHVybiBjYWNoZWQ7XG5cbiAgICBjb25zdCBwcm9taXNlID0gZmFjdG9yeSgpLmNhdGNoKCgpID0+IFtdIGFzIENvbnRlbnREb2N1bWVudFtdKTtcbiAgICB0aGlzLnN0YXRpY0NhY2hlLnNldChsb2NhbGUsIHByb21pc2UpO1xuICAgIHJldHVybiBwcm9taXNlO1xuICB9XG5cbiAgLyoqIEdFVCBge2FwaVVybH0vdjIvY29udGVudD90eXBlPSZsb2NhbGU9YCDigJQgc29sbyBwdWJsaWNhZG9zLiAqL1xuICBwcml2YXRlIGxpc3RCYWNrZW5kKHR5cGU6IENvbnRlbnREb2N1bWVudFR5cGUsIGxvY2FsZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb250ZW50RG9jdW1lbnRbXT4ge1xuICAgIGlmICghdGhpcy5jb25maWc/LmFwaVVybCkgcmV0dXJuIG9mKFtdKTtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgdHlwZSwgbG9jYWxlIH0pO1xuICAgIGlmICh0aGlzLmNvbmZpZy5hcHBJZCkgcGFyYW1zLnNldCgnYXBwSWQnLCB0aGlzLmNvbmZpZy5hcHBJZCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxDb250ZW50TGlzdFJlc3BvbnNlPihgJHt0aGlzLmNvbmZpZy5hcGlVcmx9L3YyL2NvbnRlbnQ/JHtwYXJhbXN9YClcbiAgICAgIC5waXBlKG1hcChyZXMgPT4gcmVzPy5pdGVtcyA/PyBbXSkpO1xuICB9XG5cbiAgLyoqIEdFVCBge2FwaVVybH0vdjIvY29udGVudC97dHlwZX0ve2xvY2FsZX0ve3NsdWd9YCDigJQgZGV0YWxsZSBwdWJsaWNhZG8uICovXG4gIHByaXZhdGUgbG9hZEJhY2tlbmQoXG4gICAgdHlwZTogQ29udGVudERvY3VtZW50VHlwZSxcbiAgICBzbHVnOiBzdHJpbmcsXG4gICAgbG9jYWxlOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxDb250ZW50RG9jdW1lbnQ+IHtcbiAgICBpZiAoIXRoaXMuY29uZmlnPy5hcGlVcmwpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcignQ29udGVudFNlcnZpY2Ugbm8gZXN0w6EgY29uZmlndXJhZG8uJykpO1xuICAgIH1cbiAgICBjb25zdCBwYXRoID0gYCR7dGhpcy5jb25maWcuYXBpVXJsfS92Mi9jb250ZW50LyR7dHlwZX0vJHtsb2NhbGV9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHNsdWcpfWA7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxDb250ZW50RGV0YWlsUmVzcG9uc2U+KHBhdGgpXG4gICAgICAucGlwZShtYXAocmVzID0+IHJlcz8uaXRlbSA/PyAocmVzIGFzIHVua25vd24gYXMgQ29udGVudERvY3VtZW50KSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdFVCBge2FwaVVybH0vdjIvY29udGVudC9vcmc/dHlwZT0mbG9jYWxlPWAg4oCUIHB1YmxpY2Fkb3MgZGUgbGEgb3JnIGFjdGl2YS5cbiAgICogRWwgQmVhcmVyIHRva2VuIGxvIGHDsWFkZSBlbCBpbnRlcmNlcHRvciBkZSBhdXRoIGF1dG9tw6F0aWNhbWVudGUuXG4gICAqL1xuICBwcml2YXRlIGxpc3RCYWNrZW5kT3JnKHR5cGU6IENvbnRlbnREb2N1bWVudFR5cGUsIGxvY2FsZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb250ZW50RG9jdW1lbnRbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoeyB0eXBlLCBsb2NhbGUgfSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxDb250ZW50TGlzdFJlc3BvbnNlPihgJHt0aGlzLmNvbmZpZyEuYXBpVXJsfS92Mi9jb250ZW50L29yZz8ke3BhcmFtc31gKVxuICAgICAgLnBpcGUobWFwKHJlcyA9PiByZXM/Lml0ZW1zID8/IFtdKSk7XG4gIH1cblxuICAvKipcbiAgICogR0VUIGB7YXBpVXJsfS92Mi9jb250ZW50L29yZy97dHlwZX0ve2xvY2FsZX0ve3NsdWd9YCDigJQgZGV0YWxsZSBkZSBsYSBvcmcgYWN0aXZhLlxuICAgKiBFbCBCZWFyZXIgdG9rZW4gbG8gYcOxYWRlIGVsIGludGVyY2VwdG9yIGRlIGF1dGggYXV0b23DoXRpY2FtZW50ZS5cbiAgICovXG4gIHByaXZhdGUgbG9hZEJhY2tlbmRPcmcoXG4gICAgdHlwZTogQ29udGVudERvY3VtZW50VHlwZSxcbiAgICBzbHVnOiBzdHJpbmcsXG4gICAgbG9jYWxlOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxDb250ZW50RG9jdW1lbnQ+IHtcbiAgICBjb25zdCBwYXRoID0gYCR7dGhpcy5jb25maWchLmFwaVVybH0vdjIvY29udGVudC9vcmcvJHt0eXBlfS8ke2xvY2FsZX0vJHtlbmNvZGVVUklDb21wb25lbnQoc2x1Zyl9YDtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PENvbnRlbnREZXRhaWxSZXNwb25zZT4ocGF0aClcbiAgICAgIC5waXBlKG1hcChyZXMgPT4gcmVzPy5pdGVtID8/IChyZXMgYXMgdW5rbm93biBhcyBDb250ZW50RG9jdW1lbnQpKSk7XG4gIH1cbn1cblxuLyoqIFNoYXBlIGRlIGxhIHJlc3B1ZXN0YSBkZSBsaXN0YWRvIGRlbCBiYWNrZW5kIChgL3YyL2NvbnRlbnRgKS4gKi9cbmludGVyZmFjZSBDb250ZW50TGlzdFJlc3BvbnNlIHtcbiAgaXRlbXM/OiBDb250ZW50RG9jdW1lbnRbXTtcbiAgb3BlcmF0aW9uSWQ/OiBzdHJpbmc7XG59XG5cbi8qKiBTaGFwZSBkZSBsYSByZXNwdWVzdGEgZGUgZGV0YWxsZSBkZWwgYmFja2VuZCAoYC92Mi9jb250ZW50L3t0eXBlfS97bG9jYWxlfS97c2x1Z31gKS4gKi9cbmludGVyZmFjZSBDb250ZW50RGV0YWlsUmVzcG9uc2Uge1xuICBpdGVtPzogQ29udGVudERvY3VtZW50O1xuICBvcGVyYXRpb25JZD86IHN0cmluZztcbn1cbiJdfQ==
@@ -16,4 +16,4 @@
16
16
  * para evitar colisión. Este (flat, markdown) es el canónico de la plataforma.
17
17
  */
18
18
  export {};
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2NvbnRlbnQtcGxhdGZvcm0vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnRlbnQgUGxhdGZvcm0g4oCUIG1vZGVsbyBjYW7Ds25pY28gZGUgZG9jdW1lbnRvIGRlIGNvbnRlbmlkby5cbiAqXG4gKiBBbGluZWFkbyBjb24gQURSLTAyMCDCpzIuMS4gRXMgZWwgY29udHJhdG8gY29tcGFydGlkbyBlbnRyZTpcbiAqICAtIEJhY2tlbmQgKHNlcnZpY2lvIGBjb250ZW50L2Ag4oCUIER5bmFtb0RCIHRhYmxhIGBjb250ZW50YCkuXG4gKiAgLSBQaXBlbGluZSBlc3TDoXRpY28gKGBzY3JpcHRzL2J1aWxkLWNvbnRlbnQudHNgIOKGkiBgY29udGVudC1zdG9yZS57bG9jYWxlfS50c2ApLlxuICogIC0gRXN0YSBsaWIgKGBDb250ZW50U2VydmljZWAgKyBgcHJvdmlkZVZhbHRlY2hDb250ZW50YCkuXG4gKiAgLSBXZWIgKGAvYmxvZ2AsIGAvbmV3c2AsIOKApikuXG4gKlxuICogTW9kZWxvICoqdW5pZmljYWRvKiogY29uIGRpc2NyaW1pbmFkb3IgYHR5cGVgIOKAlCBhZ3JlZ2FyIHVuIHRpcG8gZGUgY29udGVuaWRvXG4gKiBOTyByZXF1aWVyZSB0b2NhciBiYWNrZW5kIG5pIGxpYi4gRWwgYGJvZHlgIGVzIE1hcmtkb3duIHBsYW5vLCByZW5kZXJpemFkbyBlblxuICogbGEgd2ViIHbDrWEgZWwgYG1hcmtkb3duLWFydGljbGUtcGFyc2VyYCBleGlzdGVudGUgKGBzdHJpbmcgTUQg4oaSIEFydGljbGVNZXRhZGF0YWApLlxuICpcbiAqIE5PVEE6IGV4aXN0ZSB1biB0aXBvIGhvbcOzbmltbyBgQ29udGVudERvY3VtZW50PFQ+YCAoYmxvY2stYmFzZWQsIGJ1aWxkZXIpIGVuXG4gKiBgc2VydmljZXMvY29udGVudC9gLCByZWV4cG9ydGFkbyBwb3IgZWwgcHVibGljLWFwaSBjb21vIGBDb250ZW50QnVpbGRlckRvY3VtZW50YFxuICogcGFyYSBldml0YXIgY29saXNpw7NuLiBFc3RlIChmbGF0LCBtYXJrZG93bikgZXMgZWwgY2Fuw7NuaWNvIGRlIGxhIHBsYXRhZm9ybWEuXG4gKi9cblxuLyoqXG4gKiBUaXBvIGRlIGNvbnRlbmlkbyAoZGlzY3JpbWluYWRvcikuIEV4dGVuc2libGUg4oCUIGFncmVnYXIgdW4gdmFsb3Igbm8gaW1wYWN0YVxuICogYmFja2VuZCBuaSBsaWI7IHNvbG8gbGEgd2ViIGRlY2lkZSBxdcOpIHJ1dGFzIGV4cG9uZXIuXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRlbnREb2N1bWVudFR5cGUgPSAnYmxvZycgfCAnbmV3cycgfCAnYXJ0aWNsZScgfCAnZG9jdW1lbnRhdGlvbicgfCAoc3RyaW5nICYge30pO1xuXG4vKipcbiAqIEVzdGFkbyBkZSBwdWJsaWNhY2nDs24gZGVsIGRvY3VtZW50by5cbiAqL1xuZXhwb3J0IHR5cGUgQ29udGVudERvY3VtZW50U3RhdHVzID0gJ2RyYWZ0JyB8ICdwdWJsaXNoZWQnIHwgJ2FyY2hpdmVkJztcblxuLyoqXG4gKiBPcmlnZW4gZGVsIGRvY3VtZW50byDigJQgbWFyY2EgZGUgbGEgbmF0dXJhbGV6YSBow61icmlkYSBkZWwgcGlwZWxpbmUuXG4gKiAgLSBgc3RhdGljYDogYXV0b3LDrWEgZW4gcmVwbywgYnVpbGQtdGltZSAoY29udGVuaWRvIGN1cmFkbyBkZSBsYSBlbXByZXNhKS5cbiAqICAtIGBiYWNrZW5kYDogRHluYW1vREIgKyBBUEkgKHB1YmxpY2FjacOzbiBzaW4gcmVkZXBsb3kgLyBlZGl0b3JlcykuXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRlbnREb2N1bWVudFNvdXJjZSA9ICdzdGF0aWMnIHwgJ2JhY2tlbmQnO1xuXG4vKipcbiAqIEF1dG9yIGRlIHVuIGRvY3VtZW50byBkZSBjb250ZW5pZG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudERvY3VtZW50QXV0aG9yIHtcbiAgLyoqIE5vbWJyZSB2aXNpYmxlIGRlbCBhdXRvci4gKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogVVJMIGRlbCBhdmF0YXIgZGVsIGF1dG9yLiAqL1xuICBhdmF0YXI/OiBzdHJpbmc7XG4gIC8qKiBSb2wgbyBjYXJnbyBkZWwgYXV0b3IuICovXG4gIHJvbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRG9jdW1lbnRvIGRlIGNvbnRlbmlkbyB1bmlmaWNhZG8gKGNhbsOzbmljbyDigJQgQURSLTAyMCDCpzIuMSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudERvY3VtZW50IHtcbiAgLyoqIElkZW50aWZpY2Fkb3Igw7puaWNvIOKAlCB1dWlkIChiYWNrZW5kKSBvIGBzdGF0aWM6e3R5cGV9Ontsb2NhbGV9OntzbHVnfWAgKGVzdMOhdGljbykuICovXG4gIGlkOiBzdHJpbmc7XG4gIC8qKiBBcHBJRCBkZWwgcHJvZHVjdG8gZHVlw7FvIGRlbCBkb2N1bWVudG8uICovXG4gIGFwcElkOiBzdHJpbmc7XG4gIC8qKiBUaXBvIGRlIGNvbnRlbmlkbyAoZGlzY3JpbWluYWRvcikuICovXG4gIHR5cGU6IENvbnRlbnREb2N1bWVudFR5cGU7XG4gIC8qKiBTbHVnIOKAlCDDum5pY28gcG9yIChhcHBJZCwgdHlwZSwgbG9jYWxlKS4gKi9cbiAgc2x1Zzogc3RyaW5nO1xuICAvKiogTG9jYWxlIGRlbCBkb2N1bWVudG8gKGAnZXMnYCB8IGAnZW4nYCB8IOKApikuICovXG4gIGxvY2FsZTogc3RyaW5nO1xuICAvKiogVMOtdHVsbyBkZWwgZG9jdW1lbnRvLiAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKiogUmVzdW1lbiAvIGV4dHJhY3RvIHBhcmEgbGlzdGFkb3MgeSBTRU8uICovXG4gIGV4Y2VycHQ6IHN0cmluZztcbiAgLyoqIFVSTCBkZSBsYSBpbWFnZW4gZGUgcG9ydGFkYSAoUzMgdsOtYSBzdG9yYWdlIHNlcnZpY2UpLiAqL1xuICBjb3ZlckltYWdlPzogc3RyaW5nO1xuICAvKiogQ3VlcnBvIGVuIE1hcmtkb3duIOKAlCByZW5kZXIgdsOtYSBtYXJrZG93bi1hcnRpY2xlLXBhcnNlci4gKi9cbiAgYm9keTogc3RyaW5nO1xuICAvKiogQXV0b3IgZGVsIGRvY3VtZW50by4gKi9cbiAgYXV0aG9yPzogQ29udGVudERvY3VtZW50QXV0aG9yO1xuICAvKiogRXRpcXVldGFzIHBhcmEgY2F0ZWdvcml6YWNpw7NuLiAqL1xuICB0YWdzPzogc3RyaW5nW107XG4gIC8qKiBDYXRlZ29yw61hIHByaW1hcmlhLiAqL1xuICBjYXRlZ29yeT86IHN0cmluZztcbiAgLyoqIEVzdGFkbyBkZSBwdWJsaWNhY2nDs24uICovXG4gIHN0YXR1czogQ29udGVudERvY3VtZW50U3RhdHVzO1xuICAvKiogT3JpZ2VuIGRlbCBkb2N1bWVudG8gKG1hcmNhIGjDrWJyaWRhKS4gKi9cbiAgc291cmNlOiBDb250ZW50RG9jdW1lbnRTb3VyY2U7XG4gIC8qKiBGZWNoYSBkZSBwdWJsaWNhY2nDs24gKElTTyA4NjAxKS4gKi9cbiAgcHVibGlzaGVkQXQ/OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBjcmVhY2nDs24gKElTTyA4NjAxKS4gKi9cbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSDDumx0aW1hIGFjdHVhbGl6YWNpw7NuIChJU08gODYwMSkuICovXG4gIHVwZGF0ZWRBdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBGYWN0b3J5IGxhenkgZGUgZG9jdW1lbnRvcyBlc3TDoXRpY29zIHBhcmEgdW4gbG9jYWxlLiBHZW5lcmFkYSBidWlsZC10aW1lIHBvclxuICogYHNjcmlwdHMvYnVpbGQtY29udGVudC50c2AuIFNlIHVzYSBjb24gYGltcG9ydCgpYCBkaW7DoW1pY28gcGFyYSBxdWUgY2FkYSBsb2NhbGVcbiAqIHF1ZWRlIGNvZGUtc3BsaXQgKGlndWFsIHBhdHLDs24gcXVlIGBMZWdhbENvbnRlbnRGYWN0b3J5YCkuXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRlbnRTdGF0aWNGYWN0b3J5ID0gKCkgPT4gUHJvbWlzZTxDb250ZW50RG9jdW1lbnRbXT47XG5cbi8qKlxuICogQ29uZmlndXJhY2nDs24gZGUgYHByb3ZpZGVWYWx0ZWNoQ29udGVudGAgKEFEUi0wMjAgwqcyLjUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZhbHRlY2hDb250ZW50Q29uZmlnIHtcbiAgLyoqIEJhc2UgVVJMIGRlIGxhIEFQSSBiYWNrZW5kIChzaW4gdHJhaWxpbmcgc2xhc2gpLiBFai4gYGVudmlyb25tZW50LmFwaVVybGAuICovXG4gIGFwaVVybDogc3RyaW5nO1xuICAvKiogQXBwSUQgZGVsIHByb2R1Y3RvIOKAlCBzZSBlbnbDrWEgY29tbyBxdWVyeSBwYXJhbSBhbCBiYWNrZW5kLiAqL1xuICBhcHBJZDogc3RyaW5nO1xuICAvKipcbiAgICogRnVlbnRlcyBlc3TDoXRpY2FzIGxhenkga2V5ZWQgcG9yIGxvY2FsZSAoZ2VuZXJhZGFzIGJ1aWxkLXRpbWUpLiBPcGNpb25hbCDigJRcbiAgICogc2kgbm8gaGF5LCBlbCBzZXJ2aWNpbyBvcGVyYSBzb2xvIGNvbnRyYSBlbCBiYWNrZW5kLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBzdGF0aWNTb3VyY2VzOiB7XG4gICAqICAgZXM6ICgpID0+IGltcG9ydCgnLi9hcHAvZ2VuZXJhdGVkL2NvbnRlbnQtc3RvcmUuZXMnKS50aGVuKG0gPT4gbS5DT05URU5UX1NUT1JFX0VTKSxcbiAgICogICBlbjogKCkgPT4gaW1wb3J0KCcuL2FwcC9nZW5lcmF0ZWQvY29udGVudC1zdG9yZS5lbicpLnRoZW4obSA9PiBtLkNPTlRFTlRfU1RPUkVfRU4pLFxuICAgKiB9XG4gICAqL1xuICBzdGF0aWNTb3VyY2VzPzogeyBbbG9jYWxlOiBzdHJpbmddOiBDb250ZW50U3RhdGljRmFjdG9yeSB9O1xufVxuXG4vKipcbiAqIE9wY2lvbmVzIGRlIGNhcmdhL2xpc3RhZG8gZGUgY29udGVuaWRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRMb2FkT3B0aW9ucyB7XG4gIC8qKiBMb2NhbGUgYSByZXNvbHZlciAoZGVmYXVsdCBgJ2VzJ2ApLiAqL1xuICBsb2NhbGU/OiBzdHJpbmc7XG59XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2NvbnRlbnQtcGxhdGZvcm0vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnRlbnQgUGxhdGZvcm0g4oCUIG1vZGVsbyBjYW7Ds25pY28gZGUgZG9jdW1lbnRvIGRlIGNvbnRlbmlkby5cbiAqXG4gKiBBbGluZWFkbyBjb24gQURSLTAyMCDCpzIuMS4gRXMgZWwgY29udHJhdG8gY29tcGFydGlkbyBlbnRyZTpcbiAqICAtIEJhY2tlbmQgKHNlcnZpY2lvIGBjb250ZW50L2Ag4oCUIER5bmFtb0RCIHRhYmxhIGBjb250ZW50YCkuXG4gKiAgLSBQaXBlbGluZSBlc3TDoXRpY28gKGBzY3JpcHRzL2J1aWxkLWNvbnRlbnQudHNgIOKGkiBgY29udGVudC1zdG9yZS57bG9jYWxlfS50c2ApLlxuICogIC0gRXN0YSBsaWIgKGBDb250ZW50U2VydmljZWAgKyBgcHJvdmlkZVZhbHRlY2hDb250ZW50YCkuXG4gKiAgLSBXZWIgKGAvYmxvZ2AsIGAvbmV3c2AsIOKApikuXG4gKlxuICogTW9kZWxvICoqdW5pZmljYWRvKiogY29uIGRpc2NyaW1pbmFkb3IgYHR5cGVgIOKAlCBhZ3JlZ2FyIHVuIHRpcG8gZGUgY29udGVuaWRvXG4gKiBOTyByZXF1aWVyZSB0b2NhciBiYWNrZW5kIG5pIGxpYi4gRWwgYGJvZHlgIGVzIE1hcmtkb3duIHBsYW5vLCByZW5kZXJpemFkbyBlblxuICogbGEgd2ViIHbDrWEgZWwgYG1hcmtkb3duLWFydGljbGUtcGFyc2VyYCBleGlzdGVudGUgKGBzdHJpbmcgTUQg4oaSIEFydGljbGVNZXRhZGF0YWApLlxuICpcbiAqIE5PVEE6IGV4aXN0ZSB1biB0aXBvIGhvbcOzbmltbyBgQ29udGVudERvY3VtZW50PFQ+YCAoYmxvY2stYmFzZWQsIGJ1aWxkZXIpIGVuXG4gKiBgc2VydmljZXMvY29udGVudC9gLCByZWV4cG9ydGFkbyBwb3IgZWwgcHVibGljLWFwaSBjb21vIGBDb250ZW50QnVpbGRlckRvY3VtZW50YFxuICogcGFyYSBldml0YXIgY29saXNpw7NuLiBFc3RlIChmbGF0LCBtYXJrZG93bikgZXMgZWwgY2Fuw7NuaWNvIGRlIGxhIHBsYXRhZm9ybWEuXG4gKi9cblxuLyoqXG4gKiBUaXBvIGRlIGNvbnRlbmlkbyAoZGlzY3JpbWluYWRvcikuIEV4dGVuc2libGUg4oCUIGFncmVnYXIgdW4gdmFsb3Igbm8gaW1wYWN0YVxuICogYmFja2VuZCBuaSBsaWI7IHNvbG8gbGEgd2ViIGRlY2lkZSBxdcOpIHJ1dGFzIGV4cG9uZXIuXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRlbnREb2N1bWVudFR5cGUgPSAnYmxvZycgfCAnbmV3cycgfCAnYXJ0aWNsZScgfCAnZG9jdW1lbnRhdGlvbicgfCAoc3RyaW5nICYge30pO1xuXG4vKipcbiAqIEVzdGFkbyBkZSBwdWJsaWNhY2nDs24gZGVsIGRvY3VtZW50by5cbiAqL1xuZXhwb3J0IHR5cGUgQ29udGVudERvY3VtZW50U3RhdHVzID0gJ2RyYWZ0JyB8ICdwdWJsaXNoZWQnIHwgJ2FyY2hpdmVkJztcblxuLyoqXG4gKiBPcmlnZW4gZGVsIGRvY3VtZW50byDigJQgbWFyY2EgZGUgbGEgbmF0dXJhbGV6YSBow61icmlkYSBkZWwgcGlwZWxpbmUuXG4gKiAgLSBgc3RhdGljYDogYXV0b3LDrWEgZW4gcmVwbywgYnVpbGQtdGltZSAoY29udGVuaWRvIGN1cmFkbyBkZSBsYSBlbXByZXNhKS5cbiAqICAtIGBiYWNrZW5kYDogRHluYW1vREIgKyBBUEkgKHB1YmxpY2FjacOzbiBzaW4gcmVkZXBsb3kgLyBlZGl0b3JlcykuXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRlbnREb2N1bWVudFNvdXJjZSA9ICdzdGF0aWMnIHwgJ2JhY2tlbmQnO1xuXG4vKipcbiAqIEF1dG9yIGRlIHVuIGRvY3VtZW50byBkZSBjb250ZW5pZG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudERvY3VtZW50QXV0aG9yIHtcbiAgLyoqIE5vbWJyZSB2aXNpYmxlIGRlbCBhdXRvci4gKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogVVJMIGRlbCBhdmF0YXIgZGVsIGF1dG9yLiAqL1xuICBhdmF0YXI/OiBzdHJpbmc7XG4gIC8qKiBSb2wgbyBjYXJnbyBkZWwgYXV0b3IuICovXG4gIHJvbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRG9jdW1lbnRvIGRlIGNvbnRlbmlkbyB1bmlmaWNhZG8gKGNhbsOzbmljbyDigJQgQURSLTAyMCDCpzIuMSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudERvY3VtZW50IHtcbiAgLyoqIElkZW50aWZpY2Fkb3Igw7puaWNvIOKAlCB1dWlkIChiYWNrZW5kKSBvIGBzdGF0aWM6e3R5cGV9Ontsb2NhbGV9OntzbHVnfWAgKGVzdMOhdGljbykuICovXG4gIGlkOiBzdHJpbmc7XG4gIC8qKiBBcHBJRCBkZWwgcHJvZHVjdG8gZHVlw7FvIGRlbCBkb2N1bWVudG8uICovXG4gIGFwcElkOiBzdHJpbmc7XG4gIC8qKiBUaXBvIGRlIGNvbnRlbmlkbyAoZGlzY3JpbWluYWRvcikuICovXG4gIHR5cGU6IENvbnRlbnREb2N1bWVudFR5cGU7XG4gIC8qKiBTbHVnIOKAlCDDum5pY28gcG9yIChhcHBJZCwgdHlwZSwgbG9jYWxlKS4gKi9cbiAgc2x1Zzogc3RyaW5nO1xuICAvKiogTG9jYWxlIGRlbCBkb2N1bWVudG8gKGAnZXMnYCB8IGAnZW4nYCB8IOKApikuICovXG4gIGxvY2FsZTogc3RyaW5nO1xuICAvKiogVMOtdHVsbyBkZWwgZG9jdW1lbnRvLiAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKiogUmVzdW1lbiAvIGV4dHJhY3RvIHBhcmEgbGlzdGFkb3MgeSBTRU8uICovXG4gIGV4Y2VycHQ6IHN0cmluZztcbiAgLyoqIFVSTCBkZSBsYSBpbWFnZW4gZGUgcG9ydGFkYSAoUzMgdsOtYSBzdG9yYWdlIHNlcnZpY2UpLiAqL1xuICBjb3ZlckltYWdlPzogc3RyaW5nO1xuICAvKiogQ3VlcnBvIGVuIE1hcmtkb3duIOKAlCByZW5kZXIgdsOtYSBtYXJrZG93bi1hcnRpY2xlLXBhcnNlci4gKi9cbiAgYm9keTogc3RyaW5nO1xuICAvKiogQXV0b3IgZGVsIGRvY3VtZW50by4gKi9cbiAgYXV0aG9yPzogQ29udGVudERvY3VtZW50QXV0aG9yO1xuICAvKiogRXRpcXVldGFzIHBhcmEgY2F0ZWdvcml6YWNpw7NuLiAqL1xuICB0YWdzPzogc3RyaW5nW107XG4gIC8qKiBDYXRlZ29yw61hIHByaW1hcmlhLiAqL1xuICBjYXRlZ29yeT86IHN0cmluZztcbiAgLyoqIEVzdGFkbyBkZSBwdWJsaWNhY2nDs24uICovXG4gIHN0YXR1czogQ29udGVudERvY3VtZW50U3RhdHVzO1xuICAvKiogT3JpZ2VuIGRlbCBkb2N1bWVudG8gKG1hcmNhIGjDrWJyaWRhKS4gKi9cbiAgc291cmNlOiBDb250ZW50RG9jdW1lbnRTb3VyY2U7XG4gIC8qKlxuICAgKiBBbGNhbmNlIGRlbCBkb2N1bWVudG8uXG4gICAqICAtIGAnYXBwJ2A6IGNvbnRlbmlkbyBkZSBsYSBwbGF0YWZvcm1hLCB2aXNpYmxlIGEgdG9kb3MgbG9zIHVzZXJzLlxuICAgKiAgLSBgJ29yZydgOiBjb250ZW5pZG8gcHJpdmFkbyBkZSB1bmEgb3JnYW5pemFjacOzbiwgYWNjZXNvIGF1dGVudGljYWRvLlxuICAgKi9cbiAgc2NvcGU/OiAnYXBwJyB8ICdvcmcnO1xuICAvKiogT3JnSUQgcHJvcGlldGFyaWEg4oCUIHByZXNlbnRlIGN1YW5kbyBgc2NvcGUgPT09ICdvcmcnYC4gKi9cbiAgb3JnSWQ/OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBwdWJsaWNhY2nDs24gKElTTyA4NjAxKS4gKi9cbiAgcHVibGlzaGVkQXQ/OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSBjcmVhY2nDs24gKElTTyA4NjAxKS4gKi9cbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIC8qKiBGZWNoYSBkZSDDumx0aW1hIGFjdHVhbGl6YWNpw7NuIChJU08gODYwMSkuICovXG4gIHVwZGF0ZWRBdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBGYWN0b3J5IGxhenkgZGUgZG9jdW1lbnRvcyBlc3TDoXRpY29zIHBhcmEgdW4gbG9jYWxlLiBHZW5lcmFkYSBidWlsZC10aW1lIHBvclxuICogYHNjcmlwdHMvYnVpbGQtY29udGVudC50c2AuIFNlIHVzYSBjb24gYGltcG9ydCgpYCBkaW7DoW1pY28gcGFyYSBxdWUgY2FkYSBsb2NhbGVcbiAqIHF1ZWRlIGNvZGUtc3BsaXQgKGlndWFsIHBhdHLDs24gcXVlIGBMZWdhbENvbnRlbnRGYWN0b3J5YCkuXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRlbnRTdGF0aWNGYWN0b3J5ID0gKCkgPT4gUHJvbWlzZTxDb250ZW50RG9jdW1lbnRbXT47XG5cbi8qKlxuICogQ29uZmlndXJhY2nDs24gZGUgYHByb3ZpZGVWYWx0ZWNoQ29udGVudGAgKEFEUi0wMjAgwqcyLjUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZhbHRlY2hDb250ZW50Q29uZmlnIHtcbiAgLyoqIEJhc2UgVVJMIGRlIGxhIEFQSSBiYWNrZW5kIChzaW4gdHJhaWxpbmcgc2xhc2gpLiBFai4gYGVudmlyb25tZW50LmFwaVVybGAuICovXG4gIGFwaVVybDogc3RyaW5nO1xuICAvKiogQXBwSUQgZGVsIHByb2R1Y3RvIOKAlCBzZSBlbnbDrWEgY29tbyBxdWVyeSBwYXJhbSBhbCBiYWNrZW5kLiAqL1xuICBhcHBJZDogc3RyaW5nO1xuICAvKipcbiAgICogRnVlbnRlcyBlc3TDoXRpY2FzIGxhenkga2V5ZWQgcG9yIGxvY2FsZSAoZ2VuZXJhZGFzIGJ1aWxkLXRpbWUpLiBPcGNpb25hbCDigJRcbiAgICogc2kgbm8gaGF5LCBlbCBzZXJ2aWNpbyBvcGVyYSBzb2xvIGNvbnRyYSBlbCBiYWNrZW5kLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBzdGF0aWNTb3VyY2VzOiB7XG4gICAqICAgZXM6ICgpID0+IGltcG9ydCgnLi9hcHAvZ2VuZXJhdGVkL2NvbnRlbnQtc3RvcmUuZXMnKS50aGVuKG0gPT4gbS5DT05URU5UX1NUT1JFX0VTKSxcbiAgICogICBlbjogKCkgPT4gaW1wb3J0KCcuL2FwcC9nZW5lcmF0ZWQvY29udGVudC1zdG9yZS5lbicpLnRoZW4obSA9PiBtLkNPTlRFTlRfU1RPUkVfRU4pLFxuICAgKiB9XG4gICAqL1xuICBzdGF0aWNTb3VyY2VzPzogeyBbbG9jYWxlOiBzdHJpbmddOiBDb250ZW50U3RhdGljRmFjdG9yeSB9O1xufVxuXG4vKipcbiAqIE9wY2lvbmVzIGRlIGNhcmdhL2xpc3RhZG8gZGUgY29udGVuaWRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRMb2FkT3B0aW9ucyB7XG4gIC8qKiBMb2NhbGUgYSByZXNvbHZlciAoZGVmYXVsdCBgJ2VzJ2ApLiAqL1xuICBsb2NhbGU/OiBzdHJpbmc7XG59XG4iXX0=
@@ -2,5 +2,5 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export const VERSION = '2.0.953';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC45NTMnO1xuIl19
5
+ export const VERSION = '2.0.955';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC45NTUnO1xuIl19
@@ -54,7 +54,7 @@ import 'prismjs/components/prism-json';
54
54
  * Current version of valtech-components.
55
55
  * This is automatically updated during the publish process.
56
56
  */
57
- const VERSION = '2.0.953';
57
+ const VERSION = '2.0.955';
58
58
 
59
59
  // Control de estado de refresco (singleton a nivel de módulo)
60
60
  let isRefreshing = false;
@@ -8589,6 +8589,13 @@ class AuthService {
8589
8589
  return firebaseAuth$.pipe(tap(() => {
8590
8590
  // Actualizar activeOrg en el state local
8591
8591
  this.stateService.updateActiveOrg(response.activeOrg);
8592
+ // Persistir el nuevo access token (incluye activeOrg actualizado).
8593
+ // Sin esto, el bootstrap post-refresh usa el JWT cacheado con la org anterior.
8594
+ if (response.accessToken) {
8595
+ const expiresAt = Date.now() + (response.expiresIn ?? 900) * 1000;
8596
+ this.stateService.updateAccessToken(response.accessToken, response.expiresIn ?? 900);
8597
+ this.storageService.saveAccessToken(response.accessToken, expiresAt);
8598
+ }
8592
8599
  // Notificar cambio a otras pestañas
8593
8600
  this.syncService.broadcast({
8594
8601
  type: 'ORG_SWITCH',
@@ -47918,6 +47925,7 @@ class ContentService {
47918
47925
  this.config = inject(VALTECH_CONTENT_CONFIG, { optional: true });
47919
47926
  this.http = inject(HttpClient);
47920
47927
  this.parser = inject(MarkdownArticleParserService);
47928
+ this.auth = inject(AuthService, { optional: true });
47921
47929
  /** `true` si `provideValtechContent()` fue llamado en el bootstrap. */
47922
47930
  this.isConfigured = signal(!!this.config);
47923
47931
  /** Cache de las promesas de cada factory estática, keyed por locale. */
@@ -47973,6 +47981,44 @@ class ContentService {
47973
47981
  invalidate() {
47974
47982
  this.staticCache.clear();
47975
47983
  }
47984
+ /**
47985
+ * Lista los documentos publicados de la org activa del usuario autenticado.
47986
+ *
47987
+ * Requiere sesión activa (`AuthService.isAuthenticated()`). El interceptor de
47988
+ * auth agrega automáticamente `Authorization: Bearer {token}` a la request.
47989
+ *
47990
+ * @param type - Tipo de contenido (`'blog'`, `'news'`, …).
47991
+ * @param options - `{ locale }` (default `'es'`).
47992
+ * @returns Documentos de la org o `[]` si no hay config/sesión.
47993
+ */
47994
+ listForOrg(type, options = {}) {
47995
+ if (!this.config?.apiUrl)
47996
+ return of([]);
47997
+ if (!this.auth?.isAuthenticated())
47998
+ return of([]);
47999
+ const locale = (options.locale ?? 'es').toLowerCase();
48000
+ return this.listBackendOrg(type, locale).pipe(catchError$1(() => of([])));
48001
+ }
48002
+ /**
48003
+ * Carga un documento de la org activa del usuario autenticado por `slug`.
48004
+ *
48005
+ * Requiere sesión activa. El interceptor de auth agrega el Bearer token.
48006
+ *
48007
+ * @param type - Tipo de contenido.
48008
+ * @param slug - Slug del documento.
48009
+ * @param options - `{ locale }` (default `'es'`).
48010
+ * @returns El documento o error si no se encuentra / no hay sesión.
48011
+ */
48012
+ loadForOrg(type, slug, options = {}) {
48013
+ if (!this.config?.apiUrl) {
48014
+ return throwError(() => new Error('ContentService no está configurado.'));
48015
+ }
48016
+ if (!this.auth?.isAuthenticated()) {
48017
+ return throwError(() => new Error('Se requiere sesión activa para cargar contenido de org.'));
48018
+ }
48019
+ const locale = (options.locale ?? 'es').toLowerCase();
48020
+ return this.loadBackendOrg(type, slug, locale);
48021
+ }
47976
48022
  // ===========================================================================
47977
48023
  // Internos
47978
48024
  // ===========================================================================
@@ -48019,6 +48065,26 @@ class ContentService {
48019
48065
  .get(path)
48020
48066
  .pipe(map(res => res?.item ?? res));
48021
48067
  }
48068
+ /**
48069
+ * GET `{apiUrl}/v2/content/org?type=&locale=` — publicados de la org activa.
48070
+ * El Bearer token lo añade el interceptor de auth automáticamente.
48071
+ */
48072
+ listBackendOrg(type, locale) {
48073
+ const params = new URLSearchParams({ type, locale });
48074
+ return this.http
48075
+ .get(`${this.config.apiUrl}/v2/content/org?${params}`)
48076
+ .pipe(map(res => res?.items ?? []));
48077
+ }
48078
+ /**
48079
+ * GET `{apiUrl}/v2/content/org/{type}/{locale}/{slug}` — detalle de la org activa.
48080
+ * El Bearer token lo añade el interceptor de auth automáticamente.
48081
+ */
48082
+ loadBackendOrg(type, slug, locale) {
48083
+ const path = `${this.config.apiUrl}/v2/content/org/${type}/${locale}/${encodeURIComponent(slug)}`;
48084
+ return this.http
48085
+ .get(path)
48086
+ .pipe(map(res => res?.item ?? res));
48087
+ }
48022
48088
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
48023
48089
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentService, providedIn: 'root' }); }
48024
48090
  }
@@ -48473,6 +48539,8 @@ class ContentReactionComponent {
48473
48539
  thankYouMessage: this.props.thankYouMessage || this.t('thankYou'),
48474
48540
  disabled: this.props.disabled ?? false,
48475
48541
  readonly: this.props.readonly ?? false,
48542
+ // Variante: 'emoji' cuando se declara explícitamente o cuando se pasan emojis custom.
48543
+ variant: this.props.variant ?? (this.props.emojis ? 'emoji' : 'buttons'),
48476
48544
  }));
48477
48545
  this.activeReactionValues = computed(() => this.resolvedProps().emojis.length === 2 ? ['negative', 'positive'] : ['negative', 'neutral', 'positive']);
48478
48546
  this.showCommentField = computed(() => {
@@ -48630,11 +48698,11 @@ class ContentReactionComponent {
48630
48698
  return this.i18n.t(key, 'ContentReaction') || translations[key] || key;
48631
48699
  }
48632
48700
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentReactionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48633
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ContentReactionComponent, isStandalone: true, selector: "val-content-reaction", inputs: { props: "props" }, outputs: { reactionSubmit: "reactionSubmit", reactionChange: "reactionChange" }, usesOnChanges: true, ngImport: i0, template: "@if (isConfigured()) {\n<div class=\"content-reaction\" [class.disabled]=\"resolvedProps().disabled\" [class.readonly]=\"resolvedProps().readonly\">\n <!-- Loading inicial -->\n @if (state().isLoading && !state().selectedValue) {\n <div class=\"loading-container\">\n <ion-spinner name=\"crescent\"></ion-spinner>\n </div>\n } @else {\n <!-- Pregunta -->\n <p class=\"question\">\n {{ state().selectedValue === 'negative' ? t('negativeFeedbackTitle') : resolvedProps().question }}\n </p>\n\n <!-- Botones de reacci\u00F3n -->\n <div class=\"reaction-buttons\">\n <ion-button\n [fill]=\"isSelected('positive') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('positive')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('positive')\"\n >\n {{ t('positiveLabel') }}\n </ion-button>\n <ion-button\n [fill]=\"isSelected('negative') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('negative')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('negative')\"\n >\n {{ t('negativeLabel') }}\n </ion-button>\n </div>\n\n <!-- Campo de comentario (solo si hay selecci\u00F3n) -->\n @if (showCommentField()) {\n <div class=\"comment-section\">\n <ion-textarea\n [value]=\"state().comment\"\n [placeholder]=\"resolvedProps().commentPlaceholder\"\n [maxlength]=\"resolvedProps().maxCommentLength\"\n [disabled]=\"resolvedProps().disabled\"\n [rows]=\"3\"\n class=\"comment-textarea\"\n (ionInput)=\"updateComment($event)\"\n ></ion-textarea>\n <span class=\"char-count\"> {{ state().comment.length }}/{{ resolvedProps().maxCommentLength }} </span>\n </div>\n }\n\n <!-- Bot\u00F3n de env\u00EDo -->\n @if (state().selectedValue && !state().isSubmitted) {\n <ion-button expand=\"block\" shape=\"round\" [disabled]=\"!canSubmit()\" (click)=\"submitReaction()\" class=\"submit-button\">\n @if (state().isLoading) {\n <ion-spinner name=\"crescent\"></ion-spinner>\n } @else { {{ state().hadPreviousReaction ? t('update') : t('submit') }} }\n </ion-button>\n }\n\n <!-- Mensaje de confirmaci\u00F3n -->\n @if (state().isSubmitted) {\n <p class=\"submitted-message\">{{ t('thankYou') }}</p>\n }\n\n <!-- Error -->\n @if (state().error) {\n <p class=\"error-message\">{{ state().error }}</p>\n } }\n</div>\n}\n", styles: [":host{display:block}.content-reaction{padding:16px;text-align:center}.content-reaction.disabled{opacity:.6;pointer-events:none}.content-reaction.readonly{pointer-events:none}.question{font-size:17px;font-weight:700;color:var(--ion-color-dark);margin:0 0 16px}.reaction-buttons{display:flex;justify-content:center;gap:12px;margin-bottom:20px}.comment-section{margin-top:16px;animation:slideIn .3s ease-out}.comment-section .comment-textarea{--background: transparent;--border-radius: 8px;--padding-start: 12px;--padding-end: 12px;width:100%}.comment-section .char-count{display:block;text-align:right;font-size:12px;color:var(--ion-color-medium);margin-top:4px}.submit-button{margin-top:16px}.submitted-message{margin-top:16px;color:var(--ion-color-success);font-weight:500;animation:fadeIn .3s ease-out}.error-message{margin-top:8px;color:var(--ion-color-danger);font-size:14px}.loading-container{display:flex;justify-content:center;padding:20px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }] }); }
48701
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ContentReactionComponent, isStandalone: true, selector: "val-content-reaction", inputs: { props: "props" }, outputs: { reactionSubmit: "reactionSubmit", reactionChange: "reactionChange" }, usesOnChanges: true, ngImport: i0, template: "@if (isConfigured()) {\n<div class=\"content-reaction\" [class.disabled]=\"resolvedProps().disabled\" [class.readonly]=\"resolvedProps().readonly\">\n <!-- Loading inicial -->\n @if (state().isLoading && !state().selectedValue) {\n <div class=\"loading-container\">\n <ion-spinner name=\"crescent\"></ion-spinner>\n </div>\n } @else {\n <!-- Pregunta -->\n <p class=\"question\">\n {{ state().selectedValue === 'negative' ? t('negativeFeedbackTitle') : resolvedProps().question }}\n </p>\n\n <!-- Botones de reacci\u00F3n \u2014 variante emoji (caras, estrellas, thumbs, \u2026) -->\n @if (resolvedProps().variant === 'emoji') {\n <div class=\"reaction-buttons reaction-buttons--emoji\">\n @for (value of activeReactionValues(); track value; let i = $index) {\n <ion-button\n fill=\"clear\"\n shape=\"round\"\n [class.selected]=\"isSelected(value)\"\n [attr.aria-label]=\"resolvedProps().emojiLabels[i]\"\n [attr.aria-pressed]=\"isSelected(value)\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction(value)\"\n >\n <span class=\"emoji-btn\">{{ resolvedProps().emojis[i] }}</span>\n </ion-button>\n }\n </div>\n } @else {\n <!-- Botones de reacci\u00F3n \u2014 variante texto (default) -->\n <div class=\"reaction-buttons\">\n <ion-button\n [fill]=\"isSelected('positive') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('positive')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('positive')\"\n >\n {{ t('positiveLabel') }}\n </ion-button>\n <ion-button\n [fill]=\"isSelected('negative') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('negative')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('negative')\"\n >\n {{ t('negativeLabel') }}\n </ion-button>\n </div>\n }\n\n <!-- Campo de comentario (solo si hay selecci\u00F3n) -->\n @if (showCommentField()) {\n <div class=\"comment-section\">\n <ion-textarea\n [value]=\"state().comment\"\n [placeholder]=\"resolvedProps().commentPlaceholder\"\n [maxlength]=\"resolvedProps().maxCommentLength\"\n [disabled]=\"resolvedProps().disabled\"\n [rows]=\"3\"\n class=\"comment-textarea\"\n (ionInput)=\"updateComment($event)\"\n ></ion-textarea>\n <span class=\"char-count\"> {{ state().comment.length }}/{{ resolvedProps().maxCommentLength }} </span>\n </div>\n }\n\n <!-- Bot\u00F3n de env\u00EDo -->\n @if (state().selectedValue && !state().isSubmitted) {\n <ion-button expand=\"block\" shape=\"round\" [disabled]=\"!canSubmit()\" (click)=\"submitReaction()\" class=\"submit-button\">\n @if (state().isLoading) {\n <ion-spinner name=\"crescent\"></ion-spinner>\n } @else { {{ state().hadPreviousReaction ? t('update') : t('submit') }} }\n </ion-button>\n }\n\n <!-- Mensaje de confirmaci\u00F3n -->\n @if (state().isSubmitted) {\n <p class=\"submitted-message\">{{ t('thankYou') }}</p>\n }\n\n <!-- Error -->\n @if (state().error) {\n <p class=\"error-message\">{{ state().error }}</p>\n } }\n</div>\n}\n", styles: [":host{display:block}.content-reaction{padding:16px;text-align:center}.content-reaction.disabled{opacity:.6;pointer-events:none}.content-reaction.readonly{pointer-events:none}.question{font-size:17px;font-weight:700;color:var(--ion-color-dark);margin:0 0 16px}.reaction-buttons{display:flex;justify-content:center;gap:12px;margin-bottom:20px}.reaction-buttons--emoji{gap:8px}.reaction-buttons--emoji ion-button{--padding-start: 4px;--padding-end: 4px;transition:transform .15s ease}.reaction-buttons--emoji ion-button.selected{transform:scale(1.25)}.reaction-buttons--emoji ion-button:not(.selected):not([disabled]){opacity:.55}.reaction-buttons--emoji ion-button:not(.selected):not([disabled]):hover{opacity:1}.emoji-btn{font-size:32px;line-height:1;display:block}.comment-section{margin-top:16px;animation:slideIn .3s ease-out}.comment-section .comment-textarea{--background: transparent;--border-radius: 8px;--padding-start: 12px;--padding-end: 12px;width:100%}.comment-section .char-count{display:block;text-align:right;font-size:12px;color:var(--ion-color-medium);margin-top:4px}.submit-button{margin-top:16px}.submitted-message{margin-top:16px;color:var(--ion-color-success);font-weight:500;animation:fadeIn .3s ease-out}.error-message{margin-top:8px;color:var(--ion-color-danger);font-size:14px}.loading-container{display:flex;justify-content:center;padding:20px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }] }); }
48634
48702
  }
48635
48703
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentReactionComponent, decorators: [{
48636
48704
  type: Component,
48637
- args: [{ selector: 'val-content-reaction', standalone: true, imports: [CommonModule, FormsModule, IonButton, IonSpinner, IonTextarea], template: "@if (isConfigured()) {\n<div class=\"content-reaction\" [class.disabled]=\"resolvedProps().disabled\" [class.readonly]=\"resolvedProps().readonly\">\n <!-- Loading inicial -->\n @if (state().isLoading && !state().selectedValue) {\n <div class=\"loading-container\">\n <ion-spinner name=\"crescent\"></ion-spinner>\n </div>\n } @else {\n <!-- Pregunta -->\n <p class=\"question\">\n {{ state().selectedValue === 'negative' ? t('negativeFeedbackTitle') : resolvedProps().question }}\n </p>\n\n <!-- Botones de reacci\u00F3n -->\n <div class=\"reaction-buttons\">\n <ion-button\n [fill]=\"isSelected('positive') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('positive')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('positive')\"\n >\n {{ t('positiveLabel') }}\n </ion-button>\n <ion-button\n [fill]=\"isSelected('negative') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('negative')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('negative')\"\n >\n {{ t('negativeLabel') }}\n </ion-button>\n </div>\n\n <!-- Campo de comentario (solo si hay selecci\u00F3n) -->\n @if (showCommentField()) {\n <div class=\"comment-section\">\n <ion-textarea\n [value]=\"state().comment\"\n [placeholder]=\"resolvedProps().commentPlaceholder\"\n [maxlength]=\"resolvedProps().maxCommentLength\"\n [disabled]=\"resolvedProps().disabled\"\n [rows]=\"3\"\n class=\"comment-textarea\"\n (ionInput)=\"updateComment($event)\"\n ></ion-textarea>\n <span class=\"char-count\"> {{ state().comment.length }}/{{ resolvedProps().maxCommentLength }} </span>\n </div>\n }\n\n <!-- Bot\u00F3n de env\u00EDo -->\n @if (state().selectedValue && !state().isSubmitted) {\n <ion-button expand=\"block\" shape=\"round\" [disabled]=\"!canSubmit()\" (click)=\"submitReaction()\" class=\"submit-button\">\n @if (state().isLoading) {\n <ion-spinner name=\"crescent\"></ion-spinner>\n } @else { {{ state().hadPreviousReaction ? t('update') : t('submit') }} }\n </ion-button>\n }\n\n <!-- Mensaje de confirmaci\u00F3n -->\n @if (state().isSubmitted) {\n <p class=\"submitted-message\">{{ t('thankYou') }}</p>\n }\n\n <!-- Error -->\n @if (state().error) {\n <p class=\"error-message\">{{ state().error }}</p>\n } }\n</div>\n}\n", styles: [":host{display:block}.content-reaction{padding:16px;text-align:center}.content-reaction.disabled{opacity:.6;pointer-events:none}.content-reaction.readonly{pointer-events:none}.question{font-size:17px;font-weight:700;color:var(--ion-color-dark);margin:0 0 16px}.reaction-buttons{display:flex;justify-content:center;gap:12px;margin-bottom:20px}.comment-section{margin-top:16px;animation:slideIn .3s ease-out}.comment-section .comment-textarea{--background: transparent;--border-radius: 8px;--padding-start: 12px;--padding-end: 12px;width:100%}.comment-section .char-count{display:block;text-align:right;font-size:12px;color:var(--ion-color-medium);margin-top:4px}.submit-button{margin-top:16px}.submitted-message{margin-top:16px;color:var(--ion-color-success);font-weight:500;animation:fadeIn .3s ease-out}.error-message{margin-top:8px;color:var(--ion-color-danger);font-size:14px}.loading-container{display:flex;justify-content:center;padding:20px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"] }]
48705
+ args: [{ selector: 'val-content-reaction', standalone: true, imports: [CommonModule, FormsModule, IonButton, IonSpinner, IonTextarea], template: "@if (isConfigured()) {\n<div class=\"content-reaction\" [class.disabled]=\"resolvedProps().disabled\" [class.readonly]=\"resolvedProps().readonly\">\n <!-- Loading inicial -->\n @if (state().isLoading && !state().selectedValue) {\n <div class=\"loading-container\">\n <ion-spinner name=\"crescent\"></ion-spinner>\n </div>\n } @else {\n <!-- Pregunta -->\n <p class=\"question\">\n {{ state().selectedValue === 'negative' ? t('negativeFeedbackTitle') : resolvedProps().question }}\n </p>\n\n <!-- Botones de reacci\u00F3n \u2014 variante emoji (caras, estrellas, thumbs, \u2026) -->\n @if (resolvedProps().variant === 'emoji') {\n <div class=\"reaction-buttons reaction-buttons--emoji\">\n @for (value of activeReactionValues(); track value; let i = $index) {\n <ion-button\n fill=\"clear\"\n shape=\"round\"\n [class.selected]=\"isSelected(value)\"\n [attr.aria-label]=\"resolvedProps().emojiLabels[i]\"\n [attr.aria-pressed]=\"isSelected(value)\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction(value)\"\n >\n <span class=\"emoji-btn\">{{ resolvedProps().emojis[i] }}</span>\n </ion-button>\n }\n </div>\n } @else {\n <!-- Botones de reacci\u00F3n \u2014 variante texto (default) -->\n <div class=\"reaction-buttons\">\n <ion-button\n [fill]=\"isSelected('positive') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('positive')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('positive')\"\n >\n {{ t('positiveLabel') }}\n </ion-button>\n <ion-button\n [fill]=\"isSelected('negative') ? 'solid' : 'outline'\"\n shape=\"round\"\n color=\"dark\"\n [attr.aria-pressed]=\"isSelected('negative')\"\n [disabled]=\"resolvedProps().disabled || resolvedProps().readonly\"\n (click)=\"selectReaction('negative')\"\n >\n {{ t('negativeLabel') }}\n </ion-button>\n </div>\n }\n\n <!-- Campo de comentario (solo si hay selecci\u00F3n) -->\n @if (showCommentField()) {\n <div class=\"comment-section\">\n <ion-textarea\n [value]=\"state().comment\"\n [placeholder]=\"resolvedProps().commentPlaceholder\"\n [maxlength]=\"resolvedProps().maxCommentLength\"\n [disabled]=\"resolvedProps().disabled\"\n [rows]=\"3\"\n class=\"comment-textarea\"\n (ionInput)=\"updateComment($event)\"\n ></ion-textarea>\n <span class=\"char-count\"> {{ state().comment.length }}/{{ resolvedProps().maxCommentLength }} </span>\n </div>\n }\n\n <!-- Bot\u00F3n de env\u00EDo -->\n @if (state().selectedValue && !state().isSubmitted) {\n <ion-button expand=\"block\" shape=\"round\" [disabled]=\"!canSubmit()\" (click)=\"submitReaction()\" class=\"submit-button\">\n @if (state().isLoading) {\n <ion-spinner name=\"crescent\"></ion-spinner>\n } @else { {{ state().hadPreviousReaction ? t('update') : t('submit') }} }\n </ion-button>\n }\n\n <!-- Mensaje de confirmaci\u00F3n -->\n @if (state().isSubmitted) {\n <p class=\"submitted-message\">{{ t('thankYou') }}</p>\n }\n\n <!-- Error -->\n @if (state().error) {\n <p class=\"error-message\">{{ state().error }}</p>\n } }\n</div>\n}\n", styles: [":host{display:block}.content-reaction{padding:16px;text-align:center}.content-reaction.disabled{opacity:.6;pointer-events:none}.content-reaction.readonly{pointer-events:none}.question{font-size:17px;font-weight:700;color:var(--ion-color-dark);margin:0 0 16px}.reaction-buttons{display:flex;justify-content:center;gap:12px;margin-bottom:20px}.reaction-buttons--emoji{gap:8px}.reaction-buttons--emoji ion-button{--padding-start: 4px;--padding-end: 4px;transition:transform .15s ease}.reaction-buttons--emoji ion-button.selected{transform:scale(1.25)}.reaction-buttons--emoji ion-button:not(.selected):not([disabled]){opacity:.55}.reaction-buttons--emoji ion-button:not(.selected):not([disabled]):hover{opacity:1}.emoji-btn{font-size:32px;line-height:1;display:block}.comment-section{margin-top:16px;animation:slideIn .3s ease-out}.comment-section .comment-textarea{--background: transparent;--border-radius: 8px;--padding-start: 12px;--padding-end: 12px;width:100%}.comment-section .char-count{display:block;text-align:right;font-size:12px;color:var(--ion-color-medium);margin-top:4px}.submit-button{margin-top:16px}.submitted-message{margin-top:16px;color:var(--ion-color-success);font-weight:500;animation:fadeIn .3s ease-out}.error-message{margin-top:8px;color:var(--ion-color-danger);font-size:14px}.loading-container{display:flex;justify-content:center;padding:20px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"] }]
48638
48706
  }], ctorParameters: () => [], propDecorators: { props: [{
48639
48707
  type: Input
48640
48708
  }], reactionSubmit: [{