@doctorus/common 0.0.39 → 0.0.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,16 @@
1
1
  /**
2
- * Action types for operations
2
+ * Action types for operations.
3
+ *
4
+ * The GraphQL schema's ActionType enum is intentionally not treated as the
5
+ * source of truth here. This package keeps a richer application-level action
6
+ * vocabulary for authorization, audit logging, and UI labels.
3
7
  */
4
8
  export declare enum Action {
5
9
  CREATE = "CREATE",
6
10
  READ = "READ",
7
- UPDATE = "UPDATE",
8
11
  DELETE = "DELETE",
12
+ RETRIEVE = "RETRIEVE",
13
+ UPDATE = "UPDATE",
9
14
  PUT = "PUT",
10
15
  LIST = "LIST",
11
16
  MANAGE = "MANAGE",
@@ -2,25 +2,26 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Action = void 0;
4
4
  /**
5
- * Action types for operations
5
+ * Action types for operations.
6
+ *
7
+ * The GraphQL schema's ActionType enum is intentionally not treated as the
8
+ * source of truth here. This package keeps a richer application-level action
9
+ * vocabulary for authorization, audit logging, and UI labels.
6
10
  */
7
11
  var Action;
8
12
  (function (Action) {
9
- // CRUD operations
10
13
  Action["CREATE"] = "CREATE";
11
14
  Action["READ"] = "READ";
12
- Action["UPDATE"] = "UPDATE";
13
15
  Action["DELETE"] = "DELETE";
16
+ Action["RETRIEVE"] = "RETRIEVE";
17
+ Action["UPDATE"] = "UPDATE";
14
18
  Action["PUT"] = "PUT";
15
19
  Action["LIST"] = "LIST";
16
- // General actions
17
20
  Action["MANAGE"] = "MANAGE";
18
21
  Action["VIEW"] = "VIEW";
19
22
  Action["SEARCH"] = "SEARCH";
20
- // Access control
21
23
  Action["GRANT"] = "GRANT";
22
24
  Action["REVOKE"] = "REVOKE";
23
- // Medical specific
24
25
  Action["PRESCRIBE"] = "PRESCRIBE";
25
26
  Action["DIAGNOSE"] = "DIAGNOSE";
26
27
  Action["SCHEDULE"] = "SCHEDULE";
@@ -29,10 +30,8 @@ var Action;
29
30
  Action["REJECT"] = "REJECT";
30
31
  Action["SIGN"] = "SIGN";
31
32
  Action["VERIFY"] = "VERIFY";
32
- // Medical Account specific
33
33
  Action["RECOVER"] = "RECOVER";
34
34
  Action["DISABLE"] = "DISABLE";
35
- // Medical service specific
36
35
  Action["SET_MEDICAL_SERVICE_STATUS"] = "SET_MEDICAL_SERVICE_STATUS";
37
36
  Action["SET_MEDICAL_SERVICE_FEES"] = "SET_MEDICAL_SERVICE_FEES";
38
37
  Action["CHECK_IN"] = "CHECK_IN";
@@ -45,12 +44,10 @@ var Action;
45
44
  Action["UNDO_CANCEL_SERVICE"] = "UNDO_CANCEL_SERVICE";
46
45
  Action["FORCE_RESET_STATUS"] = "FORCE_RESET_STATUS";
47
46
  Action["CORRECT_TIMESTAMPS"] = "CORRECT_TIMESTAMPS";
48
- // Patient specific
49
47
  Action["UPDATE_STATUS"] = "UPDATE_STATUS";
50
48
  Action["VIEW_PATIENTS"] = "VIEW_PATIENTS";
51
49
  Action["PUT_PATIENT_PAYMENT"] = "PUT_PATIENT_PAYMENT";
52
50
  Action["DELETE_PATIENT_PAYMENT"] = "DELETE_PATIENT_PAYMENT";
53
- // Data operations
54
51
  Action["EXPORT"] = "EXPORT";
55
52
  Action["IMPORT"] = "IMPORT";
56
53
  Action["ARCHIVE"] = "ARCHIVE";
@@ -58,14 +55,12 @@ var Action;
58
55
  Action["SHARE"] = "SHARE";
59
56
  Action["DOWNLOAD"] = "DOWNLOAD";
60
57
  Action["UPLOAD"] = "UPLOAD";
61
- // Calendar sync operations
62
58
  Action["ENABLE_CALENDAR_SYNC"] = "ENABLE_CALENDAR_SYNC";
63
59
  Action["DISABLE_CALENDAR_SYNC"] = "DISABLE_CALENDAR_SYNC";
64
60
  Action["REGENERATE_CALENDAR_LINK"] = "REGENERATE_CALENDAR_LINK";
65
- // System operations
66
61
  Action["LOGIN"] = "LOGIN";
67
62
  Action["LOGOUT"] = "LOGOUT";
68
63
  Action["CONFIGURE"] = "CONFIGURE";
69
64
  Action["AUDIT"] = "AUDIT";
70
65
  })(Action || (exports.Action = Action = {}));
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb25zL2FjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCxJQUFZLE1BdUVYO0FBdkVELFdBQVksTUFBTTtJQUNoQixrQkFBa0I7SUFDbEIsMkJBQWlCLENBQUE7SUFDakIsdUJBQWEsQ0FBQTtJQUNiLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLHFCQUFXLENBQUE7SUFDWCx1QkFBYSxDQUFBO0lBRWIsa0JBQWtCO0lBQ2xCLDJCQUFpQixDQUFBO0lBQ2pCLHVCQUFhLENBQUE7SUFDYiwyQkFBaUIsQ0FBQTtJQUVqQixpQkFBaUI7SUFDakIseUJBQWUsQ0FBQTtJQUNmLDJCQUFpQixDQUFBO0lBRWpCLG1CQUFtQjtJQUNuQixpQ0FBdUIsQ0FBQTtJQUN2QiwrQkFBcUIsQ0FBQTtJQUNyQiwrQkFBcUIsQ0FBQTtJQUNyQiwyQkFBaUIsQ0FBQTtJQUNqQiw2QkFBbUIsQ0FBQTtJQUNuQiwyQkFBaUIsQ0FBQTtJQUNqQix1QkFBYSxDQUFBO0lBQ2IsMkJBQWlCLENBQUE7SUFFakIsMkJBQTJCO0lBQzNCLDZCQUFtQixDQUFBO0lBQ25CLDZCQUFtQixDQUFBO0lBRW5CLDJCQUEyQjtJQUMzQixtRUFBeUQsQ0FBQTtJQUN6RCwrREFBcUQsQ0FBQTtJQUNyRCwrQkFBcUIsQ0FBQTtJQUNyQix5Q0FBK0IsQ0FBQTtJQUMvQix5Q0FBK0IsQ0FBQTtJQUMvQiw2Q0FBbUMsQ0FBQTtJQUNuQywrQ0FBcUMsQ0FBQTtJQUNyQywrREFBcUQsQ0FBQTtJQUNyRCwyQ0FBaUMsQ0FBQTtJQUNqQyxxREFBMkMsQ0FBQTtJQUMzQyxtREFBeUMsQ0FBQTtJQUN6QyxtREFBeUMsQ0FBQTtJQUV6QyxtQkFBbUI7SUFDbkIseUNBQStCLENBQUE7SUFDL0IseUNBQStCLENBQUE7SUFDL0IscURBQTJDLENBQUE7SUFDM0MsMkRBQWlELENBQUE7SUFFakQsa0JBQWtCO0lBQ2xCLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLDZCQUFtQixDQUFBO0lBQ25CLDZCQUFtQixDQUFBO0lBQ25CLHlCQUFlLENBQUE7SUFDZiwrQkFBcUIsQ0FBQTtJQUNyQiwyQkFBaUIsQ0FBQTtJQUVqQiwyQkFBMkI7SUFDM0IsdURBQTZDLENBQUE7SUFDN0MseURBQStDLENBQUE7SUFDL0MsK0RBQXFELENBQUE7SUFFckQsb0JBQW9CO0lBQ3BCLHlCQUFlLENBQUE7SUFDZiwyQkFBaUIsQ0FBQTtJQUNqQixpQ0FBdUIsQ0FBQTtJQUN2Qix5QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUF2RVcsTUFBTSxzQkFBTixNQUFNLFFBdUVqQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQWN0aW9uIHR5cGVzIGZvciBvcGVyYXRpb25zXG4gKi9cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gIC8vIENSVUQgb3BlcmF0aW9uc1xuICBDUkVBVEUgPSAnQ1JFQVRFJyxcbiAgUkVBRCA9ICdSRUFEJyxcbiAgVVBEQVRFID0gJ1VQREFURScsXG4gIERFTEVURSA9ICdERUxFVEUnLFxuICBQVVQgPSAnUFVUJyxcbiAgTElTVCA9ICdMSVNUJyxcblxuICAvLyBHZW5lcmFsIGFjdGlvbnNcbiAgTUFOQUdFID0gJ01BTkFHRScsXG4gIFZJRVcgPSAnVklFVycsXG4gIFNFQVJDSCA9ICdTRUFSQ0gnLFxuXG4gIC8vIEFjY2VzcyBjb250cm9sXG4gIEdSQU5UID0gJ0dSQU5UJyxcbiAgUkVWT0tFID0gJ1JFVk9LRScsXG5cbiAgLy8gTWVkaWNhbCBzcGVjaWZpY1xuICBQUkVTQ1JJQkUgPSAnUFJFU0NSSUJFJyxcbiAgRElBR05PU0UgPSAnRElBR05PU0UnLFxuICBTQ0hFRFVMRSA9ICdTQ0hFRFVMRScsXG4gIENBTkNFTCA9ICdDQU5DRUwnLFxuICBBUFBST1ZFID0gJ0FQUFJPVkUnLFxuICBSRUpFQ1QgPSAnUkVKRUNUJyxcbiAgU0lHTiA9ICdTSUdOJyxcbiAgVkVSSUZZID0gJ1ZFUklGWScsXG5cbiAgLy8gTWVkaWNhbCBBY2NvdW50IHNwZWNpZmljXG4gIFJFQ09WRVIgPSAnUkVDT1ZFUicsXG4gIERJU0FCTEUgPSAnRElTQUJMRScsXG5cbiAgLy8gTWVkaWNhbCBzZXJ2aWNlIHNwZWNpZmljXG4gIFNFVF9NRURJQ0FMX1NFUlZJQ0VfU1RBVFVTID0gJ1NFVF9NRURJQ0FMX1NFUlZJQ0VfU1RBVFVTJyxcbiAgU0VUX01FRElDQUxfU0VSVklDRV9GRUVTID0gJ1NFVF9NRURJQ0FMX1NFUlZJQ0VfRkVFUycsXG4gIENIRUNLX0lOID0gJ0NIRUNLX0lOJyxcbiAgVU5ET19DSEVDS19JTiA9ICdVTkRPX0NIRUNLX0lOJyxcbiAgU1RBUlRfU0VSVklDRSA9ICdTVEFSVF9TRVJWSUNFJyxcbiAgVU5TVEFSVF9TRVJWSUNFID0gJ1VOU1RBUlRfU0VSVklDRScsXG4gIENPTVBMRVRFX1NFUlZJQ0UgPSAnQ09NUExFVEVfU0VSVklDRScsXG4gIFJFT1BFTl9DT01QTEVURURfU0VSVklDRSA9ICdSRU9QRU5fQ09NUExFVEVEX1NFUlZJQ0UnLFxuICBDQU5DRUxfU0VSVklDRSA9ICdDQU5DRUxfU0VSVklDRScsXG4gIFVORE9fQ0FOQ0VMX1NFUlZJQ0UgPSAnVU5ET19DQU5DRUxfU0VSVklDRScsXG4gIEZPUkNFX1JFU0VUX1NUQVRVUyA9ICdGT1JDRV9SRVNFVF9TVEFUVVMnLFxuICBDT1JSRUNUX1RJTUVTVEFNUFMgPSAnQ09SUkVDVF9USU1FU1RBTVBTJyxcblxuICAvLyBQYXRpZW50IHNwZWNpZmljXG4gIFVQREFURV9TVEFUVVMgPSAnVVBEQVRFX1NUQVRVUycsXG4gIFZJRVdfUEFUSUVOVFMgPSAnVklFV19QQVRJRU5UUycsXG4gIFBVVF9QQVRJRU5UX1BBWU1FTlQgPSAnUFVUX1BBVElFTlRfUEFZTUVOVCcsXG4gIERFTEVURV9QQVRJRU5UX1BBWU1FTlQgPSAnREVMRVRFX1BBVElFTlRfUEFZTUVOVCcsXG5cbiAgLy8gRGF0YSBvcGVyYXRpb25zXG4gIEVYUE9SVCA9ICdFWFBPUlQnLFxuICBJTVBPUlQgPSAnSU1QT1JUJyxcbiAgQVJDSElWRSA9ICdBUkNISVZFJyxcbiAgUkVTVE9SRSA9ICdSRVNUT1JFJyxcbiAgU0hBUkUgPSAnU0hBUkUnLFxuICBET1dOTE9BRCA9ICdET1dOTE9BRCcsXG4gIFVQTE9BRCA9ICdVUExPQUQnLFxuXG4gIC8vIENhbGVuZGFyIHN5bmMgb3BlcmF0aW9uc1xuICBFTkFCTEVfQ0FMRU5EQVJfU1lOQyA9ICdFTkFCTEVfQ0FMRU5EQVJfU1lOQycsXG4gIERJU0FCTEVfQ0FMRU5EQVJfU1lOQyA9ICdESVNBQkxFX0NBTEVOREFSX1NZTkMnLFxuICBSRUdFTkVSQVRFX0NBTEVOREFSX0xJTksgPSAnUkVHRU5FUkFURV9DQUxFTkRBUl9MSU5LJyxcblxuICAvLyBTeXN0ZW0gb3BlcmF0aW9uc1xuICBMT0dJTiA9ICdMT0dJTicsXG4gIExPR09VVCA9ICdMT0dPVVQnLFxuICBDT05GSUdVUkUgPSAnQ09ORklHVVJFJyxcbiAgQVVESVQgPSAnQVVESVQnLFxufVxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb25zL2FjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7OztHQU1HO0FBQ0gsSUFBWSxNQThEWDtBQTlERCxXQUFZLE1BQU07SUFDaEIsMkJBQWlCLENBQUE7SUFDakIsdUJBQWEsQ0FBQTtJQUNiLDJCQUFpQixDQUFBO0lBQ2pCLCtCQUFxQixDQUFBO0lBQ3JCLDJCQUFpQixDQUFBO0lBQ2pCLHFCQUFXLENBQUE7SUFDWCx1QkFBYSxDQUFBO0lBRWIsMkJBQWlCLENBQUE7SUFDakIsdUJBQWEsQ0FBQTtJQUNiLDJCQUFpQixDQUFBO0lBRWpCLHlCQUFlLENBQUE7SUFDZiwyQkFBaUIsQ0FBQTtJQUVqQixpQ0FBdUIsQ0FBQTtJQUN2QiwrQkFBcUIsQ0FBQTtJQUNyQiwrQkFBcUIsQ0FBQTtJQUNyQiwyQkFBaUIsQ0FBQTtJQUNqQiw2QkFBbUIsQ0FBQTtJQUNuQiwyQkFBaUIsQ0FBQTtJQUNqQix1QkFBYSxDQUFBO0lBQ2IsMkJBQWlCLENBQUE7SUFFakIsNkJBQW1CLENBQUE7SUFDbkIsNkJBQW1CLENBQUE7SUFFbkIsbUVBQXlELENBQUE7SUFDekQsK0RBQXFELENBQUE7SUFDckQsK0JBQXFCLENBQUE7SUFDckIseUNBQStCLENBQUE7SUFDL0IseUNBQStCLENBQUE7SUFDL0IsNkNBQW1DLENBQUE7SUFDbkMsK0NBQXFDLENBQUE7SUFDckMsK0RBQXFELENBQUE7SUFDckQsMkNBQWlDLENBQUE7SUFDakMscURBQTJDLENBQUE7SUFDM0MsbURBQXlDLENBQUE7SUFDekMsbURBQXlDLENBQUE7SUFFekMseUNBQStCLENBQUE7SUFDL0IseUNBQStCLENBQUE7SUFDL0IscURBQTJDLENBQUE7SUFDM0MsMkRBQWlELENBQUE7SUFFakQsMkJBQWlCLENBQUE7SUFDakIsMkJBQWlCLENBQUE7SUFDakIsNkJBQW1CLENBQUE7SUFDbkIsNkJBQW1CLENBQUE7SUFDbkIseUJBQWUsQ0FBQTtJQUNmLCtCQUFxQixDQUFBO0lBQ3JCLDJCQUFpQixDQUFBO0lBRWpCLHVEQUE2QyxDQUFBO0lBQzdDLHlEQUErQyxDQUFBO0lBQy9DLCtEQUFxRCxDQUFBO0lBRXJELHlCQUFlLENBQUE7SUFDZiwyQkFBaUIsQ0FBQTtJQUNqQixpQ0FBdUIsQ0FBQTtJQUN2Qix5QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUE5RFcsTUFBTSxzQkFBTixNQUFNLFFBOERqQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQWN0aW9uIHR5cGVzIGZvciBvcGVyYXRpb25zLlxuICpcbiAqIFRoZSBHcmFwaFFMIHNjaGVtYSdzIEFjdGlvblR5cGUgZW51bSBpcyBpbnRlbnRpb25hbGx5IG5vdCB0cmVhdGVkIGFzIHRoZVxuICogc291cmNlIG9mIHRydXRoIGhlcmUuIFRoaXMgcGFja2FnZSBrZWVwcyBhIHJpY2hlciBhcHBsaWNhdGlvbi1sZXZlbCBhY3Rpb25cbiAqIHZvY2FidWxhcnkgZm9yIGF1dGhvcml6YXRpb24sIGF1ZGl0IGxvZ2dpbmcsIGFuZCBVSSBsYWJlbHMuXG4gKi9cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gIENSRUFURSA9ICdDUkVBVEUnLFxuICBSRUFEID0gJ1JFQUQnLFxuICBERUxFVEUgPSAnREVMRVRFJyxcbiAgUkVUUklFVkUgPSAnUkVUUklFVkUnLFxuICBVUERBVEUgPSAnVVBEQVRFJyxcbiAgUFVUID0gJ1BVVCcsXG4gIExJU1QgPSAnTElTVCcsXG5cbiAgTUFOQUdFID0gJ01BTkFHRScsXG4gIFZJRVcgPSAnVklFVycsXG4gIFNFQVJDSCA9ICdTRUFSQ0gnLFxuXG4gIEdSQU5UID0gJ0dSQU5UJyxcbiAgUkVWT0tFID0gJ1JFVk9LRScsXG5cbiAgUFJFU0NSSUJFID0gJ1BSRVNDUklCRScsXG4gIERJQUdOT1NFID0gJ0RJQUdOT1NFJyxcbiAgU0NIRURVTEUgPSAnU0NIRURVTEUnLFxuICBDQU5DRUwgPSAnQ0FOQ0VMJyxcbiAgQVBQUk9WRSA9ICdBUFBST1ZFJyxcbiAgUkVKRUNUID0gJ1JFSkVDVCcsXG4gIFNJR04gPSAnU0lHTicsXG4gIFZFUklGWSA9ICdWRVJJRlknLFxuXG4gIFJFQ09WRVIgPSAnUkVDT1ZFUicsXG4gIERJU0FCTEUgPSAnRElTQUJMRScsXG5cbiAgU0VUX01FRElDQUxfU0VSVklDRV9TVEFUVVMgPSAnU0VUX01FRElDQUxfU0VSVklDRV9TVEFUVVMnLFxuICBTRVRfTUVESUNBTF9TRVJWSUNFX0ZFRVMgPSAnU0VUX01FRElDQUxfU0VSVklDRV9GRUVTJyxcbiAgQ0hFQ0tfSU4gPSAnQ0hFQ0tfSU4nLFxuICBVTkRPX0NIRUNLX0lOID0gJ1VORE9fQ0hFQ0tfSU4nLFxuICBTVEFSVF9TRVJWSUNFID0gJ1NUQVJUX1NFUlZJQ0UnLFxuICBVTlNUQVJUX1NFUlZJQ0UgPSAnVU5TVEFSVF9TRVJWSUNFJyxcbiAgQ09NUExFVEVfU0VSVklDRSA9ICdDT01QTEVURV9TRVJWSUNFJyxcbiAgUkVPUEVOX0NPTVBMRVRFRF9TRVJWSUNFID0gJ1JFT1BFTl9DT01QTEVURURfU0VSVklDRScsXG4gIENBTkNFTF9TRVJWSUNFID0gJ0NBTkNFTF9TRVJWSUNFJyxcbiAgVU5ET19DQU5DRUxfU0VSVklDRSA9ICdVTkRPX0NBTkNFTF9TRVJWSUNFJyxcbiAgRk9SQ0VfUkVTRVRfU1RBVFVTID0gJ0ZPUkNFX1JFU0VUX1NUQVRVUycsXG4gIENPUlJFQ1RfVElNRVNUQU1QUyA9ICdDT1JSRUNUX1RJTUVTVEFNUFMnLFxuXG4gIFVQREFURV9TVEFUVVMgPSAnVVBEQVRFX1NUQVRVUycsXG4gIFZJRVdfUEFUSUVOVFMgPSAnVklFV19QQVRJRU5UUycsXG4gIFBVVF9QQVRJRU5UX1BBWU1FTlQgPSAnUFVUX1BBVElFTlRfUEFZTUVOVCcsXG4gIERFTEVURV9QQVRJRU5UX1BBWU1FTlQgPSAnREVMRVRFX1BBVElFTlRfUEFZTUVOVCcsXG5cbiAgRVhQT1JUID0gJ0VYUE9SVCcsXG4gIElNUE9SVCA9ICdJTVBPUlQnLFxuICBBUkNISVZFID0gJ0FSQ0hJVkUnLFxuICBSRVNUT1JFID0gJ1JFU1RPUkUnLFxuICBTSEFSRSA9ICdTSEFSRScsXG4gIERPV05MT0FEID0gJ0RPV05MT0FEJyxcbiAgVVBMT0FEID0gJ1VQTE9BRCcsXG5cbiAgRU5BQkxFX0NBTEVOREFSX1NZTkMgPSAnRU5BQkxFX0NBTEVOREFSX1NZTkMnLFxuICBESVNBQkxFX0NBTEVOREFSX1NZTkMgPSAnRElTQUJMRV9DQUxFTkRBUl9TWU5DJyxcbiAgUkVHRU5FUkFURV9DQUxFTkRBUl9MSU5LID0gJ1JFR0VORVJBVEVfQ0FMRU5EQVJfTElOSycsXG5cbiAgTE9HSU4gPSAnTE9HSU4nLFxuICBMT0dPVVQgPSAnTE9HT1VUJyxcbiAgQ09ORklHVVJFID0gJ0NPTkZJR1VSRScsXG4gIEFVRElUID0gJ0FVRElUJyxcbn1cbiJdfQ==
@@ -9,8 +9,9 @@ const resources_1 = require("./resources");
9
9
  const enAction = {
10
10
  [actions_1.Action.CREATE]: 'Create',
11
11
  [actions_1.Action.READ]: 'Read',
12
- [actions_1.Action.UPDATE]: 'Update',
13
12
  [actions_1.Action.DELETE]: 'Delete',
13
+ [actions_1.Action.RETRIEVE]: 'Retrieve',
14
+ [actions_1.Action.UPDATE]: 'Update',
14
15
  [actions_1.Action.PUT]: 'Put',
15
16
  [actions_1.Action.LIST]: 'List',
16
17
  [actions_1.Action.MANAGE]: 'Manage',
@@ -41,9 +42,9 @@ const enAction = {
41
42
  [actions_1.Action.FORCE_RESET_STATUS]: 'Force Reset Status',
42
43
  [actions_1.Action.CORRECT_TIMESTAMPS]: 'Correct Timestamps',
43
44
  [actions_1.Action.UPDATE_STATUS]: 'Update Status',
44
- [actions_1.Action.VIEW_PATIENTS]: 'View patients',
45
- [actions_1.Action.PUT_PATIENT_PAYMENT]: 'Put patient payment',
46
- [actions_1.Action.DELETE_PATIENT_PAYMENT]: 'Delete patient payment',
45
+ [actions_1.Action.VIEW_PATIENTS]: 'View Patients',
46
+ [actions_1.Action.PUT_PATIENT_PAYMENT]: 'Put Patient Payment',
47
+ [actions_1.Action.DELETE_PATIENT_PAYMENT]: 'Delete Patient Payment',
47
48
  [actions_1.Action.EXPORT]: 'Export',
48
49
  [actions_1.Action.IMPORT]: 'Import',
49
50
  [actions_1.Action.ARCHIVE]: 'Archive',
@@ -51,23 +52,27 @@ const enAction = {
51
52
  [actions_1.Action.SHARE]: 'Share',
52
53
  [actions_1.Action.DOWNLOAD]: 'Download',
53
54
  [actions_1.Action.UPLOAD]: 'Upload',
55
+ [actions_1.Action.ENABLE_CALENDAR_SYNC]: 'Enable Calendar Sync',
56
+ [actions_1.Action.DISABLE_CALENDAR_SYNC]: 'Disable Calendar Sync',
57
+ [actions_1.Action.REGENERATE_CALENDAR_LINK]: 'Regenerate Calendar Link',
54
58
  [actions_1.Action.LOGIN]: 'Login',
55
59
  [actions_1.Action.LOGOUT]: 'Logout',
56
60
  [actions_1.Action.CONFIGURE]: 'Configure',
57
61
  [actions_1.Action.AUDIT]: 'Audit',
58
62
  };
59
63
  const frAction = {
60
- [actions_1.Action.CREATE]: 'Créer',
64
+ [actions_1.Action.CREATE]: 'Creer',
61
65
  [actions_1.Action.READ]: 'Lire',
62
- [actions_1.Action.UPDATE]: 'Mettre à jour',
63
66
  [actions_1.Action.DELETE]: 'Supprimer',
67
+ [actions_1.Action.RETRIEVE]: 'Recuperer',
68
+ [actions_1.Action.UPDATE]: 'Mettre a jour',
64
69
  [actions_1.Action.PUT]: 'Mettre',
65
70
  [actions_1.Action.LIST]: 'Lister',
66
- [actions_1.Action.MANAGE]: 'Gérer',
71
+ [actions_1.Action.MANAGE]: 'Gerer',
67
72
  [actions_1.Action.VIEW]: 'Voir',
68
73
  [actions_1.Action.SEARCH]: 'Rechercher',
69
74
  [actions_1.Action.GRANT]: 'Accorder',
70
- [actions_1.Action.REVOKE]: 'Révoquer',
75
+ [actions_1.Action.REVOKE]: 'Revoquer',
71
76
  [actions_1.Action.PRESCRIBE]: 'Prescrire',
72
77
  [actions_1.Action.DIAGNOSE]: 'Diagnostiquer',
73
78
  [actions_1.Action.SCHEDULE]: 'Planifier',
@@ -75,22 +80,22 @@ const frAction = {
75
80
  [actions_1.Action.APPROVE]: 'Approuver',
76
81
  [actions_1.Action.REJECT]: 'Rejeter',
77
82
  [actions_1.Action.SIGN]: 'Signer',
78
- [actions_1.Action.VERIFY]: 'Vérifier',
79
- [actions_1.Action.RECOVER]: 'Récupérer',
80
- [actions_1.Action.DISABLE]: 'Désactiver',
81
- [actions_1.Action.SET_MEDICAL_SERVICE_STATUS]: 'Définir le statut du service médical',
82
- [actions_1.Action.SET_MEDICAL_SERVICE_FEES]: 'Définir les frais du service médical',
83
- [actions_1.Action.CHECK_IN]: "Enregistrement à l'arrivée",
84
- [actions_1.Action.UNDO_CHECK_IN]: "Annuler l'enregistrement",
83
+ [actions_1.Action.VERIFY]: 'Verifier',
84
+ [actions_1.Action.RECOVER]: 'Recuperer',
85
+ [actions_1.Action.DISABLE]: 'Desactiver',
86
+ [actions_1.Action.SET_MEDICAL_SERVICE_STATUS]: 'Definir le statut du service medical',
87
+ [actions_1.Action.SET_MEDICAL_SERVICE_FEES]: 'Definir les frais du service medical',
88
+ [actions_1.Action.CHECK_IN]: 'Enregistrement a l arrivee',
89
+ [actions_1.Action.UNDO_CHECK_IN]: 'Annuler l enregistrement',
85
90
  [actions_1.Action.START_SERVICE]: 'Commencer le service',
86
- [actions_1.Action.UNSTART_SERVICE]: 'Annuler le début du service',
91
+ [actions_1.Action.UNSTART_SERVICE]: 'Annuler le debut du service',
87
92
  [actions_1.Action.COMPLETE_SERVICE]: 'Terminer le service',
88
- [actions_1.Action.REOPEN_COMPLETED_SERVICE]: 'Réouvrir le service terminé',
93
+ [actions_1.Action.REOPEN_COMPLETED_SERVICE]: 'Reouvrir le service termine',
89
94
  [actions_1.Action.CANCEL_SERVICE]: 'Annuler le service',
90
- [actions_1.Action.UNDO_CANCEL_SERVICE]: "Annuler l'annulation du service",
91
- [actions_1.Action.FORCE_RESET_STATUS]: 'Réinitialiser le statut (Force)',
95
+ [actions_1.Action.UNDO_CANCEL_SERVICE]: 'Annuler l annulation du service',
96
+ [actions_1.Action.FORCE_RESET_STATUS]: 'Reinitialiser le statut',
92
97
  [actions_1.Action.CORRECT_TIMESTAMPS]: 'Corriger les horodatages',
93
- [actions_1.Action.UPDATE_STATUS]: 'Mettre à jour le statut',
98
+ [actions_1.Action.UPDATE_STATUS]: 'Mettre a jour le statut',
94
99
  [actions_1.Action.VIEW_PATIENTS]: 'Voir les patients',
95
100
  [actions_1.Action.PUT_PATIENT_PAYMENT]: 'Enregistrer le paiement patient',
96
101
  [actions_1.Action.DELETE_PATIENT_PAYMENT]: 'Supprimer le paiement patient',
@@ -99,63 +104,60 @@ const frAction = {
99
104
  [actions_1.Action.ARCHIVE]: 'Archiver',
100
105
  [actions_1.Action.RESTORE]: 'Restaurer',
101
106
  [actions_1.Action.SHARE]: 'Partager',
102
- [actions_1.Action.DOWNLOAD]: 'Télécharger',
103
- [actions_1.Action.UPLOAD]: 'Téléverser',
107
+ [actions_1.Action.DOWNLOAD]: 'Telecharger',
108
+ [actions_1.Action.UPLOAD]: 'Televerser',
109
+ [actions_1.Action.ENABLE_CALENDAR_SYNC]: 'Activer la synchronisation du calendrier',
110
+ [actions_1.Action.DISABLE_CALENDAR_SYNC]: 'Desactiver la synchronisation du calendrier',
111
+ [actions_1.Action.REGENERATE_CALENDAR_LINK]: 'Regenerer le lien du calendrier',
104
112
  [actions_1.Action.LOGIN]: 'Connexion',
105
- [actions_1.Action.LOGOUT]: 'Déconnexion',
113
+ [actions_1.Action.LOGOUT]: 'Deconnexion',
106
114
  [actions_1.Action.CONFIGURE]: 'Configurer',
107
115
  [actions_1.Action.AUDIT]: 'Auditer',
108
116
  };
109
- // For resources we provide a few explicit French overrides and default to humanized names
110
117
  const frResourceOverrides = {
111
118
  [resources_1.Resource.ACCOUNT]: 'Compte',
112
- [resources_1.Resource.ACCOUNT_OWNERSHIP]: 'Propriété du compte',
113
- [resources_1.Resource.ACCOUNT_PREFERENCES]: 'Préférences du compte',
114
- [resources_1.Resource.USER]: 'Utilisateur',
119
+ [resources_1.Resource.ACCOUNT_GENERAL_SETTINGS]: 'Parametres generaux du compte',
120
+ [resources_1.Resource.ACCOUNT_LOCATION]: 'Lieu du compte',
121
+ [resources_1.Resource.ACCOUNT_PREFERENCES]: 'Preferences du compte',
122
+ [resources_1.Resource.ACCOUNT_SUMMARY]: 'Resume du compte',
123
+ [resources_1.Resource.AVAILABLE_SLOT]: 'Creneau disponible',
124
+ [resources_1.Resource.CALCULATED_MEASURE_MODEL]: 'Modele de mesure calculee',
125
+ [resources_1.Resource.CALENDAR_SYNC]: 'Synchronisation du calendrier',
126
+ [resources_1.Resource.CALENDAR_TOKEN]: 'Jeton de calendrier',
115
127
  [resources_1.Resource.CONTACT]: 'Contact',
128
+ [resources_1.Resource.DOCUMENT_LAYOUT]: 'Mise en page du document',
129
+ [resources_1.Resource.DOCUMENT_MODEL]: 'Modele de document',
130
+ [resources_1.Resource.GENERATED_DOCUMENT]: 'Document genere',
131
+ [resources_1.Resource.LOG_RECORD]: 'Journal',
132
+ [resources_1.Resource.MEASURE_MODEL]: 'Modele de mesure',
133
+ [resources_1.Resource.MEDICAL_HISTORY]: 'Antecedents medicaux',
134
+ [resources_1.Resource.MEDICAL_HISTORY_MODEL]: "Modele d'antecedents medicaux",
135
+ [resources_1.Resource.MEDICAL_SERVICE]: 'Service medical',
136
+ [resources_1.Resource.MEDICAL_SERVICE_ASSIGNEES]: 'Assignations du service medical',
137
+ [resources_1.Resource.MEDICAL_SERVICE_DESCRIPTION]: 'Description du service medical',
138
+ [resources_1.Resource.MEDICAL_SERVICE_FEES]: 'Frais du service medical',
139
+ [resources_1.Resource.MEDICAL_SERVICE_LOCATION]: 'Lieu du service medical',
140
+ [resources_1.Resource.MEDICAL_SERVICE_NOTE]: 'Note du service medical',
141
+ [resources_1.Resource.MEDICAL_SERVICE_SCHEDULE]: 'Planning du service medical',
142
+ [resources_1.Resource.MEDICAL_SERVICE_STATUS]: 'Statut du service medical',
143
+ [resources_1.Resource.MEDICAL_SERVICE_TIMESTAMPS]: 'Horodatages du service medical',
144
+ [resources_1.Resource.MEMBERSHIP]: 'Adhesion',
145
+ [resources_1.Resource.MEDICATION]: 'Medicament',
146
+ [resources_1.Resource.OBSERVATION]: 'Observation',
116
147
  [resources_1.Resource.PATIENT]: 'Patient',
117
- [resources_1.Resource.PATIENT_MEDICAL_NOTES]: 'Notes médicales du patient',
118
- [resources_1.Resource.PATIENT_MEDICAL_PROPERTIES]: 'Propriétés médicales du patient',
119
- [resources_1.Resource.PATIENT_PUBLIC_PROPERTIES]: 'Propriétés publiques du patient',
148
+ [resources_1.Resource.PATIENT_MEDICAL_NOTES]: 'Notes medicales du patient',
149
+ [resources_1.Resource.PATIENT_MEDICAL_PROPERTIES]: 'Proprietes medicales du patient',
120
150
  [resources_1.Resource.PATIENT_PAYMENT]: 'Paiement du patient',
121
- [resources_1.Resource.MEDICAL_SERVICE]: 'Service médical',
122
- [resources_1.Resource.MEDICAL_SERVICE_NOTE]: 'Note du service médical',
123
- [resources_1.Resource.MEDICAL_SERVICE_SCHEDULE]: 'Planification du service médical',
124
- [resources_1.Resource.MEDICAL_SERVICE_FEES]: 'Frais du service médical',
125
- [resources_1.Resource.MEDICAL_SERVICE_STATUS]: 'Statut du service médical',
126
- [resources_1.Resource.MEDICAL_NOTE]: 'Note médicale',
127
- [resources_1.Resource.MEDICAL_RECORD]: 'Dossier médical',
128
- [resources_1.Resource.MEDICAL_HISTORY]: 'Antécédents médicaux',
129
- [resources_1.Resource.MEDICAL_HISTORY_MODEL]: "Modèle d'antécédents médicaux",
151
+ [resources_1.Resource.PATIENT_PROFILE]: 'Profil du patient',
152
+ [resources_1.Resource.PATIENT_PUBLIC_PROPERTIES]: 'Proprietes publiques du patient',
153
+ [resources_1.Resource.PATIENT_STATUS]: 'Statut du patient',
130
154
  [resources_1.Resource.PRESCRIPTION]: 'Ordonnance',
131
- [resources_1.Resource.PRESCRIPTION_MODEL]: "Modèle d'ordonnance",
132
- [resources_1.Resource.DIAGNOSIS]: 'Diagnostic',
133
- [resources_1.Resource.OBSERVATION]: 'Observation',
134
- [resources_1.Resource.MEDICATION]: 'Médication',
135
- [resources_1.Resource.ALLERGY]: 'Allergie',
136
- [resources_1.Resource.IMMUNIZATION]: 'Vaccination',
137
- [resources_1.Resource.PROCEDURE]: 'Procédure',
138
- [resources_1.Resource.CLINICAL_NOTE]: 'Note clinique',
139
- [resources_1.Resource.VITAL_SIGNS]: 'Signes vitaux',
140
- [resources_1.Resource.MEASURE_MODEL]: 'Modèle de mesure',
141
- [resources_1.Resource.CALCULATED_MEASURE_MODEL]: 'Modèle de mesure calculée',
142
- [resources_1.Resource.UPLOADED_DOCUMENT]: 'Document téléversé',
143
- [resources_1.Resource.DOCUMENT_LAYOUT]: 'Mise en page du document',
144
- [resources_1.Resource.GENERATED_DOCUMENT]: 'Document généré',
145
- [resources_1.Resource.DOCUMENT_MODEL]: 'Modèle de document',
146
- [resources_1.Resource.SNIPPET]: 'Extrait',
147
- [resources_1.Resource.LOCATION]: 'Lieu',
148
- [resources_1.Resource.TASK_TYPE]: 'Type de tâche',
149
- [resources_1.Resource.LAB_RESULT]: 'Résultat de laboratoire',
150
- [resources_1.Resource.IMAGING]: 'Imagerie',
151
- [resources_1.Resource.MEMBERSHIP]: 'Adhésion',
152
- [resources_1.Resource.SETTINGS]: 'Paramètres',
153
- [resources_1.Resource.NOTIFICATION]: 'Notification',
154
- [resources_1.Resource.REPORT]: 'Rapport',
155
- [resources_1.Resource.AUDIT_LOG]: "Journal d'audit",
156
- [resources_1.Resource.SYSTEM]: 'Système',
157
- [resources_1.Resource.PUBLIC_RESOURCE]: 'Ressource publique',
158
- [resources_1.Resource.MEDICAL_RESOURCE]: 'Ressource médicale',
155
+ [resources_1.Resource.PRESCRIPTION_MODEL]: "Modele d'ordonnance",
156
+ [resources_1.Resource.TASK_TYPE]: 'Type de tache',
157
+ [resources_1.Resource.UPLOAD_DOCUMENT]: 'Document televerse',
158
+ [resources_1.Resource.USER]: 'Utilisateur',
159
+ [resources_1.Resource.USER_CALENDAR_PREFERENCES]: 'Preferences de calendrier utilisateur',
160
+ [resources_1.Resource.USER_PREFERENCES]: 'Preferences utilisateur',
159
161
  };
160
162
  function humanizeKey(key) {
161
163
  return key
@@ -165,9 +167,7 @@ function humanizeKey(key) {
165
167
  .join(' ');
166
168
  }
167
169
  function getActionLabel(action, locale = 'us-EN') {
168
- if (locale === 'fr-FR')
169
- return frAction[action] ?? humanizeKey(action);
170
- return enAction[action] ?? humanizeKey(action);
170
+ return locale === 'fr-FR' ? frAction[action] : enAction[action];
171
171
  }
172
172
  function getResourceLabel(resource, locale = 'us-EN') {
173
173
  if (locale === 'fr-FR')
@@ -184,4 +184,4 @@ function getOperationLabel(operation, locale = 'us-EN', opts) {
184
184
  const r = getResourceLabel(op.resource, locale);
185
185
  return order === 'resource-action' ? `${r}${sep}${a}` : `${a}${sep}${r}`;
186
186
  }
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvbGFiZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBeUtBLHdDQUdDO0FBRUQsNENBR0M7QUFFRCw4Q0FhQztBQWhNRCx1Q0FBbUM7QUFDbkMsMkNBQXdDO0FBQ3hDLDJDQUF1QztBQUt2QyxNQUFNLFFBQVEsR0FBb0M7SUFDaEQsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUs7SUFDbkIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87SUFDdkIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFdBQVc7SUFDL0IsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDM0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDM0IsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDM0IsQ0FBQyxnQkFBTSxDQUFDLDBCQUEwQixDQUFDLEVBQUUsNEJBQTRCO0lBQ2pFLENBQUMsZ0JBQU0sQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLDBCQUEwQjtJQUM3RCxDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVTtJQUM3QixDQUFDLGdCQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsZUFBZTtJQUN2QyxDQUFDLGdCQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsZUFBZTtJQUN2QyxDQUFDLGdCQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsb0JBQW9CO0lBQzlDLENBQUMsZ0JBQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGtCQUFrQjtJQUM3QyxDQUFDLGdCQUFNLENBQUMsd0JBQXdCLENBQUMsRUFBRSwwQkFBMEI7SUFDN0QsQ0FBQyxnQkFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLGdCQUFnQjtJQUN6QyxDQUFDLGdCQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRSxxQkFBcUI7SUFDbkQsQ0FBQyxnQkFBTSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsb0JBQW9CO0lBQ2pELENBQUMsZ0JBQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLG9CQUFvQjtJQUNqRCxDQUFDLGdCQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsZUFBZTtJQUN2QyxDQUFDLGdCQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsZUFBZTtJQUN2QyxDQUFDLGdCQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRSxxQkFBcUI7SUFDbkQsQ0FBQyxnQkFBTSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsd0JBQXdCO0lBQ3pELENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxRQUFRO0lBQ3pCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxRQUFRO0lBQ3pCLENBQUMsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTO0lBQzNCLENBQUMsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTO0lBQzNCLENBQUMsZ0JBQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPO0lBQ3ZCLENBQUMsZ0JBQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVO0lBQzdCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxRQUFRO0lBQ3pCLENBQUMsZ0JBQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPO0lBQ3ZCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxRQUFRO0lBQ3pCLENBQUMsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxXQUFXO0lBQy9CLENBQUMsZ0JBQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPO0NBQ3hCLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBb0M7SUFDaEQsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU87SUFDeEIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLGVBQWU7SUFDaEMsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQVc7SUFDNUIsQ0FBQyxnQkFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVE7SUFDdEIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVE7SUFDdkIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU87SUFDeEIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFlBQVk7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVU7SUFDMUIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFVBQVU7SUFDM0IsQ0FBQyxnQkFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFdBQVc7SUFDL0IsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLGVBQWU7SUFDbEMsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFdBQVc7SUFDOUIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVM7SUFDMUIsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFdBQVc7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVM7SUFDMUIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVE7SUFDdkIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFVBQVU7SUFDM0IsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFdBQVc7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFlBQVk7SUFDOUIsQ0FBQyxnQkFBTSxDQUFDLDBCQUEwQixDQUFDLEVBQUUsc0NBQXNDO0lBQzNFLENBQUMsZ0JBQU0sQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLHNDQUFzQztJQUN6RSxDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsNEJBQTRCO0lBQy9DLENBQUMsZ0JBQU0sQ0FBQyxhQUFhLENBQUMsRUFBRSwwQkFBMEI7SUFDbEQsQ0FBQyxnQkFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLHNCQUFzQjtJQUM5QyxDQUFDLGdCQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsNkJBQTZCO0lBQ3ZELENBQUMsZ0JBQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLHFCQUFxQjtJQUNoRCxDQUFDLGdCQUFNLENBQUMsd0JBQXdCLENBQUMsRUFBRSw2QkFBNkI7SUFDaEUsQ0FBQyxnQkFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLG9CQUFvQjtJQUM3QyxDQUFDLGdCQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRSxpQ0FBaUM7SUFDL0QsQ0FBQyxnQkFBTSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsaUNBQWlDO0lBQzlELENBQUMsZ0JBQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLDBCQUEwQjtJQUN2RCxDQUFDLGdCQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUseUJBQXlCO0lBQ2pELENBQUMsZ0JBQU0sQ0FBQyxhQUFhLENBQUMsRUFBRSxtQkFBbUI7SUFDM0MsQ0FBQyxnQkFBTSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsaUNBQWlDO0lBQy9ELENBQUMsZ0JBQU0sQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLCtCQUErQjtJQUNoRSxDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVTtJQUMzQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVTtJQUMzQixDQUFDLGdCQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsVUFBVTtJQUM1QixDQUFDLGdCQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsV0FBVztJQUM3QixDQUFDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVTtJQUMxQixDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsYUFBYTtJQUNoQyxDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsWUFBWTtJQUM3QixDQUFDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsV0FBVztJQUMzQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsYUFBYTtJQUM5QixDQUFDLGdCQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWTtJQUNoQyxDQUFDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUztDQUMxQixDQUFDO0FBRUYsMEZBQTBGO0FBQzFGLE1BQU0sbUJBQW1CLEdBQXNDO0lBQzdELENBQUMsb0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRO0lBQzVCLENBQUMsb0JBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLHFCQUFxQjtJQUNuRCxDQUFDLG9CQUFRLENBQUMsbUJBQW1CLENBQUMsRUFBRSx1QkFBdUI7SUFDdkQsQ0FBQyxvQkFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLGFBQWE7SUFDOUIsQ0FBQyxvQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDN0IsQ0FBQyxvQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDN0IsQ0FBQyxvQkFBUSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsNEJBQTRCO0lBQzlELENBQUMsb0JBQVEsQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLGlDQUFpQztJQUN4RSxDQUFDLG9CQUFRLENBQUMseUJBQXlCLENBQUMsRUFBRSxpQ0FBaUM7SUFDdkUsQ0FBQyxvQkFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLHFCQUFxQjtJQUNqRCxDQUFDLG9CQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsaUJBQWlCO0lBQzdDLENBQUMsb0JBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLHlCQUF5QjtJQUMxRCxDQUFDLG9CQUFRLENBQUMsd0JBQXdCLENBQUMsRUFBRSxrQ0FBa0M7SUFDdkUsQ0FBQyxvQkFBUSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsMEJBQTBCO0lBQzNELENBQUMsb0JBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLDJCQUEyQjtJQUM5RCxDQUFDLG9CQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsZUFBZTtJQUN4QyxDQUFDLG9CQUFRLENBQUMsY0FBYyxDQUFDLEVBQUUsaUJBQWlCO0lBQzVDLENBQUMsb0JBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxzQkFBc0I7SUFDbEQsQ0FBQyxvQkFBUSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsK0JBQStCO0lBQ2pFLENBQUMsb0JBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZO0lBQ3JDLENBQUMsb0JBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLHFCQUFxQjtJQUNwRCxDQUFDLG9CQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWTtJQUNsQyxDQUFDLG9CQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsYUFBYTtJQUNyQyxDQUFDLG9CQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsWUFBWTtJQUNuQyxDQUFDLG9CQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsVUFBVTtJQUM5QixDQUFDLG9CQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsYUFBYTtJQUN0QyxDQUFDLG9CQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsV0FBVztJQUNqQyxDQUFDLG9CQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsZUFBZTtJQUN6QyxDQUFDLG9CQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsZUFBZTtJQUN2QyxDQUFDLG9CQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsa0JBQWtCO0lBQzVDLENBQUMsb0JBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLDJCQUEyQjtJQUNoRSxDQUFDLG9CQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxvQkFBb0I7SUFDbEQsQ0FBQyxvQkFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLDBCQUEwQjtJQUN0RCxDQUFDLG9CQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxpQkFBaUI7SUFDaEQsQ0FBQyxvQkFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLG9CQUFvQjtJQUMvQyxDQUFDLG9CQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUztJQUM3QixDQUFDLG9CQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTTtJQUMzQixDQUFDLG9CQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsZUFBZTtJQUNyQyxDQUFDLG9CQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUseUJBQXlCO0lBQ2hELENBQUMsb0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxVQUFVO0lBQzlCLENBQUMsb0JBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVO0lBQ2pDLENBQUMsb0JBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZO0lBQ2pDLENBQUMsb0JBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRSxjQUFjO0lBQ3ZDLENBQUMsb0JBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTO0lBQzVCLENBQUMsb0JBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUI7SUFDdkMsQ0FBQyxvQkFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVM7SUFDNUIsQ0FBQyxvQkFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLG9CQUFvQjtJQUNoRCxDQUFDLG9CQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxvQkFBb0I7Q0FDbEQsQ0FBQztBQUVGLFNBQVMsV0FBVyxDQUFDLEdBQVc7SUFDOUIsT0FBTyxHQUFHO1NBQ1AsV0FBVyxFQUFFO1NBQ2IsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNmLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsTUFBYyxFQUFFLFNBQWlCLE9BQU87SUFDckUsSUFBSSxNQUFNLEtBQUssT0FBTztRQUFFLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2RSxPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDakQsQ0FBQztBQUVELFNBQWdCLGdCQUFnQixDQUFDLFFBQWtCLEVBQUUsU0FBaUIsT0FBTztJQUMzRSxJQUFJLE1BQU0sS0FBSyxPQUFPO1FBQUUsT0FBTyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEYsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQUVELFNBQWdCLGlCQUFpQixDQUMvQixTQUE2QixFQUM3QixTQUFpQixPQUFPLEVBQ3hCLElBQTRFO0lBRTVFLE1BQU0sS0FBSyxHQUFHLElBQUksRUFBRSxLQUFLLElBQUksaUJBQWlCLENBQUM7SUFDL0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxFQUFFLFNBQVMsSUFBSSxHQUFHLENBQUM7SUFFbkMsTUFBTSxFQUFFLEdBQUcsT0FBTyxTQUFTLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxxQkFBUyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3ZGLElBQUksQ0FBQyxFQUFFO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDbkIsTUFBTSxDQUFDLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRCxPQUFPLEtBQUssS0FBSyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBPcGVyYXRpb24gfSBmcm9tICcuL29wZXJhdGlvbic7XG5pbXBvcnQgeyBSZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2VzJztcblxuLy8gQ29yZSBpMThuIGxvY2FsZSB0eXBlIChvbmx5IHN1cHBvcnQgdGhlc2UgZXhwbGljaXQgY29kZXMpXG5leHBvcnQgdHlwZSBMb2NhbGUgPSAnZnItRlInIHwgJ3VzLUVOJztcblxuY29uc3QgZW5BY3Rpb246IFBhcnRpYWw8UmVjb3JkPEFjdGlvbiwgc3RyaW5nPj4gPSB7XG4gIFtBY3Rpb24uQ1JFQVRFXTogJ0NyZWF0ZScsXG4gIFtBY3Rpb24uUkVBRF06ICdSZWFkJyxcbiAgW0FjdGlvbi5VUERBVEVdOiAnVXBkYXRlJyxcbiAgW0FjdGlvbi5ERUxFVEVdOiAnRGVsZXRlJyxcbiAgW0FjdGlvbi5QVVRdOiAnUHV0JyxcbiAgW0FjdGlvbi5MSVNUXTogJ0xpc3QnLFxuICBbQWN0aW9uLk1BTkFHRV06ICdNYW5hZ2UnLFxuICBbQWN0aW9uLlZJRVddOiAnVmlldycsXG4gIFtBY3Rpb24uU0VBUkNIXTogJ1NlYXJjaCcsXG4gIFtBY3Rpb24uR1JBTlRdOiAnR3JhbnQnLFxuICBbQWN0aW9uLlJFVk9LRV06ICdSZXZva2UnLFxuICBbQWN0aW9uLlBSRVNDUklCRV06ICdQcmVzY3JpYmUnLFxuICBbQWN0aW9uLkRJQUdOT1NFXTogJ0RpYWdub3NlJyxcbiAgW0FjdGlvbi5TQ0hFRFVMRV06ICdTY2hlZHVsZScsXG4gIFtBY3Rpb24uQ0FOQ0VMXTogJ0NhbmNlbCcsXG4gIFtBY3Rpb24uQVBQUk9WRV06ICdBcHByb3ZlJyxcbiAgW0FjdGlvbi5SRUpFQ1RdOiAnUmVqZWN0JyxcbiAgW0FjdGlvbi5TSUdOXTogJ1NpZ24nLFxuICBbQWN0aW9uLlZFUklGWV06ICdWZXJpZnknLFxuICBbQWN0aW9uLlJFQ09WRVJdOiAnUmVjb3ZlcicsXG4gIFtBY3Rpb24uRElTQUJMRV06ICdEaXNhYmxlJyxcbiAgW0FjdGlvbi5TRVRfTUVESUNBTF9TRVJWSUNFX1NUQVRVU106ICdTZXQgTWVkaWNhbCBTZXJ2aWNlIFN0YXR1cycsXG4gIFtBY3Rpb24uU0VUX01FRElDQUxfU0VSVklDRV9GRUVTXTogJ1NldCBNZWRpY2FsIFNlcnZpY2UgRmVlcycsXG4gIFtBY3Rpb24uQ0hFQ0tfSU5dOiAnQ2hlY2sgSW4nLFxuICBbQWN0aW9uLlVORE9fQ0hFQ0tfSU5dOiAnVW5kbyBDaGVjayBJbicsXG4gIFtBY3Rpb24uU1RBUlRfU0VSVklDRV06ICdTdGFydCBTZXJ2aWNlJyxcbiAgW0FjdGlvbi5VTlNUQVJUX1NFUlZJQ0VdOiAnVW5kbyBTdGFydCBTZXJ2aWNlJyxcbiAgW0FjdGlvbi5DT01QTEVURV9TRVJWSUNFXTogJ0NvbXBsZXRlIFNlcnZpY2UnLFxuICBbQWN0aW9uLlJFT1BFTl9DT01QTEVURURfU0VSVklDRV06ICdSZW9wZW4gQ29tcGxldGVkIFNlcnZpY2UnLFxuICBbQWN0aW9uLkNBTkNFTF9TRVJWSUNFXTogJ0NhbmNlbCBTZXJ2aWNlJyxcbiAgW0FjdGlvbi5VTkRPX0NBTkNFTF9TRVJWSUNFXTogJ1VuZG8gQ2FuY2VsIFNlcnZpY2UnLFxuICBbQWN0aW9uLkZPUkNFX1JFU0VUX1NUQVRVU106ICdGb3JjZSBSZXNldCBTdGF0dXMnLFxuICBbQWN0aW9uLkNPUlJFQ1RfVElNRVNUQU1QU106ICdDb3JyZWN0IFRpbWVzdGFtcHMnLFxuICBbQWN0aW9uLlVQREFURV9TVEFUVVNdOiAnVXBkYXRlIFN0YXR1cycsXG4gIFtBY3Rpb24uVklFV19QQVRJRU5UU106ICdWaWV3IHBhdGllbnRzJyxcbiAgW0FjdGlvbi5QVVRfUEFUSUVOVF9QQVlNRU5UXTogJ1B1dCBwYXRpZW50IHBheW1lbnQnLFxuICBbQWN0aW9uLkRFTEVURV9QQVRJRU5UX1BBWU1FTlRdOiAnRGVsZXRlIHBhdGllbnQgcGF5bWVudCcsXG4gIFtBY3Rpb24uRVhQT1JUXTogJ0V4cG9ydCcsXG4gIFtBY3Rpb24uSU1QT1JUXTogJ0ltcG9ydCcsXG4gIFtBY3Rpb24uQVJDSElWRV06ICdBcmNoaXZlJyxcbiAgW0FjdGlvbi5SRVNUT1JFXTogJ1Jlc3RvcmUnLFxuICBbQWN0aW9uLlNIQVJFXTogJ1NoYXJlJyxcbiAgW0FjdGlvbi5ET1dOTE9BRF06ICdEb3dubG9hZCcsXG4gIFtBY3Rpb24uVVBMT0FEXTogJ1VwbG9hZCcsXG4gIFtBY3Rpb24uTE9HSU5dOiAnTG9naW4nLFxuICBbQWN0aW9uLkxPR09VVF06ICdMb2dvdXQnLFxuICBbQWN0aW9uLkNPTkZJR1VSRV06ICdDb25maWd1cmUnLFxuICBbQWN0aW9uLkFVRElUXTogJ0F1ZGl0Jyxcbn07XG5cbmNvbnN0IGZyQWN0aW9uOiBQYXJ0aWFsPFJlY29yZDxBY3Rpb24sIHN0cmluZz4+ID0ge1xuICBbQWN0aW9uLkNSRUFURV06ICdDcsOpZXInLFxuICBbQWN0aW9uLlJFQURdOiAnTGlyZScsXG4gIFtBY3Rpb24uVVBEQVRFXTogJ01ldHRyZSDDoCBqb3VyJyxcbiAgW0FjdGlvbi5ERUxFVEVdOiAnU3VwcHJpbWVyJyxcbiAgW0FjdGlvbi5QVVRdOiAnTWV0dHJlJyxcbiAgW0FjdGlvbi5MSVNUXTogJ0xpc3RlcicsXG4gIFtBY3Rpb24uTUFOQUdFXTogJ0fDqXJlcicsXG4gIFtBY3Rpb24uVklFV106ICdWb2lyJyxcbiAgW0FjdGlvbi5TRUFSQ0hdOiAnUmVjaGVyY2hlcicsXG4gIFtBY3Rpb24uR1JBTlRdOiAnQWNjb3JkZXInLFxuICBbQWN0aW9uLlJFVk9LRV06ICdSw6l2b3F1ZXInLFxuICBbQWN0aW9uLlBSRVNDUklCRV06ICdQcmVzY3JpcmUnLFxuICBbQWN0aW9uLkRJQUdOT1NFXTogJ0RpYWdub3N0aXF1ZXInLFxuICBbQWN0aW9uLlNDSEVEVUxFXTogJ1BsYW5pZmllcicsXG4gIFtBY3Rpb24uQ0FOQ0VMXTogJ0FubnVsZXInLFxuICBbQWN0aW9uLkFQUFJPVkVdOiAnQXBwcm91dmVyJyxcbiAgW0FjdGlvbi5SRUpFQ1RdOiAnUmVqZXRlcicsXG4gIFtBY3Rpb24uU0lHTl06ICdTaWduZXInLFxuICBbQWN0aW9uLlZFUklGWV06ICdWw6lyaWZpZXInLFxuICBbQWN0aW9uLlJFQ09WRVJdOiAnUsOpY3Vww6lyZXInLFxuICBbQWN0aW9uLkRJU0FCTEVdOiAnRMOpc2FjdGl2ZXInLFxuICBbQWN0aW9uLlNFVF9NRURJQ0FMX1NFUlZJQ0VfU1RBVFVTXTogJ0TDqWZpbmlyIGxlIHN0YXR1dCBkdSBzZXJ2aWNlIG3DqWRpY2FsJyxcbiAgW0FjdGlvbi5TRVRfTUVESUNBTF9TRVJWSUNFX0ZFRVNdOiAnRMOpZmluaXIgbGVzIGZyYWlzIGR1IHNlcnZpY2UgbcOpZGljYWwnLFxuICBbQWN0aW9uLkNIRUNLX0lOXTogXCJFbnJlZ2lzdHJlbWVudCDDoCBsJ2Fycml2w6llXCIsXG4gIFtBY3Rpb24uVU5ET19DSEVDS19JTl06IFwiQW5udWxlciBsJ2VucmVnaXN0cmVtZW50XCIsXG4gIFtBY3Rpb24uU1RBUlRfU0VSVklDRV06ICdDb21tZW5jZXIgbGUgc2VydmljZScsXG4gIFtBY3Rpb24uVU5TVEFSVF9TRVJWSUNFXTogJ0FubnVsZXIgbGUgZMOpYnV0IGR1IHNlcnZpY2UnLFxuICBbQWN0aW9uLkNPTVBMRVRFX1NFUlZJQ0VdOiAnVGVybWluZXIgbGUgc2VydmljZScsXG4gIFtBY3Rpb24uUkVPUEVOX0NPTVBMRVRFRF9TRVJWSUNFXTogJ1LDqW91dnJpciBsZSBzZXJ2aWNlIHRlcm1pbsOpJyxcbiAgW0FjdGlvbi5DQU5DRUxfU0VSVklDRV06ICdBbm51bGVyIGxlIHNlcnZpY2UnLFxuICBbQWN0aW9uLlVORE9fQ0FOQ0VMX1NFUlZJQ0VdOiBcIkFubnVsZXIgbCdhbm51bGF0aW9uIGR1IHNlcnZpY2VcIixcbiAgW0FjdGlvbi5GT1JDRV9SRVNFVF9TVEFUVVNdOiAnUsOpaW5pdGlhbGlzZXIgbGUgc3RhdHV0IChGb3JjZSknLFxuICBbQWN0aW9uLkNPUlJFQ1RfVElNRVNUQU1QU106ICdDb3JyaWdlciBsZXMgaG9yb2RhdGFnZXMnLFxuICBbQWN0aW9uLlVQREFURV9TVEFUVVNdOiAnTWV0dHJlIMOgIGpvdXIgbGUgc3RhdHV0JyxcbiAgW0FjdGlvbi5WSUVXX1BBVElFTlRTXTogJ1ZvaXIgbGVzIHBhdGllbnRzJyxcbiAgW0FjdGlvbi5QVVRfUEFUSUVOVF9QQVlNRU5UXTogJ0VucmVnaXN0cmVyIGxlIHBhaWVtZW50IHBhdGllbnQnLFxuICBbQWN0aW9uLkRFTEVURV9QQVRJRU5UX1BBWU1FTlRdOiAnU3VwcHJpbWVyIGxlIHBhaWVtZW50IHBhdGllbnQnLFxuICBbQWN0aW9uLkVYUE9SVF06ICdFeHBvcnRlcicsXG4gIFtBY3Rpb24uSU1QT1JUXTogJ0ltcG9ydGVyJyxcbiAgW0FjdGlvbi5BUkNISVZFXTogJ0FyY2hpdmVyJyxcbiAgW0FjdGlvbi5SRVNUT1JFXTogJ1Jlc3RhdXJlcicsXG4gIFtBY3Rpb24uU0hBUkVdOiAnUGFydGFnZXInLFxuICBbQWN0aW9uLkRPV05MT0FEXTogJ1TDqWzDqWNoYXJnZXInLFxuICBbQWN0aW9uLlVQTE9BRF06ICdUw6lsw6l2ZXJzZXInLFxuICBbQWN0aW9uLkxPR0lOXTogJ0Nvbm5leGlvbicsXG4gIFtBY3Rpb24uTE9HT1VUXTogJ0TDqWNvbm5leGlvbicsXG4gIFtBY3Rpb24uQ09ORklHVVJFXTogJ0NvbmZpZ3VyZXInLFxuICBbQWN0aW9uLkFVRElUXTogJ0F1ZGl0ZXInLFxufTtcblxuLy8gRm9yIHJlc291cmNlcyB3ZSBwcm92aWRlIGEgZmV3IGV4cGxpY2l0IEZyZW5jaCBvdmVycmlkZXMgYW5kIGRlZmF1bHQgdG8gaHVtYW5pemVkIG5hbWVzXG5jb25zdCBmclJlc291cmNlT3ZlcnJpZGVzOiBQYXJ0aWFsPFJlY29yZDxSZXNvdXJjZSwgc3RyaW5nPj4gPSB7XG4gIFtSZXNvdXJjZS5BQ0NPVU5UXTogJ0NvbXB0ZScsXG4gIFtSZXNvdXJjZS5BQ0NPVU5UX09XTkVSU0hJUF06ICdQcm9wcmnDqXTDqSBkdSBjb21wdGUnLFxuICBbUmVzb3VyY2UuQUNDT1VOVF9QUkVGRVJFTkNFU106ICdQcsOpZsOpcmVuY2VzIGR1IGNvbXB0ZScsXG4gIFtSZXNvdXJjZS5VU0VSXTogJ1V0aWxpc2F0ZXVyJyxcbiAgW1Jlc291cmNlLkNPTlRBQ1RdOiAnQ29udGFjdCcsXG4gIFtSZXNvdXJjZS5QQVRJRU5UXTogJ1BhdGllbnQnLFxuICBbUmVzb3VyY2UuUEFUSUVOVF9NRURJQ0FMX05PVEVTXTogJ05vdGVzIG3DqWRpY2FsZXMgZHUgcGF0aWVudCcsXG4gIFtSZXNvdXJjZS5QQVRJRU5UX01FRElDQUxfUFJPUEVSVElFU106ICdQcm9wcmnDqXTDqXMgbcOpZGljYWxlcyBkdSBwYXRpZW50JyxcbiAgW1Jlc291cmNlLlBBVElFTlRfUFVCTElDX1BST1BFUlRJRVNdOiAnUHJvcHJpw6l0w6lzIHB1YmxpcXVlcyBkdSBwYXRpZW50JyxcbiAgW1Jlc291cmNlLlBBVElFTlRfUEFZTUVOVF06ICdQYWllbWVudCBkdSBwYXRpZW50JyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV06ICdTZXJ2aWNlIG3DqWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV9OT1RFXTogJ05vdGUgZHUgc2VydmljZSBtw6lkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1NFUlZJQ0VfU0NIRURVTEVdOiAnUGxhbmlmaWNhdGlvbiBkdSBzZXJ2aWNlIG3DqWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV9GRUVTXTogJ0ZyYWlzIGR1IHNlcnZpY2UgbcOpZGljYWwnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9TRVJWSUNFX1NUQVRVU106ICdTdGF0dXQgZHUgc2VydmljZSBtw6lkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX05PVEVdOiAnTm90ZSBtw6lkaWNhbGUnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9SRUNPUkRdOiAnRG9zc2llciBtw6lkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX0hJU1RPUlldOiAnQW50w6ljw6lkZW50cyBtw6lkaWNhdXgnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9ISVNUT1JZX01PREVMXTogXCJNb2TDqGxlIGQnYW50w6ljw6lkZW50cyBtw6lkaWNhdXhcIixcbiAgW1Jlc291cmNlLlBSRVNDUklQVElPTl06ICdPcmRvbm5hbmNlJyxcbiAgW1Jlc291cmNlLlBSRVNDUklQVElPTl9NT0RFTF06IFwiTW9kw6hsZSBkJ29yZG9ubmFuY2VcIixcbiAgW1Jlc291cmNlLkRJQUdOT1NJU106ICdEaWFnbm9zdGljJyxcbiAgW1Jlc291cmNlLk9CU0VSVkFUSU9OXTogJ09ic2VydmF0aW9uJyxcbiAgW1Jlc291cmNlLk1FRElDQVRJT05dOiAnTcOpZGljYXRpb24nLFxuICBbUmVzb3VyY2UuQUxMRVJHWV06ICdBbGxlcmdpZScsXG4gIFtSZXNvdXJjZS5JTU1VTklaQVRJT05dOiAnVmFjY2luYXRpb24nLFxuICBbUmVzb3VyY2UuUFJPQ0VEVVJFXTogJ1Byb2PDqWR1cmUnLFxuICBbUmVzb3VyY2UuQ0xJTklDQUxfTk9URV06ICdOb3RlIGNsaW5pcXVlJyxcbiAgW1Jlc291cmNlLlZJVEFMX1NJR05TXTogJ1NpZ25lcyB2aXRhdXgnLFxuICBbUmVzb3VyY2UuTUVBU1VSRV9NT0RFTF06ICdNb2TDqGxlIGRlIG1lc3VyZScsXG4gIFtSZXNvdXJjZS5DQUxDVUxBVEVEX01FQVNVUkVfTU9ERUxdOiAnTW9kw6hsZSBkZSBtZXN1cmUgY2FsY3Vsw6llJyxcbiAgW1Jlc291cmNlLlVQTE9BREVEX0RPQ1VNRU5UXTogJ0RvY3VtZW50IHTDqWzDqXZlcnPDqScsXG4gIFtSZXNvdXJjZS5ET0NVTUVOVF9MQVlPVVRdOiAnTWlzZSBlbiBwYWdlIGR1IGRvY3VtZW50JyxcbiAgW1Jlc291cmNlLkdFTkVSQVRFRF9ET0NVTUVOVF06ICdEb2N1bWVudCBnw6luw6lyw6knLFxuICBbUmVzb3VyY2UuRE9DVU1FTlRfTU9ERUxdOiAnTW9kw6hsZSBkZSBkb2N1bWVudCcsXG4gIFtSZXNvdXJjZS5TTklQUEVUXTogJ0V4dHJhaXQnLFxuICBbUmVzb3VyY2UuTE9DQVRJT05dOiAnTGlldScsXG4gIFtSZXNvdXJjZS5UQVNLX1RZUEVdOiAnVHlwZSBkZSB0w6JjaGUnLFxuICBbUmVzb3VyY2UuTEFCX1JFU1VMVF06ICdSw6lzdWx0YXQgZGUgbGFib3JhdG9pcmUnLFxuICBbUmVzb3VyY2UuSU1BR0lOR106ICdJbWFnZXJpZScsXG4gIFtSZXNvdXJjZS5NRU1CRVJTSElQXTogJ0FkaMOpc2lvbicsXG4gIFtSZXNvdXJjZS5TRVRUSU5HU106ICdQYXJhbcOodHJlcycsXG4gIFtSZXNvdXJjZS5OT1RJRklDQVRJT05dOiAnTm90aWZpY2F0aW9uJyxcbiAgW1Jlc291cmNlLlJFUE9SVF06ICdSYXBwb3J0JyxcbiAgW1Jlc291cmNlLkFVRElUX0xPR106IFwiSm91cm5hbCBkJ2F1ZGl0XCIsXG4gIFtSZXNvdXJjZS5TWVNURU1dOiAnU3lzdMOobWUnLFxuICBbUmVzb3VyY2UuUFVCTElDX1JFU09VUkNFXTogJ1Jlc3NvdXJjZSBwdWJsaXF1ZScsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1JFU09VUkNFXTogJ1Jlc3NvdXJjZSBtw6lkaWNhbGUnLFxufTtcblxuZnVuY3Rpb24gaHVtYW5pemVLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4ga2V5XG4gICAgLnRvTG93ZXJDYXNlKClcbiAgICAuc3BsaXQoJ18nKVxuICAgIC5tYXAoKHcpID0+IHcuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3LnNsaWNlKDEpKVxuICAgIC5qb2luKCcgJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpb25MYWJlbChhY3Rpb246IEFjdGlvbiwgbG9jYWxlOiBMb2NhbGUgPSAndXMtRU4nKTogc3RyaW5nIHtcbiAgaWYgKGxvY2FsZSA9PT0gJ2ZyLUZSJykgcmV0dXJuIGZyQWN0aW9uW2FjdGlvbl0gPz8gaHVtYW5pemVLZXkoYWN0aW9uKTtcbiAgcmV0dXJuIGVuQWN0aW9uW2FjdGlvbl0gPz8gaHVtYW5pemVLZXkoYWN0aW9uKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlTGFiZWwocmVzb3VyY2U6IFJlc291cmNlLCBsb2NhbGU6IExvY2FsZSA9ICd1cy1FTicpOiBzdHJpbmcge1xuICBpZiAobG9jYWxlID09PSAnZnItRlInKSByZXR1cm4gZnJSZXNvdXJjZU92ZXJyaWRlc1tyZXNvdXJjZV0gPz8gaHVtYW5pemVLZXkocmVzb3VyY2UpO1xuICByZXR1cm4gaHVtYW5pemVLZXkocmVzb3VyY2UpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3BlcmF0aW9uTGFiZWwoXG4gIG9wZXJhdGlvbjogT3BlcmF0aW9uIHwgc3RyaW5nLFxuICBsb2NhbGU6IExvY2FsZSA9ICd1cy1FTicsXG4gIG9wdHM/OiB7IG9yZGVyPzogJ2FjdGlvbi1yZXNvdXJjZScgfCAncmVzb3VyY2UtYWN0aW9uJzsgc2VwYXJhdG9yPzogc3RyaW5nIH0sXG4pOiBzdHJpbmcge1xuICBjb25zdCBvcmRlciA9IG9wdHM/Lm9yZGVyID8/ICdhY3Rpb24tcmVzb3VyY2UnO1xuICBjb25zdCBzZXAgPSBvcHRzPy5zZXBhcmF0b3IgPz8gJyAnO1xuXG4gIGNvbnN0IG9wID0gdHlwZW9mIG9wZXJhdGlvbiA9PT0gJ3N0cmluZycgPyBPcGVyYXRpb24uZnJvbVN0cmluZyhvcGVyYXRpb24pIDogb3BlcmF0aW9uO1xuICBpZiAoIW9wKSByZXR1cm4gJyc7XG4gIGNvbnN0IGEgPSBnZXRBY3Rpb25MYWJlbChvcC5hY3Rpb24sIGxvY2FsZSk7XG4gIGNvbnN0IHIgPSBnZXRSZXNvdXJjZUxhYmVsKG9wLnJlc291cmNlLCBsb2NhbGUpO1xuICByZXR1cm4gb3JkZXIgPT09ICdyZXNvdXJjZS1hY3Rpb24nID8gYCR7cn0ke3NlcH0ke2F9YCA6IGAke2F9JHtzZXB9JHtyfWA7XG59XG4iXX0=
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvbGFiZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBMEtBLHdDQUVDO0FBRUQsNENBR0M7QUFFRCw4Q0FhQztBQWhNRCx1Q0FBbUM7QUFDbkMsMkNBQXdDO0FBQ3hDLDJDQUF1QztBQUl2QyxNQUFNLFFBQVEsR0FBMkI7SUFDdkMsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUs7SUFDbkIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87SUFDdkIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFdBQVc7SUFDL0IsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFB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QUMsUUFBUSxDQUFDLENBQUM7SUFDdEYsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQUVELFNBQWdCLGlCQUFpQixDQUMvQixTQUE2QixFQUM3QixTQUFpQixPQUFPLEVBQ3hCLElBQTRFO0lBRTVFLE1BQU0sS0FBSyxHQUFHLElBQUksRUFBRSxLQUFLLElBQUksaUJBQWlCLENBQUM7SUFDL0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxFQUFFLFNBQVMsSUFBSSxHQUFHLENBQUM7SUFFbkMsTUFBTSxFQUFFLEdBQUcsT0FBTyxTQUFTLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxxQkFBUyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3ZGLElBQUksQ0FBQyxFQUFFO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDbkIsTUFBTSxDQUFDLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRCxPQUFPLEtBQUssS0FBSyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBPcGVyYXRpb24gfSBmcm9tICcuL29wZXJhdGlvbic7XG5pbXBvcnQgeyBSZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2VzJztcblxuZXhwb3J0IHR5cGUgTG9jYWxlID0gJ2ZyLUZSJyB8ICd1cy1FTic7XG5cbmNvbnN0IGVuQWN0aW9uOiBSZWNvcmQ8QWN0aW9uLCBzdHJpbmc+ID0ge1xuICBbQWN0aW9uLkNSRUFURV06ICdDcmVhdGUnLFxuICBbQWN0aW9uLlJFQURdOiAnUmVhZCcsXG4gIFtBY3Rpb24uREVMRVRFXTogJ0RlbGV0ZScsXG4gIFtBY3Rpb24uUkVUUklFVkVdOiAnUmV0cmlldmUnLFxuICBbQWN0aW9uLlVQREFURV06ICdVcGRhdGUnLFxuICBbQWN0aW9uLlBVVF06ICdQdXQnLFxuICBbQWN0aW9uLkxJU1RdOiAnTGlzdCcsXG4gIFtBY3Rpb24uTUFOQUdFXTogJ01hbmFnZScsXG4gIFtBY3Rpb24uVklFV106ICdWaWV3JyxcbiAgW0FjdGlvbi5TRUFSQ0hdOiAnU2VhcmNoJyxcbiAgW0FjdGlvbi5HUkFOVF06ICdHcmFudCcsXG4gIFtBY3Rpb24uUkVWT0tFXTogJ1Jldm9rZScsXG4gIFtBY3Rpb24uUFJFU0NSSUJFXTogJ1ByZXNjcmliZScsXG4gIFtBY3Rpb24uRElBR05PU0VdOiAnRGlhZ25vc2UnLFxuICBbQWN0aW9uLlNDSEVEVUxFXTogJ1NjaGVkdWxlJyxcbiAgW0FjdGlvbi5DQU5DRUxdOiAnQ2FuY2VsJyxcbiAgW0FjdGlvbi5BUFBST1ZFXTogJ0FwcHJvdmUnLFxuICBbQWN0aW9uLlJFSkVDVF06ICdSZWplY3QnLFxuICBbQWN0aW9uLlNJR05dOiAnU2lnbicsXG4gIFtBY3Rpb24uVkVSSUZZXTogJ1ZlcmlmeScsXG4gIFtBY3Rpb24uUkVDT1ZFUl06ICdSZWNvdmVyJyxcbiAgW0FjdGlvbi5ESVNBQkxFXTogJ0Rpc2FibGUnLFxuICBbQWN0aW9uLlNFVF9NRURJQ0FMX1NFUlZJQ0VfU1RBVFVTXTogJ1NldCBNZWRpY2FsIFNlcnZpY2UgU3RhdHVzJyxcbiAgW0FjdGlvbi5TRVRfTUVESUNBTF9TRVJWSUNFX0ZFRVNdOiAnU2V0IE1lZGljYWwgU2VydmljZSBGZWVzJyxcbiAgW0FjdGlvbi5DSEVDS19JTl06ICdDaGVjayBJbicsXG4gIFtBY3Rpb24uVU5ET19DSEVDS19JTl06ICdVbmRvIENoZWNrIEluJyxcbiAgW0FjdGlvbi5TVEFSVF9TRVJWSUNFXTogJ1N0YXJ0IFNlcnZpY2UnLFxuICBbQWN0aW9uLlVOU1RBUlRfU0VSVklDRV06ICdVbmRvIFN0YXJ0IFNlcnZpY2UnLFxuICBbQWN0aW9uLkNPTVBMRVRFX1NFUlZJQ0VdOiAnQ29tcGxldGUgU2VydmljZScsXG4gIFtBY3Rpb24uUkVPUEVOX0NPTVBMRVRFRF9TRVJWSUNFXTogJ1Jlb3BlbiBDb21wbGV0ZWQgU2VydmljZScsXG4gIFtBY3Rpb24uQ0FOQ0VMX1NFUlZJQ0VdOiAnQ2FuY2VsIFNlcnZpY2UnLFxuICBbQWN0aW9uLlVORE9fQ0FOQ0VMX1NFUlZJQ0VdOiAnVW5kbyBDYW5jZWwgU2VydmljZScsXG4gIFtBY3Rpb24uRk9SQ0VfUkVTRVRfU1RBVFVTXTogJ0ZvcmNlIFJlc2V0IFN0YXR1cycsXG4gIFtBY3Rpb24uQ09SUkVDVF9USU1FU1RBTVBTXTogJ0NvcnJlY3QgVGltZXN0YW1wcycsXG4gIFtBY3Rpb24uVVBEQVRFX1NUQVRVU106ICdVcGRhdGUgU3RhdHVzJyxcbiAgW0FjdGlvbi5WSUVXX1BBVElFTlRTXTogJ1ZpZXcgUGF0aWVudHMnLFxuICBbQWN0aW9uLlBVVF9QQVRJRU5UX1BBWU1FTlRdOiAnUHV0IFBhdGllbnQgUGF5bWVudCcsXG4gIFtBY3Rpb24uREVMRVRFX1BBVElFTlRfUEFZTUVOVF06ICdEZWxldGUgUGF0aWVudCBQYXltZW50JyxcbiAgW0FjdGlvbi5FWFBPUlRdOiAnRXhwb3J0JyxcbiAgW0FjdGlvbi5JTVBPUlRdOiAnSW1wb3J0JyxcbiAgW0FjdGlvbi5BUkNISVZFXTogJ0FyY2hpdmUnLFxuICBbQWN0aW9uLlJFU1RPUkVdOiAnUmVzdG9yZScsXG4gIFtBY3Rpb24uU0hBUkVdOiAnU2hhcmUnLFxuICBbQWN0aW9uLkRPV05MT0FEXTogJ0Rvd25sb2FkJyxcbiAgW0FjdGlvbi5VUExPQURdOiAnVXBsb2FkJyxcbiAgW0FjdGlvbi5FTkFCTEVfQ0FMRU5EQVJfU1lOQ106ICdFbmFibGUgQ2FsZW5kYXIgU3luYycsXG4gIFtBY3Rpb24uRElTQUJMRV9DQUxFTkRBUl9TWU5DXTogJ0Rpc2FibGUgQ2FsZW5kYXIgU3luYycsXG4gIFtBY3Rpb24uUkVHRU5FUkFURV9DQUxFTkRBUl9MSU5LXTogJ1JlZ2VuZXJhdGUgQ2FsZW5kYXIgTGluaycsXG4gIFtBY3Rpb24uTE9HSU5dOiAnTG9naW4nLFxuICBbQWN0aW9uLkxPR09VVF06ICdMb2dvdXQnLFxuICBbQWN0aW9uLkNPTkZJR1VSRV06ICdDb25maWd1cmUnLFxuICBbQWN0aW9uLkFVRElUXTogJ0F1ZGl0Jyxcbn07XG5cbmNvbnN0IGZyQWN0aW9uOiBSZWNvcmQ8QWN0aW9uLCBzdHJpbmc+ID0ge1xuICBbQWN0aW9uLkNSRUFURV06ICdDcmVlcicsXG4gIFtBY3Rpb24uUkVBRF06ICdMaXJlJyxcbiAgW0FjdGlvbi5ERUxFVEVdOiAnU3VwcHJpbWVyJyxcbiAgW0FjdGlvbi5SRVRSSUVWRV06ICdSZWN1cGVyZXInLFxuICBbQWN0aW9uLlVQREFURV06ICdNZXR0cmUgYSBqb3VyJyxcbiAgW0FjdGlvbi5QVVRdOiAnTWV0dHJlJyxcbiAgW0FjdGlvbi5MSVNUXTogJ0xpc3RlcicsXG4gIFtBY3Rpb24uTUFOQUdFXTogJ0dlcmVyJyxcbiAgW0FjdGlvbi5WSUVXXTogJ1ZvaXInLFxuICBbQWN0aW9uLlNFQVJDSF06ICdSZWNoZXJjaGVyJyxcbiAgW0FjdGlvbi5HUkFOVF06ICdBY2NvcmRlcicsXG4gIFtBY3Rpb24uUkVWT0tFXTogJ1Jldm9xdWVyJyxcbiAgW0FjdGlvbi5QUkVTQ1JJQkVdOiAnUHJlc2NyaXJlJyxcbiAgW0FjdGlvbi5ESUFHTk9TRV06ICdEaWFnbm9zdGlxdWVyJyxcbiAgW0FjdGlvbi5TQ0hFRFVMRV06ICdQbGFuaWZpZXInLFxuICBbQWN0aW9uLkNBTkNFTF06ICdBbm51bGVyJyxcbiAgW0FjdGlvbi5BUFBST1ZFXTogJ0FwcHJvdXZlcicsXG4gIFtBY3Rpb24uUkVKRUNUXTogJ1JlamV0ZXInLFxuICBbQWN0aW9uLlNJR05dOiAnU2lnbmVyJyxcbiAgW0FjdGlvbi5WRVJJRlldOiAnVmVyaWZpZXInLFxuICBbQWN0aW9uLlJFQ09WRVJdOiAnUmVjdXBlcmVyJyxcbiAgW0FjdGlvbi5ESVNBQkxFXTogJ0Rlc2FjdGl2ZXInLFxuICBbQWN0aW9uLlNFVF9NRURJQ0FMX1NFUlZJQ0VfU1RBVFVTXTogJ0RlZmluaXIgbGUgc3RhdHV0IGR1IHNlcnZpY2UgbWVkaWNhbCcsXG4gIFtBY3Rpb24uU0VUX01FRElDQUxfU0VSVklDRV9GRUVTXTogJ0RlZmluaXIgbGVzIGZyYWlzIGR1IHNlcnZpY2UgbWVkaWNhbCcsXG4gIFtBY3Rpb24uQ0hFQ0tfSU5dOiAnRW5yZWdpc3RyZW1lbnQgYSBsIGFycml2ZWUnLFxuICBbQWN0aW9uLlVORE9fQ0hFQ0tfSU5dOiAnQW5udWxlciBsIGVucmVnaXN0cmVtZW50JyxcbiAgW0FjdGlvbi5TVEFSVF9TRVJWSUNFXTogJ0NvbW1lbmNlciBsZSBzZXJ2aWNlJyxcbiAgW0FjdGlvbi5VTlNUQVJUX1NFUlZJQ0VdOiAnQW5udWxlciBsZSBkZWJ1dCBkdSBzZXJ2aWNlJyxcbiAgW0FjdGlvbi5DT01QTEVURV9TRVJWSUNFXTogJ1Rlcm1pbmVyIGxlIHNlcnZpY2UnLFxuICBbQWN0aW9uLlJFT1BFTl9DT01QTEVURURfU0VSVklDRV06ICdSZW91dnJpciBsZSBzZXJ2aWNlIHRlcm1pbmUnLFxuICBbQWN0aW9uLkNBTkNFTF9TRVJWSUNFXTogJ0FubnVsZXIgbGUgc2VydmljZScsXG4gIFtBY3Rpb24uVU5ET19DQU5DRUxfU0VSVklDRV06ICdBbm51bGVyIGwgYW5udWxhdGlvbiBkdSBzZXJ2aWNlJyxcbiAgW0FjdGlvbi5GT1JDRV9SRVNFVF9TVEFUVVNdOiAnUmVpbml0aWFsaXNlciBsZSBzdGF0dXQnLFxuICBbQWN0aW9uLkNPUlJFQ1RfVElNRVNUQU1QU106ICdDb3JyaWdlciBsZXMgaG9yb2RhdGFnZXMnLFxuICBbQWN0aW9uLlVQREFURV9TVEFUVVNdOiAnTWV0dHJlIGEgam91ciBsZSBzdGF0dXQnLFxuICBbQWN0aW9uLlZJRVdfUEFUSUVOVFNdOiAnVm9pciBsZXMgcGF0aWVudHMnLFxuICBbQWN0aW9uLlBVVF9QQVRJRU5UX1BBWU1FTlRdOiAnRW5yZWdpc3RyZXIgbGUgcGFpZW1lbnQgcGF0aWVudCcsXG4gIFtBY3Rpb24uREVMRVRFX1BBVElFTlRfUEFZTUVOVF06ICdTdXBwcmltZXIgbGUgcGFpZW1lbnQgcGF0aWVudCcsXG4gIFtBY3Rpb24uRVhQT1JUXTogJ0V4cG9ydGVyJyxcbiAgW0FjdGlvbi5JTVBPUlRdOiAnSW1wb3J0ZXInLFxuICBbQWN0aW9uLkFSQ0hJVkVdOiAnQXJjaGl2ZXInLFxuICBbQWN0aW9uLlJFU1RPUkVdOiAnUmVzdGF1cmVyJyxcbiAgW0FjdGlvbi5TSEFSRV06ICdQYXJ0YWdlcicsXG4gIFtBY3Rpb24uRE9XTkxPQURdOiAnVGVsZWNoYXJnZXInLFxuICBbQWN0aW9uLlVQTE9BRF06ICdUZWxldmVyc2VyJyxcbiAgW0FjdGlvbi5FTkFCTEVfQ0FMRU5EQVJfU1lOQ106ICdBY3RpdmVyIGxhIHN5bmNocm9uaXNhdGlvbiBkdSBjYWxlbmRyaWVyJyxcbiAgW0FjdGlvbi5ESVNBQkxFX0NBTEVOREFSX1NZTkNdOiAnRGVzYWN0aXZlciBsYSBzeW5jaHJvbmlzYXRpb24gZHUgY2FsZW5kcmllcicsXG4gIFtBY3Rpb24uUkVHRU5FUkFURV9DQUxFTkRBUl9MSU5LXTogJ1JlZ2VuZXJlciBsZSBsaWVuIGR1IGNhbGVuZHJpZXInLFxuICBbQWN0aW9uLkxPR0lOXTogJ0Nvbm5leGlvbicsXG4gIFtBY3Rpb24uTE9HT1VUXTogJ0RlY29ubmV4aW9uJyxcbiAgW0FjdGlvbi5DT05GSUdVUkVdOiAnQ29uZmlndXJlcicsXG4gIFtBY3Rpb24uQVVESVRdOiAnQXVkaXRlcicsXG59O1xuXG5jb25zdCBmclJlc291cmNlT3ZlcnJpZGVzOiBQYXJ0aWFsPFJlY29yZDxSZXNvdXJjZSwgc3RyaW5nPj4gPSB7XG4gIFtSZXNvdXJjZS5BQ0NPVU5UXTogJ0NvbXB0ZScsXG4gIFtSZXNvdXJjZS5BQ0NPVU5UX0dFTkVSQUxfU0VUVElOR1NdOiAnUGFyYW1ldHJlcyBnZW5lcmF1eCBkdSBjb21wdGUnLFxuICBbUmVzb3VyY2UuQUNDT1VOVF9MT0NBVElPTl06ICdMaWV1IGR1IGNvbXB0ZScsXG4gIFtSZXNvdXJjZS5BQ0NPVU5UX1BSRUZFUkVOQ0VTXTogJ1ByZWZlcmVuY2VzIGR1IGNvbXB0ZScsXG4gIFtSZXNvdXJjZS5BQ0NPVU5UX1NVTU1BUlldOiAnUmVzdW1lIGR1IGNvbXB0ZScsXG4gIFtSZXNvdXJjZS5BVkFJTEFCTEVfU0xPVF06ICdDcmVuZWF1IGRpc3BvbmlibGUnLFxuICBbUmVzb3VyY2UuQ0FMQ1VMQVRFRF9NRUFTVVJFX01PREVMXTogJ01vZGVsZSBkZSBtZXN1cmUgY2FsY3VsZWUnLFxuICBbUmVzb3VyY2UuQ0FMRU5EQVJfU1lOQ106ICdTeW5jaHJvbmlzYXRpb24gZHUgY2FsZW5kcmllcicsXG4gIFtSZXNvdXJjZS5DQUxFTkRBUl9UT0tFTl06ICdKZXRvbiBkZSBjYWxlbmRyaWVyJyxcbiAgW1Jlc291cmNlLkNPTlRBQ1RdOiAnQ29udGFjdCcsXG4gIFtSZXNvdXJjZS5ET0NVTUVOVF9MQVlPVVRdOiAnTWlzZSBlbiBwYWdlIGR1IGRvY3VtZW50JyxcbiAgW1Jlc291cmNlLkRPQ1VNRU5UX01PREVMXTogJ01vZGVsZSBkZSBkb2N1bWVudCcsXG4gIFtSZXNvdXJjZS5HRU5FUkFURURfRE9DVU1FTlRdOiAnRG9jdW1lbnQgZ2VuZXJlJyxcbiAgW1Jlc291cmNlLkxPR19SRUNPUkRdOiAnSm91cm5hbCcsXG4gIFtSZXNvdXJjZS5NRUFTVVJFX01PREVMXTogJ01vZGVsZSBkZSBtZXN1cmUnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9ISVNUT1JZXTogJ0FudGVjZWRlbnRzIG1lZGljYXV4JyxcbiAgW1Jlc291cmNlLk1FRElDQUxfSElTVE9SWV9NT0RFTF06IFwiTW9kZWxlIGQnYW50ZWNlZGVudHMgbWVkaWNhdXhcIixcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV06ICdTZXJ2aWNlIG1lZGljYWwnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9TRVJWSUNFX0FTU0lHTkVFU106ICdBc3NpZ25hdGlvbnMgZHUgc2VydmljZSBtZWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV9ERVNDUklQVElPTl06ICdEZXNjcmlwdGlvbiBkdSBzZXJ2aWNlIG1lZGljYWwnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9TRVJWSUNFX0ZFRVNdOiAnRnJhaXMgZHUgc2VydmljZSBtZWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV9MT0NBVElPTl06ICdMaWV1IGR1IHNlcnZpY2UgbWVkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1NFUlZJQ0VfTk9URV06ICdOb3RlIGR1IHNlcnZpY2UgbWVkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1NFUlZJQ0VfU0NIRURVTEVdOiAnUGxhbm5pbmcgZHUgc2VydmljZSBtZWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV9TVEFUVVNdOiAnU3RhdHV0IGR1IHNlcnZpY2UgbWVkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1NFUlZJQ0VfVElNRVNUQU1QU106ICdIb3JvZGF0YWdlcyBkdSBzZXJ2aWNlIG1lZGljYWwnLFxuICBbUmVzb3VyY2UuTUVNQkVSU0hJUF06ICdBZGhlc2lvbicsXG4gIFtSZXNvdXJjZS5NRURJQ0FUSU9OXTogJ01lZGljYW1lbnQnLFxuICBbUmVzb3VyY2UuT0JTRVJWQVRJT05dOiAnT2JzZXJ2YXRpb24nLFxuICBbUmVzb3VyY2UuUEFUSUVOVF06ICdQYXRpZW50JyxcbiAgW1Jlc291cmNlLlBBVElFTlRfTUVESUNBTF9OT1RFU106ICdOb3RlcyBtZWRpY2FsZXMgZHUgcGF0aWVudCcsXG4gIFtSZXNvdXJjZS5QQVRJRU5UX01FRElDQUxfUFJPUEVSVElFU106ICdQcm9wcmlldGVzIG1lZGljYWxlcyBkdSBwYXRpZW50JyxcbiAgW1Jlc291cmNlLlBBVElFTlRfUEFZTUVOVF06ICdQYWllbWVudCBkdSBwYXRpZW50JyxcbiAgW1Jlc291cmNlLlBBVElFTlRfUFJPRklMRV06ICdQcm9maWwgZHUgcGF0aWVudCcsXG4gIFtSZXNvdXJjZS5QQVRJRU5UX1BVQkxJQ19QUk9QRVJUSUVTXTogJ1Byb3ByaWV0ZXMgcHVibGlxdWVzIGR1IHBhdGllbnQnLFxuICBbUmVzb3VyY2UuUEFUSUVOVF9TVEFUVVNdOiAnU3RhdHV0IGR1IHBhdGllbnQnLFxuICBbUmVzb3VyY2UuUFJFU0NSSVBUSU9OXTogJ09yZG9ubmFuY2UnLFxuICBbUmVzb3VyY2UuUFJFU0NSSVBUSU9OX01PREVMXTogXCJNb2RlbGUgZCdvcmRvbm5hbmNlXCIsXG4gIFtSZXNvdXJjZS5UQVNLX1RZUEVdOiAnVHlwZSBkZSB0YWNoZScsXG4gIFtSZXNvdXJjZS5VUExPQURfRE9DVU1FTlRdOiAnRG9jdW1lbnQgdGVsZXZlcnNlJyxcbiAgW1Jlc291cmNlLlVTRVJdOiAnVXRpbGlzYXRldXInLFxuICBbUmVzb3VyY2UuVVNFUl9DQUxFTkRBUl9QUkVGRVJFTkNFU106ICdQcmVmZXJlbmNlcyBkZSBjYWxlbmRyaWVyIHV0aWxpc2F0ZXVyJyxcbiAgW1Jlc291cmNlLlVTRVJfUFJFRkVSRU5DRVNdOiAnUHJlZmVyZW5jZXMgdXRpbGlzYXRldXInLFxufTtcblxuZnVuY3Rpb24gaHVtYW5pemVLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4ga2V5XG4gICAgLnRvTG93ZXJDYXNlKClcbiAgICAuc3BsaXQoJ18nKVxuICAgIC5tYXAoKHcpID0+IHcuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3LnNsaWNlKDEpKVxuICAgIC5qb2luKCcgJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpb25MYWJlbChhY3Rpb246IEFjdGlvbiwgbG9jYWxlOiBMb2NhbGUgPSAndXMtRU4nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGxvY2FsZSA9PT0gJ2ZyLUZSJyA/IGZyQWN0aW9uW2FjdGlvbl0gOiBlbkFjdGlvblthY3Rpb25dO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVzb3VyY2VMYWJlbChyZXNvdXJjZTogUmVzb3VyY2UsIGxvY2FsZTogTG9jYWxlID0gJ3VzLUVOJyk6IHN0cmluZyB7XG4gIGlmIChsb2NhbGUgPT09ICdmci1GUicpIHJldHVybiBmclJlc291cmNlT3ZlcnJpZGVzW3Jlc291cmNlXSA/PyBodW1hbml6ZUtleShyZXNvdXJjZSk7XG4gIHJldHVybiBodW1hbml6ZUtleShyZXNvdXJjZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcGVyYXRpb25MYWJlbChcbiAgb3BlcmF0aW9uOiBPcGVyYXRpb24gfCBzdHJpbmcsXG4gIGxvY2FsZTogTG9jYWxlID0gJ3VzLUVOJyxcbiAgb3B0cz86IHsgb3JkZXI/OiAnYWN0aW9uLXJlc291cmNlJyB8ICdyZXNvdXJjZS1hY3Rpb24nOyBzZXBhcmF0b3I/OiBzdHJpbmcgfSxcbik6IHN0cmluZyB7XG4gIGNvbnN0IG9yZGVyID0gb3B0cz8ub3JkZXIgPz8gJ2FjdGlvbi1yZXNvdXJjZSc7XG4gIGNvbnN0IHNlcCA9IG9wdHM/LnNlcGFyYXRvciA/PyAnICc7XG5cbiAgY29uc3Qgb3AgPSB0eXBlb2Ygb3BlcmF0aW9uID09PSAnc3RyaW5nJyA/IE9wZXJhdGlvbi5mcm9tU3RyaW5nKG9wZXJhdGlvbikgOiBvcGVyYXRpb247XG4gIGlmICghb3ApIHJldHVybiAnJztcbiAgY29uc3QgYSA9IGdldEFjdGlvbkxhYmVsKG9wLmFjdGlvbiwgbG9jYWxlKTtcbiAgY29uc3QgciA9IGdldFJlc291cmNlTGFiZWwob3AucmVzb3VyY2UsIGxvY2FsZSk7XG4gIHJldHVybiBvcmRlciA9PT0gJ3Jlc291cmNlLWFjdGlvbicgPyBgJHtyfSR7c2VwfSR7YX1gIDogYCR7YX0ke3NlcH0ke3J9YDtcbn1cbiJdfQ==
@@ -41,7 +41,7 @@ export declare class Operation {
41
41
  *
42
42
  * @example
43
43
  * ```ts
44
- * getResourceFromOperation("PATIENT:READ") // Returns: Resource.PATIENT
44
+ * getResourceFromOperation("PATIENT:RETRIEVE") // Returns: Resource.PATIENT
45
45
  * getResourceFromOperation("INVALID:ACTION") // Returns: null
46
46
  * ```
47
47
  */
@@ -53,7 +53,7 @@ export declare function getResourceFromOperation(operation: string): Resource |
53
53
  *
54
54
  * @example
55
55
  * ```ts
56
- * getActionFromOperation("PATIENT:READ") // Returns: Action.READ
56
+ * getActionFromOperation("PATIENT:RETRIEVE") // Returns: Action.RETRIEVE
57
57
  * getActionFromOperation("PATIENT:INVALID") // Returns: null
58
58
  * ```
59
59
  */
@@ -65,7 +65,7 @@ exports.Operation = Operation;
65
65
  *
66
66
  * @example
67
67
  * ```ts
68
- * getResourceFromOperation("PATIENT:READ") // Returns: Resource.PATIENT
68
+ * getResourceFromOperation("PATIENT:RETRIEVE") // Returns: Resource.PATIENT
69
69
  * getResourceFromOperation("INVALID:ACTION") // Returns: null
70
70
  * ```
71
71
  */
@@ -88,7 +88,7 @@ function getResourceFromOperation(operation) {
88
88
  *
89
89
  * @example
90
90
  * ```ts
91
- * getActionFromOperation("PATIENT:READ") // Returns: Action.READ
91
+ * getActionFromOperation("PATIENT:RETRIEVE") // Returns: Action.RETRIEVE
92
92
  * getActionFromOperation("PATIENT:INVALID") // Returns: null
93
93
  * ```
94
94
  */
@@ -104,4 +104,4 @@ function getActionFromOperation(operation) {
104
104
  }
105
105
  return null;
106
106
  }
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvb3BlcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWdGQSw0REFjQztBQWFELHdEQWNDO0FBekhELHVDQUFtQztBQUNuQywyQ0FBdUM7QUFPdkM7O0dBRUc7QUFDSCxNQUFhLFNBQVM7SUFDcEI7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsZUFBdUI7UUFDdkMsTUFBTSxLQUFLLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUM7UUFFdkMsb0JBQW9CO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLG9CQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBdUIsQ0FBQyxFQUFFLENBQUM7WUFDL0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBbUIsQ0FBQyxFQUFFLENBQUM7WUFDekQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxJQUFJLFNBQVMsQ0FBQyxXQUF1QixFQUFFLFNBQW1CLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsWUFDa0IsUUFBa0IsRUFDbEIsTUFBYztRQURkLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUM3QixDQUFDO0lBRUo7O09BRUc7SUFDSCxRQUFRO1FBQ04sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBZSxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxLQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDMUUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNKLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1NBQzNCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF4REQsOEJBd0RDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLFNBQWlCO0lBQ3hELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLENBQUM7SUFFNUIsb0JBQW9CO0lBQ3BCLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxvQkFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQXVCLENBQUMsRUFBRSxDQUFDO1FBQzlELE9BQU8sV0FBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLHNCQUFzQixDQUFDLFNBQWlCO0lBQ3RELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUU1QixrQkFBa0I7SUFDbEIsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBbUIsQ0FBQyxFQUFFLENBQUM7UUFDeEQsT0FBTyxTQUFtQixDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMnO1xuaW1wb3J0IHsgUmVzb3VyY2UgfSBmcm9tICcuL3Jlc291cmNlcyc7XG5cbi8qKlxuICogT3BlcmF0aW9uIHN0cmluZyB0eXBlIGluIFJFU09VUkNFOkFDVElPTiBmb3JtYXRcbiAqL1xuZXhwb3J0IHR5cGUgT1BFUkFUSU9OID0gYCR7UmVzb3VyY2V9OiR7QWN0aW9ufWA7XG5cbi8qKlxuICogT3BlcmF0aW9uIGluIFJFU09VUkNFOkFDVElPTiBmb3JtYXRcbiAqL1xuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbiB7XG4gIC8qKlxuICAgKiBDcmVhdGUgb3BlcmF0aW9uIGZyb20gc3RyaW5nXG4gICAqIEBwYXJhbSBvcGVyYXRpb25TdHJpbmcgLSBTdHJpbmcgaW4gUkVTT1VSQ0U6QUNUSU9OIGZvcm1hdFxuICAgKiBAcmV0dXJucyBPcGVyYXRpb24gaW5zdGFuY2Ugb3IgbnVsbCBpZiBpbnZhbGlkXG4gICAqL1xuICBzdGF0aWMgZnJvbVN0cmluZyhvcGVyYXRpb25TdHJpbmc6IHN0cmluZyk6IE9wZXJhdGlvbiB8IG51bGwge1xuICAgIGNvbnN0IHBhcnRzID0gb3BlcmF0aW9uU3RyaW5nLnNwbGl0KCc6Jyk7XG4gICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgW3Jlc291cmNlU3RyLCBhY3Rpb25TdHJdID0gcGFydHM7XG5cbiAgICAvLyBWYWxpZGF0ZSByZXNvdXJjZVxuICAgIGlmICghT2JqZWN0LnZhbHVlcyhSZXNvdXJjZSkuaW5jbHVkZXMocmVzb3VyY2VTdHIgYXMgUmVzb3VyY2UpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0ZSBhY3Rpb25cbiAgICBpZiAoIU9iamVjdC52YWx1ZXMoQWN0aW9uKS5pbmNsdWRlcyhhY3Rpb25TdHIgYXMgQWN0aW9uKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBPcGVyYXRpb24ocmVzb3VyY2VTdHIgYXMgUmVzb3VyY2UsIGFjdGlvblN0ciBhcyBBY3Rpb24pO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlOiBSZXNvdXJjZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aW9uOiBBY3Rpb24sXG4gICkge31cblxuICAvKipcbiAgICogR2V0IG9wZXJhdGlvbiBzdHJpbmcgaW4gUkVTT1VSQ0U6QUNUSU9OIGZvcm1hdFxuICAgKi9cbiAgdG9TdHJpbmcoKTogT1BFUkFUSU9OIHtcbiAgICByZXR1cm4gYCR7dGhpcy5yZXNvdXJjZX06JHt0aGlzLmFjdGlvbn1gIGFzIE9QRVJBVElPTjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0d28gb3BlcmF0aW9ucyBhcmUgZXF1YWxcbiAgICovXG4gIGVxdWFscyhvdGhlcjogT3BlcmF0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmVzb3VyY2UgPT09IG90aGVyLnJlc291cmNlICYmIHRoaXMuYWN0aW9uID09PSBvdGhlci5hY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCB0byBKU09OIHJlcHJlc2VudGF0aW9uXG4gICAqL1xuICB0b0pTT04oKTogeyByZXNvdXJjZTogUmVzb3VyY2U7IGFjdGlvbjogQWN0aW9uOyBvcGVyYXRpb246IE9QRVJBVElPTiB9IHtcbiAgICByZXR1cm4ge1xuICAgICAgcmVzb3VyY2U6IHRoaXMucmVzb3VyY2UsXG4gICAgICBhY3Rpb246IHRoaXMuYWN0aW9uLFxuICAgICAgb3BlcmF0aW9uOiB0aGlzLnRvU3RyaW5nKCksXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIEV4dHJhY3QgUmVzb3VyY2UgZnJvbSBhbiBPUEVSQVRJT04gc3RyaW5nXG4gKiBAcGFyYW0gb3BlcmF0aW9uIC0gT3BlcmF0aW9uIHN0cmluZyBpbiBSRVNPVVJDRTpBQ1RJT04gZm9ybWF0XG4gKiBAcmV0dXJucyBSZXNvdXJjZSBvciBudWxsIGlmIGludmFsaWRcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGdldFJlc291cmNlRnJvbU9wZXJhdGlvbihcIlBBVElFTlQ6UkVBRFwiKSAvLyBSZXR1cm5zOiBSZXNvdXJjZS5QQVRJRU5UXG4gKiBnZXRSZXNvdXJjZUZyb21PcGVyYXRpb24oXCJJTlZBTElEOkFDVElPTlwiKSAvLyBSZXR1cm5zOiBudWxsXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlRnJvbU9wZXJhdGlvbihvcGVyYXRpb246IHN0cmluZyk6IFJlc291cmNlIHwgbnVsbCB7XG4gIGNvbnN0IHBhcnRzID0gb3BlcmF0aW9uLnNwbGl0KCc6Jyk7XG4gIGlmIChwYXJ0cy5sZW5ndGggIT09IDIpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IFtyZXNvdXJjZVN0cl0gPSBwYXJ0cztcblxuICAvLyBWYWxpZGF0ZSByZXNvdXJjZVxuICBpZiAoT2JqZWN0LnZhbHVlcyhSZXNvdXJjZSkuaW5jbHVkZXMocmVzb3VyY2VTdHIgYXMgUmVzb3VyY2UpKSB7XG4gICAgcmV0dXJuIHJlc291cmNlU3RyIGFzIFJlc291cmNlO1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8qKlxuICogRXh0cmFjdCBBY3Rpb24gZnJvbSBhbiBPUEVSQVRJT04gc3RyaW5nXG4gKiBAcGFyYW0gb3BlcmF0aW9uIC0gT3BlcmF0aW9uIHN0cmluZyBpbiBSRVNPVVJDRTpBQ1RJT04gZm9ybWF0XG4gKiBAcmV0dXJucyBBY3Rpb24gb3IgbnVsbCBpZiBpbnZhbGlkXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBnZXRBY3Rpb25Gcm9tT3BlcmF0aW9uKFwiUEFUSUVOVDpSRUFEXCIpIC8vIFJldHVybnM6IEFjdGlvbi5SRUFEXG4gKiBnZXRBY3Rpb25Gcm9tT3BlcmF0aW9uKFwiUEFUSUVOVDpJTlZBTElEXCIpIC8vIFJldHVybnM6IG51bGxcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aW9uRnJvbU9wZXJhdGlvbihvcGVyYXRpb246IHN0cmluZyk6IEFjdGlvbiB8IG51bGwge1xuICBjb25zdCBwYXJ0cyA9IG9wZXJhdGlvbi5zcGxpdCgnOicpO1xuICBpZiAocGFydHMubGVuZ3RoICE9PSAyKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBbLCBhY3Rpb25TdHJdID0gcGFydHM7XG5cbiAgLy8gVmFsaWRhdGUgYWN0aW9uXG4gIGlmIChPYmplY3QudmFsdWVzKEFjdGlvbikuaW5jbHVkZXMoYWN0aW9uU3RyIGFzIEFjdGlvbikpIHtcbiAgICByZXR1cm4gYWN0aW9uU3RyIGFzIEFjdGlvbjtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuIl19
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvb3BlcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWdGQSw0REFjQztBQWFELHdEQWNDO0FBekhELHVDQUFtQztBQUNuQywyQ0FBdUM7QUFPdkM7O0dBRUc7QUFDSCxNQUFhLFNBQVM7SUFDcEI7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsZUFBdUI7UUFDdkMsTUFBTSxLQUFLLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUM7UUFFdkMsb0JBQW9CO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLG9CQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBdUIsQ0FBQyxFQUFFLENBQUM7WUFDL0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBbUIsQ0FBQyxFQUFFLENBQUM7WUFDekQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxJQUFJLFNBQVMsQ0FBQyxXQUF1QixFQUFFLFNBQW1CLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsWUFDa0IsUUFBa0IsRUFDbEIsTUFBYztRQURkLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUM3QixDQUFDO0lBRUo7O09BRUc7SUFDSCxRQUFRO1FBQ04sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBZSxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxLQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDMUUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNKLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1NBQzNCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF4REQsOEJBd0RDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLFNBQWlCO0lBQ3hELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLENBQUM7SUFFNUIsb0JBQW9CO0lBQ3BCLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxvQkFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQXVCLENBQUMsRUFBRSxDQUFDO1FBQzlELE9BQU8sV0FBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLHNCQUFzQixDQUFDLFNBQWlCO0lBQ3RELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUU1QixrQkFBa0I7SUFDbEIsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBbUIsQ0FBQyxFQUFFLENBQUM7UUFDeEQsT0FBTyxTQUFtQixDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMnO1xuaW1wb3J0IHsgUmVzb3VyY2UgfSBmcm9tICcuL3Jlc291cmNlcyc7XG5cbi8qKlxuICogT3BlcmF0aW9uIHN0cmluZyB0eXBlIGluIFJFU09VUkNFOkFDVElPTiBmb3JtYXRcbiAqL1xuZXhwb3J0IHR5cGUgT1BFUkFUSU9OID0gYCR7UmVzb3VyY2V9OiR7QWN0aW9ufWA7XG5cbi8qKlxuICogT3BlcmF0aW9uIGluIFJFU09VUkNFOkFDVElPTiBmb3JtYXRcbiAqL1xuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbiB7XG4gIC8qKlxuICAgKiBDcmVhdGUgb3BlcmF0aW9uIGZyb20gc3RyaW5nXG4gICAqIEBwYXJhbSBvcGVyYXRpb25TdHJpbmcgLSBTdHJpbmcgaW4gUkVTT1VSQ0U6QUNUSU9OIGZvcm1hdFxuICAgKiBAcmV0dXJucyBPcGVyYXRpb24gaW5zdGFuY2Ugb3IgbnVsbCBpZiBpbnZhbGlkXG4gICAqL1xuICBzdGF0aWMgZnJvbVN0cmluZyhvcGVyYXRpb25TdHJpbmc6IHN0cmluZyk6IE9wZXJhdGlvbiB8IG51bGwge1xuICAgIGNvbnN0IHBhcnRzID0gb3BlcmF0aW9uU3RyaW5nLnNwbGl0KCc6Jyk7XG4gICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgW3Jlc291cmNlU3RyLCBhY3Rpb25TdHJdID0gcGFydHM7XG5cbiAgICAvLyBWYWxpZGF0ZSByZXNvdXJjZVxuICAgIGlmICghT2JqZWN0LnZhbHVlcyhSZXNvdXJjZSkuaW5jbHVkZXMocmVzb3VyY2VTdHIgYXMgUmVzb3VyY2UpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0ZSBhY3Rpb25cbiAgICBpZiAoIU9iamVjdC52YWx1ZXMoQWN0aW9uKS5pbmNsdWRlcyhhY3Rpb25TdHIgYXMgQWN0aW9uKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBPcGVyYXRpb24ocmVzb3VyY2VTdHIgYXMgUmVzb3VyY2UsIGFjdGlvblN0ciBhcyBBY3Rpb24pO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlOiBSZXNvdXJjZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aW9uOiBBY3Rpb24sXG4gICkge31cblxuICAvKipcbiAgICogR2V0IG9wZXJhdGlvbiBzdHJpbmcgaW4gUkVTT1VSQ0U6QUNUSU9OIGZvcm1hdFxuICAgKi9cbiAgdG9TdHJpbmcoKTogT1BFUkFUSU9OIHtcbiAgICByZXR1cm4gYCR7dGhpcy5yZXNvdXJjZX06JHt0aGlzLmFjdGlvbn1gIGFzIE9QRVJBVElPTjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0d28gb3BlcmF0aW9ucyBhcmUgZXF1YWxcbiAgICovXG4gIGVxdWFscyhvdGhlcjogT3BlcmF0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmVzb3VyY2UgPT09IG90aGVyLnJlc291cmNlICYmIHRoaXMuYWN0aW9uID09PSBvdGhlci5hY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCB0byBKU09OIHJlcHJlc2VudGF0aW9uXG4gICAqL1xuICB0b0pTT04oKTogeyByZXNvdXJjZTogUmVzb3VyY2U7IGFjdGlvbjogQWN0aW9uOyBvcGVyYXRpb246IE9QRVJBVElPTiB9IHtcbiAgICByZXR1cm4ge1xuICAgICAgcmVzb3VyY2U6IHRoaXMucmVzb3VyY2UsXG4gICAgICBhY3Rpb246IHRoaXMuYWN0aW9uLFxuICAgICAgb3BlcmF0aW9uOiB0aGlzLnRvU3RyaW5nKCksXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIEV4dHJhY3QgUmVzb3VyY2UgZnJvbSBhbiBPUEVSQVRJT04gc3RyaW5nXG4gKiBAcGFyYW0gb3BlcmF0aW9uIC0gT3BlcmF0aW9uIHN0cmluZyBpbiBSRVNPVVJDRTpBQ1RJT04gZm9ybWF0XG4gKiBAcmV0dXJucyBSZXNvdXJjZSBvciBudWxsIGlmIGludmFsaWRcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGdldFJlc291cmNlRnJvbU9wZXJhdGlvbihcIlBBVElFTlQ6UkVUUklFVkVcIikgLy8gUmV0dXJuczogUmVzb3VyY2UuUEFUSUVOVFxuICogZ2V0UmVzb3VyY2VGcm9tT3BlcmF0aW9uKFwiSU5WQUxJRDpBQ1RJT05cIikgLy8gUmV0dXJuczogbnVsbFxuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZXNvdXJjZUZyb21PcGVyYXRpb24ob3BlcmF0aW9uOiBzdHJpbmcpOiBSZXNvdXJjZSB8IG51bGwge1xuICBjb25zdCBwYXJ0cyA9IG9wZXJhdGlvbi5zcGxpdCgnOicpO1xuICBpZiAocGFydHMubGVuZ3RoICE9PSAyKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBbcmVzb3VyY2VTdHJdID0gcGFydHM7XG5cbiAgLy8gVmFsaWRhdGUgcmVzb3VyY2VcbiAgaWYgKE9iamVjdC52YWx1ZXMoUmVzb3VyY2UpLmluY2x1ZGVzKHJlc291cmNlU3RyIGFzIFJlc291cmNlKSkge1xuICAgIHJldHVybiByZXNvdXJjZVN0ciBhcyBSZXNvdXJjZTtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIEV4dHJhY3QgQWN0aW9uIGZyb20gYW4gT1BFUkFUSU9OIHN0cmluZ1xuICogQHBhcmFtIG9wZXJhdGlvbiAtIE9wZXJhdGlvbiBzdHJpbmcgaW4gUkVTT1VSQ0U6QUNUSU9OIGZvcm1hdFxuICogQHJldHVybnMgQWN0aW9uIG9yIG51bGwgaWYgaW52YWxpZFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogZ2V0QWN0aW9uRnJvbU9wZXJhdGlvbihcIlBBVElFTlQ6UkVUUklFVkVcIikgLy8gUmV0dXJuczogQWN0aW9uLlJFVFJJRVZFXG4gKiBnZXRBY3Rpb25Gcm9tT3BlcmF0aW9uKFwiUEFUSUVOVDpJTlZBTElEXCIpIC8vIFJldHVybnM6IG51bGxcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aW9uRnJvbU9wZXJhdGlvbihvcGVyYXRpb246IHN0cmluZyk6IEFjdGlvbiB8IG51bGwge1xuICBjb25zdCBwYXJ0cyA9IG9wZXJhdGlvbi5zcGxpdCgnOicpO1xuICBpZiAocGFydHMubGVuZ3RoICE9PSAyKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBbLCBhY3Rpb25TdHJdID0gcGFydHM7XG5cbiAgLy8gVmFsaWRhdGUgYWN0aW9uXG4gIGlmIChPYmplY3QudmFsdWVzKEFjdGlvbikuaW5jbHVkZXMoYWN0aW9uU3RyIGFzIEFjdGlvbikpIHtcbiAgICByZXR1cm4gYWN0aW9uU3RyIGFzIEFjdGlvbjtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuIl19