@doctorus/common 0.0.42 → 0.0.44

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.
@@ -3,33 +3,31 @@
3
3
  */
4
4
  export declare enum Action {
5
5
  CREATE = "CREATE",
6
- DELETE = "DELETE",
7
- DISABLE = "DISABLE",
8
- ENABLE = "ENABLE",
9
- RECOVER = "RECOVER",
10
- TRANSFER_OWNERSHIP = "TRANSFER_OWNERSHIP",
11
6
  VIEW = "VIEW",
12
7
  UPDATE = "UPDATE",
13
- ROTATE_TOKEN = "ROTATE_TOKEN",
14
- GENERATE = "GENERATE",
15
- PREVIEW = "PREVIEW",
8
+ DELETE = "DELETE",
9
+ ASSIGN = "ASSIGN",
16
10
  CANCEL = "CANCEL",
17
11
  CHECK_IN = "CHECK_IN",
18
12
  COMPLETE = "COMPLETE",
19
- REOPEN = "REOPEN",
20
- RESET = "RESET",
21
- START = "START",
22
- UNDO_CANCEL = "UNDO_CANCEL",
23
- UNDO_CHECK_IN = "UNDO_CHECK_IN",
24
- UNSTART = "UNSTART",
25
- ASSIGN = "ASSIGN",
26
- UPDATE_STATUS = "UPDATE_STATUS",
27
- UPDATE_SCHEDULE = "UPDATE_SCHEDULE",
28
- CORRECT_TIMESTAMPS = "CORRECT_TIMESTAMPS",
29
- UPDATE_TYPE = "UPDATE_TYPE",
30
- SEARCH = "SEARCH",
31
- ASSIGN_ROLES = "ASSIGN_ROLES",
13
+ DISABLE = "DISABLE",
14
+ ENABLE = "ENABLE",
15
+ GENERATE = "GENERATE",
32
16
  INVITE = "INVITE",
33
17
  REMOVE = "REMOVE",
34
- UPLOAD = "UPLOAD"
18
+ ROTATE = "ROTATE",
19
+ TRANSFER_OWNERSHIP = "TRANSFER_OWNERSHIP"
20
+ }
21
+ /**
22
+ * Access level classification for actions.
23
+ * - READ: does not modify domain state
24
+ * - WRITE: modifies domain state
25
+ */
26
+ export declare enum ActionAccess {
27
+ READ = "READ",
28
+ WRITE = "WRITE"
35
29
  }
30
+ export declare function getActionAccess(action: Action): ActionAccess;
31
+ export declare function isReadAction(action: Action): boolean;
32
+ export declare function isWriteAction(action: Action): boolean;
33
+ export declare function getActionsByAccess(access: ActionAccess): Action[];
@@ -1,40 +1,68 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Action = void 0;
3
+ exports.ActionAccess = exports.Action = void 0;
4
+ exports.getActionAccess = getActionAccess;
5
+ exports.isReadAction = isReadAction;
6
+ exports.isWriteAction = isWriteAction;
7
+ exports.getActionsByAccess = getActionsByAccess;
4
8
  /**
5
9
  * Action types aligned with the permission catalog architecture.
6
10
  */
7
11
  var Action;
8
12
  (function (Action) {
9
13
  Action["CREATE"] = "CREATE";
10
- Action["DELETE"] = "DELETE";
11
- Action["DISABLE"] = "DISABLE";
12
- Action["ENABLE"] = "ENABLE";
13
- Action["RECOVER"] = "RECOVER";
14
- Action["TRANSFER_OWNERSHIP"] = "TRANSFER_OWNERSHIP";
15
14
  Action["VIEW"] = "VIEW";
16
15
  Action["UPDATE"] = "UPDATE";
17
- Action["ROTATE_TOKEN"] = "ROTATE_TOKEN";
18
- Action["GENERATE"] = "GENERATE";
19
- Action["PREVIEW"] = "PREVIEW";
16
+ Action["DELETE"] = "DELETE";
17
+ Action["ASSIGN"] = "ASSIGN";
20
18
  Action["CANCEL"] = "CANCEL";
21
19
  Action["CHECK_IN"] = "CHECK_IN";
22
20
  Action["COMPLETE"] = "COMPLETE";
23
- Action["REOPEN"] = "REOPEN";
24
- Action["RESET"] = "RESET";
25
- Action["START"] = "START";
26
- Action["UNDO_CANCEL"] = "UNDO_CANCEL";
27
- Action["UNDO_CHECK_IN"] = "UNDO_CHECK_IN";
28
- Action["UNSTART"] = "UNSTART";
29
- Action["ASSIGN"] = "ASSIGN";
30
- Action["UPDATE_STATUS"] = "UPDATE_STATUS";
31
- Action["UPDATE_SCHEDULE"] = "UPDATE_SCHEDULE";
32
- Action["CORRECT_TIMESTAMPS"] = "CORRECT_TIMESTAMPS";
33
- Action["UPDATE_TYPE"] = "UPDATE_TYPE";
34
- Action["SEARCH"] = "SEARCH";
35
- Action["ASSIGN_ROLES"] = "ASSIGN_ROLES";
21
+ Action["DISABLE"] = "DISABLE";
22
+ Action["ENABLE"] = "ENABLE";
23
+ Action["GENERATE"] = "GENERATE";
36
24
  Action["INVITE"] = "INVITE";
37
25
  Action["REMOVE"] = "REMOVE";
38
- Action["UPLOAD"] = "UPLOAD";
26
+ Action["ROTATE"] = "ROTATE";
27
+ Action["TRANSFER_OWNERSHIP"] = "TRANSFER_OWNERSHIP";
39
28
  })(Action || (exports.Action = Action = {}));
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb25zL2FjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCxJQUFZLE1BbUNYO0FBbkNELFdBQVksTUFBTTtJQUNoQiwyQkFBaUIsQ0FBQTtJQUNqQiwyQkFBaUIsQ0FBQTtJQUNqQiw2QkFBbUIsQ0FBQTtJQUNuQiwyQkFBaUIsQ0FBQTtJQUNqQiw2QkFBbUIsQ0FBQTtJQUNuQixtREFBeUMsQ0FBQTtJQUN6Qyx1QkFBYSxDQUFBO0lBQ2IsMkJBQWlCLENBQUE7SUFFakIsdUNBQTZCLENBQUE7SUFDN0IsK0JBQXFCLENBQUE7SUFDckIsNkJBQW1CLENBQUE7SUFFbkIsMkJBQWlCLENBQUE7SUFDakIsK0JBQXFCLENBQUE7SUFDckIsK0JBQXFCLENBQUE7SUFDckIsMkJBQWlCLENBQUE7SUFDakIseUJBQWUsQ0FBQTtJQUNmLHlCQUFlLENBQUE7SUFDZixxQ0FBMkIsQ0FBQTtJQUMzQix5Q0FBK0IsQ0FBQTtJQUMvQiw2QkFBbUIsQ0FBQTtJQUVuQiwyQkFBaUIsQ0FBQTtJQUNqQix5Q0FBK0IsQ0FBQTtJQUMvQiw2Q0FBbUMsQ0FBQTtJQUNuQyxtREFBeUMsQ0FBQTtJQUN6QyxxQ0FBMkIsQ0FBQTtJQUUzQiwyQkFBaUIsQ0FBQTtJQUNqQix1Q0FBNkIsQ0FBQTtJQUM3QiwyQkFBaUIsQ0FBQTtJQUNqQiwyQkFBaUIsQ0FBQTtJQUNqQiwyQkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBbkNXLE1BQU0sc0JBQU4sTUFBTSxRQW1DakIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEFjdGlvbiB0eXBlcyBhbGlnbmVkIHdpdGggdGhlIHBlcm1pc3Npb24gY2F0YWxvZyBhcmNoaXRlY3R1cmUuXG4gKi9cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gIENSRUFURSA9ICdDUkVBVEUnLFxuICBERUxFVEUgPSAnREVMRVRFJyxcbiAgRElTQUJMRSA9ICdESVNBQkxFJyxcbiAgRU5BQkxFID0gJ0VOQUJMRScsXG4gIFJFQ09WRVIgPSAnUkVDT1ZFUicsXG4gIFRSQU5TRkVSX09XTkVSU0hJUCA9ICdUUkFOU0ZFUl9PV05FUlNISVAnLFxuICBWSUVXID0gJ1ZJRVcnLFxuICBVUERBVEUgPSAnVVBEQVRFJyxcblxuICBST1RBVEVfVE9LRU4gPSAnUk9UQVRFX1RPS0VOJyxcbiAgR0VORVJBVEUgPSAnR0VORVJBVEUnLFxuICBQUkVWSUVXID0gJ1BSRVZJRVcnLFxuXG4gIENBTkNFTCA9ICdDQU5DRUwnLFxuICBDSEVDS19JTiA9ICdDSEVDS19JTicsXG4gIENPTVBMRVRFID0gJ0NPTVBMRVRFJyxcbiAgUkVPUEVOID0gJ1JFT1BFTicsXG4gIFJFU0VUID0gJ1JFU0VUJyxcbiAgU1RBUlQgPSAnU1RBUlQnLFxuICBVTkRPX0NBTkNFTCA9ICdVTkRPX0NBTkNFTCcsXG4gIFVORE9fQ0hFQ0tfSU4gPSAnVU5ET19DSEVDS19JTicsXG4gIFVOU1RBUlQgPSAnVU5TVEFSVCcsXG5cbiAgQVNTSUdOID0gJ0FTU0lHTicsXG4gIFVQREFURV9TVEFUVVMgPSAnVVBEQVRFX1NUQVRVUycsXG4gIFVQREFURV9TQ0hFRFVMRSA9ICdVUERBVEVfU0NIRURVTEUnLFxuICBDT1JSRUNUX1RJTUVTVEFNUFMgPSAnQ09SUkVDVF9USU1FU1RBTVBTJyxcbiAgVVBEQVRFX1RZUEUgPSAnVVBEQVRFX1RZUEUnLFxuXG4gIFNFQVJDSCA9ICdTRUFSQ0gnLFxuICBBU1NJR05fUk9MRVMgPSAnQVNTSUdOX1JPTEVTJyxcbiAgSU5WSVRFID0gJ0lOVklURScsXG4gIFJFTU9WRSA9ICdSRU1PVkUnLFxuICBVUExPQUQgPSAnVVBMT0FEJyxcbn1cbiJdfQ==
29
+ /**
30
+ * Access level classification for actions.
31
+ * - READ: does not modify domain state
32
+ * - WRITE: modifies domain state
33
+ */
34
+ var ActionAccess;
35
+ (function (ActionAccess) {
36
+ ActionAccess["READ"] = "READ";
37
+ ActionAccess["WRITE"] = "WRITE";
38
+ })(ActionAccess || (exports.ActionAccess = ActionAccess = {}));
39
+ const ACTION_ACCESS = {
40
+ [Action.CREATE]: ActionAccess.WRITE,
41
+ [Action.VIEW]: ActionAccess.READ,
42
+ [Action.UPDATE]: ActionAccess.WRITE,
43
+ [Action.DELETE]: ActionAccess.WRITE,
44
+ [Action.ASSIGN]: ActionAccess.WRITE,
45
+ [Action.CANCEL]: ActionAccess.WRITE,
46
+ [Action.CHECK_IN]: ActionAccess.WRITE,
47
+ [Action.COMPLETE]: ActionAccess.WRITE,
48
+ [Action.DISABLE]: ActionAccess.WRITE,
49
+ [Action.ENABLE]: ActionAccess.WRITE,
50
+ [Action.GENERATE]: ActionAccess.WRITE,
51
+ [Action.INVITE]: ActionAccess.WRITE,
52
+ [Action.REMOVE]: ActionAccess.WRITE,
53
+ [Action.ROTATE]: ActionAccess.WRITE,
54
+ [Action.TRANSFER_OWNERSHIP]: ActionAccess.WRITE,
55
+ };
56
+ function getActionAccess(action) {
57
+ return ACTION_ACCESS[action];
58
+ }
59
+ function isReadAction(action) {
60
+ return ACTION_ACCESS[action] === ActionAccess.READ;
61
+ }
62
+ function isWriteAction(action) {
63
+ return ACTION_ACCESS[action] === ActionAccess.WRITE;
64
+ }
65
+ function getActionsByAccess(access) {
66
+ return Object.values(Action).filter((action) => ACTION_ACCESS[action] === access);
67
+ }
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb25zL2FjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBaURBLDBDQUVDO0FBRUQsb0NBRUM7QUFFRCxzQ0FFQztBQUVELGdEQUVDO0FBL0REOztHQUVHO0FBQ0gsSUFBWSxNQWdCWDtBQWhCRCxXQUFZLE1BQU07SUFDaEIsMkJBQWlCLENBQUE7SUFDakIsdUJBQWEsQ0FBQTtJQUNiLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLCtCQUFxQixDQUFBO0lBQ3JCLCtCQUFxQixDQUFBO0lBQ3JCLDZCQUFtQixDQUFBO0lBQ25CLDJCQUFpQixDQUFBO0lBQ2pCLCtCQUFxQixDQUFBO0lBQ3JCLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLDJCQUFpQixDQUFBO0lBQ2pCLG1EQUF5QyxDQUFBO0FBQzNDLENBQUMsRUFoQlcsTUFBTSxzQkFBTixNQUFNLFFBZ0JqQjtBQUVEOzs7O0dBSUc7QUFDSCxJQUFZLFlBR1g7QUFIRCxXQUFZLFlBQVk7SUFDdEIsNkJBQWEsQ0FBQTtJQUNiLCtCQUFlLENBQUE7QUFDakIsQ0FBQyxFQUhXLFlBQVksNEJBQVosWUFBWSxRQUd2QjtBQUVELE1BQU0sYUFBYSxHQUFpQztJQUNsRCxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxZQUFZLENBQUMsSUFBSTtJQUNoQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNyQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNyQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNwQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNyQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsS0FBSztJQUNuQyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLFlBQVksQ0FBQyxLQUFLO0NBQ2hELENBQUM7QUFFRixTQUFnQixlQUFlLENBQUMsTUFBYztJQUM1QyxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRUQsU0FBZ0IsWUFBWSxDQUFDLE1BQWM7SUFDekMsT0FBTyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssWUFBWSxDQUFDLElBQUksQ0FBQztBQUNyRCxDQUFDO0FBRUQsU0FBZ0IsYUFBYSxDQUFDLE1BQWM7SUFDMUMsT0FBTyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssWUFBWSxDQUFDLEtBQUssQ0FBQztBQUN0RCxDQUFDO0FBRUQsU0FBZ0Isa0JBQWtCLENBQUMsTUFBb0I7SUFDckQsT0FBUSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLE1BQU0sQ0FBQyxDQUFDO0FBQ2xHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEFjdGlvbiB0eXBlcyBhbGlnbmVkIHdpdGggdGhlIHBlcm1pc3Npb24gY2F0YWxvZyBhcmNoaXRlY3R1cmUuXG4gKi9cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gIENSRUFURSA9ICdDUkVBVEUnLFxuICBWSUVXID0gJ1ZJRVcnLFxuICBVUERBVEUgPSAnVVBEQVRFJyxcbiAgREVMRVRFID0gJ0RFTEVURScsXG4gIEFTU0lHTiA9ICdBU1NJR04nLFxuICBDQU5DRUwgPSAnQ0FOQ0VMJyxcbiAgQ0hFQ0tfSU4gPSAnQ0hFQ0tfSU4nLFxuICBDT01QTEVURSA9ICdDT01QTEVURScsXG4gIERJU0FCTEUgPSAnRElTQUJMRScsXG4gIEVOQUJMRSA9ICdFTkFCTEUnLFxuICBHRU5FUkFURSA9ICdHRU5FUkFURScsXG4gIElOVklURSA9ICdJTlZJVEUnLFxuICBSRU1PVkUgPSAnUkVNT1ZFJyxcbiAgUk9UQVRFID0gJ1JPVEFURScsXG4gIFRSQU5TRkVSX09XTkVSU0hJUCA9ICdUUkFOU0ZFUl9PV05FUlNISVAnLFxufVxuXG4vKipcbiAqIEFjY2VzcyBsZXZlbCBjbGFzc2lmaWNhdGlvbiBmb3IgYWN0aW9ucy5cbiAqIC0gUkVBRDogZG9lcyBub3QgbW9kaWZ5IGRvbWFpbiBzdGF0ZVxuICogLSBXUklURTogbW9kaWZpZXMgZG9tYWluIHN0YXRlXG4gKi9cbmV4cG9ydCBlbnVtIEFjdGlvbkFjY2VzcyB7XG4gIFJFQUQgPSAnUkVBRCcsXG4gIFdSSVRFID0gJ1dSSVRFJyxcbn1cblxuY29uc3QgQUNUSU9OX0FDQ0VTUzogUmVjb3JkPEFjdGlvbiwgQWN0aW9uQWNjZXNzPiA9IHtcbiAgW0FjdGlvbi5DUkVBVEVdOiBBY3Rpb25BY2Nlc3MuV1JJVEUsXG4gIFtBY3Rpb24uVklFV106IEFjdGlvbkFjY2Vzcy5SRUFELFxuICBbQWN0aW9uLlVQREFURV06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5ERUxFVEVdOiBBY3Rpb25BY2Nlc3MuV1JJVEUsXG4gIFtBY3Rpb24uQVNTSUdOXTogQWN0aW9uQWNjZXNzLldSSVRFLFxuICBbQWN0aW9uLkNBTkNFTF06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5DSEVDS19JTl06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5DT01QTEVURV06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5ESVNBQkxFXTogQWN0aW9uQWNjZXNzLldSSVRFLFxuICBbQWN0aW9uLkVOQUJMRV06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5HRU5FUkFURV06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5JTlZJVEVdOiBBY3Rpb25BY2Nlc3MuV1JJVEUsXG4gIFtBY3Rpb24uUkVNT1ZFXTogQWN0aW9uQWNjZXNzLldSSVRFLFxuICBbQWN0aW9uLlJPVEFURV06IEFjdGlvbkFjY2Vzcy5XUklURSxcbiAgW0FjdGlvbi5UUkFOU0ZFUl9PV05FUlNISVBdOiBBY3Rpb25BY2Nlc3MuV1JJVEUsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aW9uQWNjZXNzKGFjdGlvbjogQWN0aW9uKTogQWN0aW9uQWNjZXNzIHtcbiAgcmV0dXJuIEFDVElPTl9BQ0NFU1NbYWN0aW9uXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzUmVhZEFjdGlvbihhY3Rpb246IEFjdGlvbik6IGJvb2xlYW4ge1xuICByZXR1cm4gQUNUSU9OX0FDQ0VTU1thY3Rpb25dID09PSBBY3Rpb25BY2Nlc3MuUkVBRDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzV3JpdGVBY3Rpb24oYWN0aW9uOiBBY3Rpb24pOiBib29sZWFuIHtcbiAgcmV0dXJuIEFDVElPTl9BQ0NFU1NbYWN0aW9uXSA9PT0gQWN0aW9uQWNjZXNzLldSSVRFO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aW9uc0J5QWNjZXNzKGFjY2VzczogQWN0aW9uQWNjZXNzKTogQWN0aW9uW10ge1xuICByZXR1cm4gKE9iamVjdC52YWx1ZXMoQWN0aW9uKSBhcyBBY3Rpb25bXSkuZmlsdGVyKChhY3Rpb24pID0+IEFDVElPTl9BQ0NFU1NbYWN0aW9uXSA9PT0gYWNjZXNzKTtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
- export { Resource, ResourceCategory, MEDICAL_RESOURCES, PUBLIC_RESOURCES, CORE_RESOURCES, CLINICAL_RESOURCES, DOCUMENT_RESOURCES, BILLING_RESOURCES, MEMBERSHIP_RESOURCES, INTEGRATION_RESOURCES, SETTINGS_RESOURCES, SCHEDULING_RESOURCES, EXTERNAL_RESOURCES, SYSTEM_RESOURCES, isMedicalResource, isPublicResource, getResourceCategories, getResourcesByCategory, } from './resources';
2
- export { Action } from './actions';
1
+ export { Resource, ResourceCategory, MEDICAL_RESOURCES, PUBLIC_RESOURCES, CORE_RESOURCES, MEMBERSHIP_RESOURCES, CLINICAL_RESOURCES, DOCUMENT_RESOURCES, SETTINGS_RESOURCES, INTEGRATION_RESOURCES, SCHEDULING_RESOURCES, EXTERNAL_RESOURCES, SYSTEM_RESOURCES, isMedicalResource, isPublicResource, getResourceCategories, getResourcesByCategory, getResourcesByCategories, } from './resources';
2
+ export { Action, ActionAccess, getActionAccess, isReadAction, isWriteAction, getActionsByAccess } from './actions';
3
3
  export { Operation, OPERATION, getResourceFromOperation, getActionFromOperation } from './operation';
4
+ export { getResourceActions, getAllResourceActions, getResourceActionsByAccess, getAllResourceActionsByAccess, getResourceOperationsByAccess, generateOperationsForResources, } from './resource-actions';
4
5
  export * from './labels';
5
- export { Operations, getAllOperations, getOperationsByResource, getOperationsByAction } from './predefined';
@@ -14,19 +14,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.getOperationsByAction = exports.getOperationsByResource = exports.getAllOperations = exports.Operations = exports.getActionFromOperation = exports.getResourceFromOperation = exports.Operation = exports.Action = exports.getResourcesByCategory = exports.getResourceCategories = exports.isPublicResource = exports.isMedicalResource = exports.SYSTEM_RESOURCES = exports.EXTERNAL_RESOURCES = exports.SCHEDULING_RESOURCES = exports.SETTINGS_RESOURCES = exports.INTEGRATION_RESOURCES = exports.MEMBERSHIP_RESOURCES = exports.BILLING_RESOURCES = exports.DOCUMENT_RESOURCES = exports.CLINICAL_RESOURCES = exports.CORE_RESOURCES = exports.PUBLIC_RESOURCES = exports.MEDICAL_RESOURCES = exports.ResourceCategory = exports.Resource = void 0;
17
+ exports.generateOperationsForResources = exports.getResourceOperationsByAccess = exports.getAllResourceActionsByAccess = exports.getResourceActionsByAccess = exports.getAllResourceActions = exports.getResourceActions = exports.getActionFromOperation = exports.getResourceFromOperation = exports.Operation = exports.getActionsByAccess = exports.isWriteAction = exports.isReadAction = exports.getActionAccess = exports.ActionAccess = exports.Action = exports.getResourcesByCategories = exports.getResourcesByCategory = exports.getResourceCategories = exports.isPublicResource = exports.isMedicalResource = exports.SYSTEM_RESOURCES = exports.EXTERNAL_RESOURCES = exports.SCHEDULING_RESOURCES = exports.INTEGRATION_RESOURCES = exports.SETTINGS_RESOURCES = exports.DOCUMENT_RESOURCES = exports.CLINICAL_RESOURCES = exports.MEMBERSHIP_RESOURCES = exports.CORE_RESOURCES = exports.PUBLIC_RESOURCES = exports.MEDICAL_RESOURCES = exports.ResourceCategory = exports.Resource = void 0;
18
18
  var resources_1 = require("./resources");
19
19
  Object.defineProperty(exports, "Resource", { enumerable: true, get: function () { return resources_1.Resource; } });
20
20
  Object.defineProperty(exports, "ResourceCategory", { enumerable: true, get: function () { return resources_1.ResourceCategory; } });
21
21
  Object.defineProperty(exports, "MEDICAL_RESOURCES", { enumerable: true, get: function () { return resources_1.MEDICAL_RESOURCES; } });
22
22
  Object.defineProperty(exports, "PUBLIC_RESOURCES", { enumerable: true, get: function () { return resources_1.PUBLIC_RESOURCES; } });
23
23
  Object.defineProperty(exports, "CORE_RESOURCES", { enumerable: true, get: function () { return resources_1.CORE_RESOURCES; } });
24
+ Object.defineProperty(exports, "MEMBERSHIP_RESOURCES", { enumerable: true, get: function () { return resources_1.MEMBERSHIP_RESOURCES; } });
24
25
  Object.defineProperty(exports, "CLINICAL_RESOURCES", { enumerable: true, get: function () { return resources_1.CLINICAL_RESOURCES; } });
25
26
  Object.defineProperty(exports, "DOCUMENT_RESOURCES", { enumerable: true, get: function () { return resources_1.DOCUMENT_RESOURCES; } });
26
- Object.defineProperty(exports, "BILLING_RESOURCES", { enumerable: true, get: function () { return resources_1.BILLING_RESOURCES; } });
27
- Object.defineProperty(exports, "MEMBERSHIP_RESOURCES", { enumerable: true, get: function () { return resources_1.MEMBERSHIP_RESOURCES; } });
28
- Object.defineProperty(exports, "INTEGRATION_RESOURCES", { enumerable: true, get: function () { return resources_1.INTEGRATION_RESOURCES; } });
29
27
  Object.defineProperty(exports, "SETTINGS_RESOURCES", { enumerable: true, get: function () { return resources_1.SETTINGS_RESOURCES; } });
28
+ Object.defineProperty(exports, "INTEGRATION_RESOURCES", { enumerable: true, get: function () { return resources_1.INTEGRATION_RESOURCES; } });
30
29
  Object.defineProperty(exports, "SCHEDULING_RESOURCES", { enumerable: true, get: function () { return resources_1.SCHEDULING_RESOURCES; } });
31
30
  Object.defineProperty(exports, "EXTERNAL_RESOURCES", { enumerable: true, get: function () { return resources_1.EXTERNAL_RESOURCES; } });
32
31
  Object.defineProperty(exports, "SYSTEM_RESOURCES", { enumerable: true, get: function () { return resources_1.SYSTEM_RESOURCES; } });
@@ -34,16 +33,24 @@ Object.defineProperty(exports, "isMedicalResource", { enumerable: true, get: fun
34
33
  Object.defineProperty(exports, "isPublicResource", { enumerable: true, get: function () { return resources_1.isPublicResource; } });
35
34
  Object.defineProperty(exports, "getResourceCategories", { enumerable: true, get: function () { return resources_1.getResourceCategories; } });
36
35
  Object.defineProperty(exports, "getResourcesByCategory", { enumerable: true, get: function () { return resources_1.getResourcesByCategory; } });
36
+ Object.defineProperty(exports, "getResourcesByCategories", { enumerable: true, get: function () { return resources_1.getResourcesByCategories; } });
37
37
  var actions_1 = require("./actions");
38
38
  Object.defineProperty(exports, "Action", { enumerable: true, get: function () { return actions_1.Action; } });
39
+ Object.defineProperty(exports, "ActionAccess", { enumerable: true, get: function () { return actions_1.ActionAccess; } });
40
+ Object.defineProperty(exports, "getActionAccess", { enumerable: true, get: function () { return actions_1.getActionAccess; } });
41
+ Object.defineProperty(exports, "isReadAction", { enumerable: true, get: function () { return actions_1.isReadAction; } });
42
+ Object.defineProperty(exports, "isWriteAction", { enumerable: true, get: function () { return actions_1.isWriteAction; } });
43
+ Object.defineProperty(exports, "getActionsByAccess", { enumerable: true, get: function () { return actions_1.getActionsByAccess; } });
39
44
  var operation_1 = require("./operation");
40
45
  Object.defineProperty(exports, "Operation", { enumerable: true, get: function () { return operation_1.Operation; } });
41
46
  Object.defineProperty(exports, "getResourceFromOperation", { enumerable: true, get: function () { return operation_1.getResourceFromOperation; } });
42
47
  Object.defineProperty(exports, "getActionFromOperation", { enumerable: true, get: function () { return operation_1.getActionFromOperation; } });
48
+ var resource_actions_1 = require("./resource-actions");
49
+ Object.defineProperty(exports, "getResourceActions", { enumerable: true, get: function () { return resource_actions_1.getResourceActions; } });
50
+ Object.defineProperty(exports, "getAllResourceActions", { enumerable: true, get: function () { return resource_actions_1.getAllResourceActions; } });
51
+ Object.defineProperty(exports, "getResourceActionsByAccess", { enumerable: true, get: function () { return resource_actions_1.getResourceActionsByAccess; } });
52
+ Object.defineProperty(exports, "getAllResourceActionsByAccess", { enumerable: true, get: function () { return resource_actions_1.getAllResourceActionsByAccess; } });
53
+ Object.defineProperty(exports, "getResourceOperationsByAccess", { enumerable: true, get: function () { return resource_actions_1.getResourceOperationsByAccess; } });
54
+ Object.defineProperty(exports, "generateOperationsForResources", { enumerable: true, get: function () { return resource_actions_1.generateOperationsForResources; } });
43
55
  __exportStar(require("./labels"), exports);
44
- var predefined_1 = require("./predefined");
45
- Object.defineProperty(exports, "Operations", { enumerable: true, get: function () { return predefined_1.Operations; } });
46
- Object.defineProperty(exports, "getAllOperations", { enumerable: true, get: function () { return predefined_1.getAllOperations; } });
47
- Object.defineProperty(exports, "getOperationsByResource", { enumerable: true, get: function () { return predefined_1.getOperationsByResource; } });
48
- Object.defineProperty(exports, "getOperationsByAction", { enumerable: true, get: function () { return predefined_1.getOperationsByAction; } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3BlcmF0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQW1CcUI7QUFsQm5CLHFHQUFBLFFBQVEsT0FBQTtBQUNSLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDhHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDJHQUFBLGNBQWMsT0FBQTtBQUNkLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLDhHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLGlIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLGtIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLGlIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDhHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLGtIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLG1IQUFBLHNCQUFzQixPQUFBO0FBRXhCLHFDQUFtQztBQUExQixpR0FBQSxNQUFNLE9BQUE7QUFDZix5Q0FBcUc7QUFBNUYsc0dBQUEsU0FBUyxPQUFBO0FBQWEscUhBQUEsd0JBQXdCLE9BQUE7QUFBRSxtSEFBQSxzQkFBc0IsT0FBQTtBQUMvRSwyQ0FBeUI7QUFDekIsMkNBQTRHO0FBQW5HLHdHQUFBLFVBQVUsT0FBQTtBQUFFLDhHQUFBLGdCQUFnQixPQUFBO0FBQUUscUhBQUEsdUJBQXVCLE9BQUE7QUFBRSxtSEFBQSxxQkFBcUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIFJlc291cmNlLFxuICBSZXNvdXJjZUNhdGVnb3J5LFxuICBNRURJQ0FMX1JFU09VUkNFUyxcbiAgUFVCTElDX1JFU09VUkNFUyxcbiAgQ09SRV9SRVNPVVJDRVMsXG4gIENMSU5JQ0FMX1JFU09VUkNFUyxcbiAgRE9DVU1FTlRfUkVTT1VSQ0VTLFxuICBCSUxMSU5HX1JFU09VUkNFUyxcbiAgTUVNQkVSU0hJUF9SRVNPVVJDRVMsXG4gIElOVEVHUkFUSU9OX1JFU09VUkNFUyxcbiAgU0VUVElOR1NfUkVTT1VSQ0VTLFxuICBTQ0hFRFVMSU5HX1JFU09VUkNFUyxcbiAgRVhURVJOQUxfUkVTT1VSQ0VTLFxuICBTWVNURU1fUkVTT1VSQ0VTLFxuICBpc01lZGljYWxSZXNvdXJjZSxcbiAgaXNQdWJsaWNSZXNvdXJjZSxcbiAgZ2V0UmVzb3VyY2VDYXRlZ29yaWVzLFxuICBnZXRSZXNvdXJjZXNCeUNhdGVnb3J5LFxufSBmcm9tICcuL3Jlc291cmNlcyc7XG5leHBvcnQgeyBBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMnO1xuZXhwb3J0IHsgT3BlcmF0aW9uLCBPUEVSQVRJT04sIGdldFJlc291cmNlRnJvbU9wZXJhdGlvbiwgZ2V0QWN0aW9uRnJvbU9wZXJhdGlvbiB9IGZyb20gJy4vb3BlcmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGFiZWxzJztcbmV4cG9ydCB7IE9wZXJhdGlvbnMsIGdldEFsbE9wZXJhdGlvbnMsIGdldE9wZXJhdGlvbnNCeVJlc291cmNlLCBnZXRPcGVyYXRpb25zQnlBY3Rpb24gfSBmcm9tICcuL3ByZWRlZmluZWQnO1xuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3BlcmF0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQW1CcUI7QUFsQm5CLHFHQUFBLFFBQVEsT0FBQTtBQUNSLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDhHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDJHQUFBLGNBQWMsT0FBQTtBQUNkLGlIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLGtIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLGlIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDhHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLGtIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLG1IQUFBLHNCQUFzQixPQUFBO0FBQ3RCLHFIQUFBLHdCQUF3QixPQUFBO0FBRTFCLHFDQUFtSDtBQUExRyxpR0FBQSxNQUFNLE9BQUE7QUFBRSx1R0FBQSxZQUFZLE9BQUE7QUFBRSwwR0FBQSxlQUFlLE9BQUE7QUFBRSx1R0FBQSxZQUFZLE9BQUE7QUFBRSx3R0FBQSxhQUFhLE9BQUE7QUFBRSw2R0FBQSxrQkFBa0IsT0FBQTtBQUMvRix5Q0FBcUc7QUFBNUYsc0dBQUEsU0FBUyxPQUFBO0FBQWEscUhBQUEsd0JBQXdCLE9BQUE7QUFBRSxtSEFBQSxzQkFBc0IsT0FBQTtBQUMvRSx1REFPNEI7QUFOMUIsc0hBQUEsa0JBQWtCLE9BQUE7QUFDbEIseUhBQUEscUJBQXFCLE9BQUE7QUFDckIsOEhBQUEsMEJBQTBCLE9BQUE7QUFDMUIsaUlBQUEsNkJBQTZCLE9BQUE7QUFDN0IsaUlBQUEsNkJBQTZCLE9BQUE7QUFDN0Isa0lBQUEsOEJBQThCLE9BQUE7QUFFaEMsMkNBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtcbiAgUmVzb3VyY2UsXG4gIFJlc291cmNlQ2F0ZWdvcnksXG4gIE1FRElDQUxfUkVTT1VSQ0VTLFxuICBQVUJMSUNfUkVTT1VSQ0VTLFxuICBDT1JFX1JFU09VUkNFUyxcbiAgTUVNQkVSU0hJUF9SRVNPVVJDRVMsXG4gIENMSU5JQ0FMX1JFU09VUkNFUyxcbiAgRE9DVU1FTlRfUkVTT1VSQ0VTLFxuICBTRVRUSU5HU19SRVNPVVJDRVMsXG4gIElOVEVHUkFUSU9OX1JFU09VUkNFUyxcbiAgU0NIRURVTElOR19SRVNPVVJDRVMsXG4gIEVYVEVSTkFMX1JFU09VUkNFUyxcbiAgU1lTVEVNX1JFU09VUkNFUyxcbiAgaXNNZWRpY2FsUmVzb3VyY2UsXG4gIGlzUHVibGljUmVzb3VyY2UsXG4gIGdldFJlc291cmNlQ2F0ZWdvcmllcyxcbiAgZ2V0UmVzb3VyY2VzQnlDYXRlZ29yeSxcbiAgZ2V0UmVzb3VyY2VzQnlDYXRlZ29yaWVzLFxufSBmcm9tICcuL3Jlc291cmNlcyc7XG5leHBvcnQgeyBBY3Rpb24sIEFjdGlvbkFjY2VzcywgZ2V0QWN0aW9uQWNjZXNzLCBpc1JlYWRBY3Rpb24sIGlzV3JpdGVBY3Rpb24sIGdldEFjdGlvbnNCeUFjY2VzcyB9IGZyb20gJy4vYWN0aW9ucyc7XG5leHBvcnQgeyBPcGVyYXRpb24sIE9QRVJBVElPTiwgZ2V0UmVzb3VyY2VGcm9tT3BlcmF0aW9uLCBnZXRBY3Rpb25Gcm9tT3BlcmF0aW9uIH0gZnJvbSAnLi9vcGVyYXRpb24nO1xuZXhwb3J0IHtcbiAgZ2V0UmVzb3VyY2VBY3Rpb25zLFxuICBnZXRBbGxSZXNvdXJjZUFjdGlvbnMsXG4gIGdldFJlc291cmNlQWN0aW9uc0J5QWNjZXNzLFxuICBnZXRBbGxSZXNvdXJjZUFjdGlvbnNCeUFjY2VzcyxcbiAgZ2V0UmVzb3VyY2VPcGVyYXRpb25zQnlBY2Nlc3MsXG4gIGdlbmVyYXRlT3BlcmF0aW9uc0ZvclJlc291cmNlcyxcbn0gZnJvbSAnLi9yZXNvdXJjZS1hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGFiZWxzJztcbiJdfQ==
@@ -9,67 +9,37 @@ const operation_1 = require("./operation");
9
9
  const resources_1 = require("./resources");
10
10
  const enAction = {
11
11
  [actions_1.Action.CREATE]: 'Create',
12
- [actions_1.Action.DELETE]: 'Delete',
13
- [actions_1.Action.DISABLE]: 'Disable',
14
- [actions_1.Action.ENABLE]: 'Enable',
15
- [actions_1.Action.RECOVER]: 'Recover',
16
- [actions_1.Action.TRANSFER_OWNERSHIP]: 'Transfer Ownership',
17
12
  [actions_1.Action.VIEW]: 'View',
18
13
  [actions_1.Action.UPDATE]: 'Update',
19
- [actions_1.Action.ROTATE_TOKEN]: 'Rotate Token',
20
- [actions_1.Action.GENERATE]: 'Generate',
21
- [actions_1.Action.PREVIEW]: 'Preview',
14
+ [actions_1.Action.DELETE]: 'Delete',
15
+ [actions_1.Action.ASSIGN]: 'Assign',
22
16
  [actions_1.Action.CANCEL]: 'Cancel',
23
17
  [actions_1.Action.CHECK_IN]: 'Check In',
24
18
  [actions_1.Action.COMPLETE]: 'Complete',
25
- [actions_1.Action.REOPEN]: 'Reopen',
26
- [actions_1.Action.RESET]: 'Reset',
27
- [actions_1.Action.START]: 'Start',
28
- [actions_1.Action.UNDO_CANCEL]: 'Undo Cancel',
29
- [actions_1.Action.UNDO_CHECK_IN]: 'Undo Check In',
30
- [actions_1.Action.UNSTART]: 'Unstart',
31
- [actions_1.Action.ASSIGN]: 'Assign',
32
- [actions_1.Action.UPDATE_STATUS]: 'Update Status',
33
- [actions_1.Action.UPDATE_SCHEDULE]: 'Update Schedule',
34
- [actions_1.Action.CORRECT_TIMESTAMPS]: 'Correct Timestamps',
35
- [actions_1.Action.UPDATE_TYPE]: 'Update Type',
36
- [actions_1.Action.SEARCH]: 'Search',
37
- [actions_1.Action.ASSIGN_ROLES]: 'Assign Roles',
19
+ [actions_1.Action.DISABLE]: 'Disable',
20
+ [actions_1.Action.ENABLE]: 'Enable',
21
+ [actions_1.Action.GENERATE]: 'Generate',
38
22
  [actions_1.Action.INVITE]: 'Invite',
39
23
  [actions_1.Action.REMOVE]: 'Remove',
40
- [actions_1.Action.UPLOAD]: 'Upload',
24
+ [actions_1.Action.ROTATE]: 'Rotate',
25
+ [actions_1.Action.TRANSFER_OWNERSHIP]: 'Transfer Ownership',
41
26
  };
42
27
  const frAction = {
43
28
  [actions_1.Action.CREATE]: 'Creer',
44
- [actions_1.Action.DELETE]: 'Supprimer',
45
- [actions_1.Action.DISABLE]: 'Desactiver',
46
- [actions_1.Action.ENABLE]: 'Activer',
47
- [actions_1.Action.RECOVER]: 'Recuperer',
48
- [actions_1.Action.TRANSFER_OWNERSHIP]: 'Transferer la propriete',
49
29
  [actions_1.Action.VIEW]: 'Voir',
50
30
  [actions_1.Action.UPDATE]: 'Mettre a jour',
51
- [actions_1.Action.ROTATE_TOKEN]: 'Renouveler le jeton',
52
- [actions_1.Action.GENERATE]: 'Generer',
53
- [actions_1.Action.PREVIEW]: 'Previsualiser',
31
+ [actions_1.Action.DELETE]: 'Supprimer',
32
+ [actions_1.Action.ASSIGN]: 'Assigner',
54
33
  [actions_1.Action.CANCEL]: 'Annuler',
55
34
  [actions_1.Action.CHECK_IN]: 'Enregistrer l arrivee',
56
35
  [actions_1.Action.COMPLETE]: 'Terminer',
57
- [actions_1.Action.REOPEN]: 'Reouvrir',
58
- [actions_1.Action.RESET]: 'Reinitialiser',
59
- [actions_1.Action.START]: 'Demarrer',
60
- [actions_1.Action.UNDO_CANCEL]: 'Annuler l annulation',
61
- [actions_1.Action.UNDO_CHECK_IN]: 'Annuler l enregistrement',
62
- [actions_1.Action.UNSTART]: 'Annuler le demarrage',
63
- [actions_1.Action.ASSIGN]: 'Assigner',
64
- [actions_1.Action.CORRECT_TIMESTAMPS]: 'Corriger les horodatages',
65
- [actions_1.Action.UPDATE_STATUS]: 'Mettre a jour le statut',
66
- [actions_1.Action.UPDATE_SCHEDULE]: 'Mettre a jour le planning',
67
- [actions_1.Action.UPDATE_TYPE]: 'Mettre a jour le type',
68
- [actions_1.Action.SEARCH]: 'Rechercher',
69
- [actions_1.Action.ASSIGN_ROLES]: 'Assigner les roles',
36
+ [actions_1.Action.DISABLE]: 'Desactiver',
37
+ [actions_1.Action.ENABLE]: 'Activer',
38
+ [actions_1.Action.GENERATE]: 'Generer',
70
39
  [actions_1.Action.INVITE]: 'Inviter',
71
40
  [actions_1.Action.REMOVE]: 'Retirer',
72
- [actions_1.Action.UPLOAD]: 'Televerser',
41
+ [actions_1.Action.ROTATE]: 'Tourner',
42
+ [actions_1.Action.TRANSFER_OWNERSHIP]: 'Transferer la propriete',
73
43
  };
74
44
  const frResourceOverrides = {
75
45
  [resources_1.Resource.ACCOUNT]: 'Compte',
@@ -77,11 +47,11 @@ const frResourceOverrides = {
77
47
  [resources_1.Resource.CALENDAR_SETTINGS]: 'Parametres du calendrier',
78
48
  [resources_1.Resource.CALENDAR_SYNC]: 'Synchronisation du calendrier',
79
49
  [resources_1.Resource.CALENDAR_TOKEN]: 'Jeton de calendrier',
50
+ [resources_1.Resource.CONTACT]: 'Contact',
80
51
  [resources_1.Resource.DOCUMENT_LAYOUT]: 'Mise en page du document',
81
52
  [resources_1.Resource.DOCUMENT_MODEL]: 'Modele de document',
82
53
  [resources_1.Resource.GENERAL_SETTINGS]: 'Parametres generaux',
83
54
  [resources_1.Resource.GENERATED_DOCUMENT]: 'Document genere',
84
- [resources_1.Resource.LOG_RECORDS]: 'Journaux',
85
55
  [resources_1.Resource.LOCATION]: 'Lieu',
86
56
  [resources_1.Resource.MEASURE_MODEL]: 'Modele de mesure',
87
57
  [resources_1.Resource.MEDICATION_SEARCH]: 'Recherche de medicaments',
@@ -92,10 +62,13 @@ const frResourceOverrides = {
92
62
  [resources_1.Resource.MEMBERSHIP]: 'Adhesion',
93
63
  [resources_1.Resource.OBSERVATION]: 'Observation',
94
64
  [resources_1.Resource.PATIENT]: 'Patient',
65
+ [resources_1.Resource.PATIENT_MEDICAL_NOTE]: 'Note medicale patient',
95
66
  [resources_1.Resource.PATIENT_PAYMENT]: 'Paiement du patient',
67
+ [resources_1.Resource.PATIENT_PROPERTY_MODEL]: 'Modele de propriete patient',
96
68
  [resources_1.Resource.PREFERENCES]: 'Preferences',
97
69
  [resources_1.Resource.PRESCRIPTION]: 'Ordonnance',
98
70
  [resources_1.Resource.PRESCRIPTION_MODEL]: "Modele d'ordonnance",
71
+ [resources_1.Resource.ROLE]: 'Role',
99
72
  [resources_1.Resource.TASK_TYPE]: 'Type de tache',
100
73
  [resources_1.Resource.UPLOAD_DOCUMENT]: 'Document televerse',
101
74
  [resources_1.Resource.USER]: 'Utilisateur',
@@ -103,24 +76,22 @@ const frResourceOverrides = {
103
76
  };
104
77
  const enResourceCategory = {
105
78
  [resources_1.ResourceCategory.CORE]: 'Core',
79
+ [resources_1.ResourceCategory.MEMBERSHIP]: 'Membership',
106
80
  [resources_1.ResourceCategory.CLINICAL]: 'Clinical',
107
81
  [resources_1.ResourceCategory.DOCUMENTS]: 'Documents',
108
- [resources_1.ResourceCategory.BILLING]: 'Billing',
109
- [resources_1.ResourceCategory.MEMBERSHIP]: 'Membership',
110
- [resources_1.ResourceCategory.INTEGRATION]: 'Integration',
111
82
  [resources_1.ResourceCategory.SETTINGS]: 'Settings',
83
+ [resources_1.ResourceCategory.INTEGRATION]: 'Integration',
112
84
  [resources_1.ResourceCategory.SCHEDULING]: 'Scheduling',
113
85
  [resources_1.ResourceCategory.EXTERNAL]: 'External',
114
86
  [resources_1.ResourceCategory.SYSTEM]: 'System',
115
87
  };
116
88
  const frResourceCategory = {
117
89
  [resources_1.ResourceCategory.CORE]: 'Noyau',
90
+ [resources_1.ResourceCategory.MEMBERSHIP]: 'Adhesion',
118
91
  [resources_1.ResourceCategory.CLINICAL]: 'Clinique',
119
92
  [resources_1.ResourceCategory.DOCUMENTS]: 'Documents',
120
- [resources_1.ResourceCategory.BILLING]: 'Facturation',
121
- [resources_1.ResourceCategory.MEMBERSHIP]: 'Adhesion',
122
- [resources_1.ResourceCategory.INTEGRATION]: 'Integration',
123
93
  [resources_1.ResourceCategory.SETTINGS]: 'Parametres',
94
+ [resources_1.ResourceCategory.INTEGRATION]: 'Integration',
124
95
  [resources_1.ResourceCategory.SCHEDULING]: 'Planification',
125
96
  [resources_1.ResourceCategory.EXTERNAL]: 'Externe',
126
97
  [resources_1.ResourceCategory.SYSTEM]: 'Systeme',
@@ -153,4 +124,4 @@ function getOperationLabel(operation, locale = 'us-EN', opts) {
153
124
  const r = getResourceLabel(op.resource, locale);
154
125
  return order === 'resource-action' ? `${r}${sep}${a}` : `${a}${sep}${r}`;
155
126
  }
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvbGFiZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBaUpBLHdDQUVDO0FBRUQsNENBR0M7QUFFRCw0REFFQztBQUVELDhDQWFDO0FBM0tELHVDQUFtQztBQUNuQywyQ0FBd0M7QUFDeEMsMkNBQXlEO0FBSXpELE1BQU0sUUFBUSxHQUEyQjtJQUN2QyxDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUztJQUMzQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUztJQUMzQixDQUFDLGdCQUFNLENBQUMsa0JBQWtCLENBQUMsRUFBRSxvQkFBb0I7SUFDakQsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDckIsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFFekIsQ0FBQyxnQkFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLGNBQWM7SUFDckMsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFFM0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDekIsQ0FBQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87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QUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQztBQUMzRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnLi9hY3Rpb25zJztcbmltcG9ydCB7IE9wZXJhdGlvbiB9IGZyb20gJy4vb3BlcmF0aW9uJztcbmltcG9ydCB7IFJlc291cmNlLCBSZXNvdXJjZUNhdGVnb3J5IH0gZnJvbSAnLi9yZXNvdXJjZXMnO1xuXG5leHBvcnQgdHlwZSBMb2NhbGUgPSAnZnItRlInIHwgJ3VzLUVOJztcblxuY29uc3QgZW5BY3Rpb246IFJlY29yZDxBY3Rpb24sIHN0cmluZz4gPSB7XG4gIFtBY3Rpb24uQ1JFQVRFXTogJ0NyZWF0ZScsXG4gIFtBY3Rpb24uREVMRVRFXTogJ0RlbGV0ZScsXG4gIFtBY3Rpb24uRElTQUJMRV06ICdEaXNhYmxlJyxcbiAgW0FjdGlvbi5FTkFCTEVdOiAnRW5hYmxlJyxcbiAgW0FjdGlvbi5SRUNPVkVSXTogJ1JlY292ZXInLFxuICBbQWN0aW9uLlRSQU5TRkVSX09XTkVSU0hJUF06ICdUcmFuc2ZlciBPd25lcnNoaXAnLFxuICBbQWN0aW9uLlZJRVddOiAnVmlldycsXG4gIFtBY3Rpb24uVVBEQVRFXTogJ1VwZGF0ZScsXG5cbiAgW0FjdGlvbi5ST1RBVEVfVE9LRU5dOiAnUm90YXRlIFRva2VuJyxcbiAgW0FjdGlvbi5HRU5FUkFURV06ICdHZW5lcmF0ZScsXG4gIFtBY3Rpb24uUFJFVklFV106ICdQcmV2aWV3JyxcblxuICBbQWN0aW9uLkNBTkNFTF06ICdDYW5jZWwnLFxuICBbQWN0aW9uLkNIRUNLX0lOXTogJ0NoZWNrIEluJyxcbiAgW0FjdGlvbi5DT01QTEVURV06ICdDb21wbGV0ZScsXG4gIFtBY3Rpb24uUkVPUEVOXTogJ1Jlb3BlbicsXG4gIFtBY3Rpb24uUkVTRVRdOiAnUmVzZXQnLFxuICBbQWN0aW9uLlNUQVJUXTogJ1N0YXJ0JyxcbiAgW0FjdGlvbi5VTkRPX0NBTkNFTF06ICdVbmRvIENhbmNlbCcsXG4gIFtBY3Rpb24uVU5ET19DSEVDS19JTl06ICdVbmRvIENoZWNrIEluJyxcbiAgW0FjdGlvbi5VTlNUQVJUXTogJ1Vuc3RhcnQnLFxuXG4gIFtBY3Rpb24uQVNTSUdOXTogJ0Fzc2lnbicsXG4gIFtBY3Rpb24uVVBEQVRFX1NUQVRVU106ICdVcGRhdGUgU3RhdHVzJyxcbiAgW0FjdGlvbi5VUERBVEVfU0NIRURVTEVdOiAnVXBkYXRlIFNjaGVkdWxlJyxcbiAgW0FjdGlvbi5DT1JSRUNUX1RJTUVTVEFNUFNdOiAnQ29ycmVjdCBUaW1lc3RhbXBzJyxcbiAgW0FjdGlvbi5VUERBVEVfVFlQRV06ICdVcGRhdGUgVHlwZScsXG5cbiAgW0FjdGlvbi5TRUFSQ0hdOiAnU2VhcmNoJyxcbiAgW0FjdGlvbi5BU1NJR05fUk9MRVNdOiAnQXNzaWduIFJvbGVzJyxcbiAgW0FjdGlvbi5JTlZJVEVdOiAnSW52aXRlJyxcbiAgW0FjdGlvbi5SRU1PVkVdOiAnUmVtb3ZlJyxcbiAgW0FjdGlvbi5VUExPQURdOiAnVXBsb2FkJyxcbn07XG5cbmNvbnN0IGZyQWN0aW9uOiBSZWNvcmQ8QWN0aW9uLCBzdHJpbmc+ID0ge1xuICBbQWN0aW9uLkNSRUFURV06ICdDcmVlcicsXG4gIFtBY3Rpb24uREVMRVRFXTogJ1N1cHByaW1lcicsXG4gIFtBY3Rpb24uRElTQUJMRV06ICdEZXNhY3RpdmVyJyxcbiAgW0FjdGlvbi5FTkFCTEVdOiAnQWN0aXZlcicsXG4gIFtBY3Rpb24uUkVDT1ZFUl06ICdSZWN1cGVyZXInLFxuICBbQWN0aW9uLlRSQU5TRkVSX09XTkVSU0hJUF06ICdUcmFuc2ZlcmVyIGxhIHByb3ByaWV0ZScsXG4gIFtBY3Rpb24uVklFV106ICdWb2lyJyxcbiAgW0FjdGlvbi5VUERBVEVdOiAnTWV0dHJlIGEgam91cicsXG5cbiAgW0FjdGlvbi5ST1RBVEVfVE9LRU5dOiAnUmVub3V2ZWxlciBsZSBqZXRvbicsXG4gIFtBY3Rpb24uR0VORVJBVEVdOiAnR2VuZXJlcicsXG4gIFtBY3Rpb24uUFJFVklFV106ICdQcmV2aXN1YWxpc2VyJyxcblxuICBbQWN0aW9uLkNBTkNFTF06ICdBbm51bGVyJyxcbiAgW0FjdGlvbi5DSEVDS19JTl06ICdFbnJlZ2lzdHJlciBsIGFycml2ZWUnLFxuICBbQWN0aW9uLkNPTVBMRVRFXTogJ1Rlcm1pbmVyJyxcbiAgW0FjdGlvbi5SRU9QRU5dOiAnUmVvdXZyaXInLFxuICBbQWN0aW9uLlJFU0VUXTogJ1JlaW5pdGlhbGlzZXInLFxuICBbQWN0aW9uLlNUQVJUXTogJ0RlbWFycmVyJyxcbiAgW0FjdGlvbi5VTkRPX0NBTkNFTF06ICdBbm51bGVyIGwgYW5udWxhdGlvbicsXG4gIFtBY3Rpb24uVU5ET19DSEVDS19JTl06ICdBbm51bGVyIGwgZW5yZWdpc3RyZW1lbnQnLFxuICBbQWN0aW9uLlVOU1RBUlRdOiAnQW5udWxlciBsZSBkZW1hcnJhZ2UnLFxuXG4gIFtBY3Rpb24uQVNTSUdOXTogJ0Fzc2lnbmVyJyxcbiAgW0FjdGlvbi5DT1JSRUNUX1RJTUVTVEFNUFNdOiAnQ29ycmlnZXIgbGVzIGhvcm9kYXRhZ2VzJyxcbiAgW0FjdGlvbi5VUERBVEVfU1RBVFVTXTogJ01ldHRyZSBhIGpvdXIgbGUgc3RhdHV0JyxcbiAgW0FjdGlvbi5VUERBVEVfU0NIRURVTEVdOiAnTWV0dHJlIGEgam91ciBsZSBwbGFubmluZycsXG4gIFtBY3Rpb24uVVBEQVRFX1RZUEVdOiAnTWV0dHJlIGEgam91ciBsZSB0eXBlJyxcblxuICBbQWN0aW9uLlNFQVJDSF06ICdSZWNoZXJjaGVyJyxcbiAgW0FjdGlvbi5BU1NJR05fUk9MRVNdOiAnQXNzaWduZXIgbGVzIHJvbGVzJyxcbiAgW0FjdGlvbi5JTlZJVEVdOiAnSW52aXRlcicsXG4gIFtBY3Rpb24uUkVNT1ZFXTogJ1JldGlyZXInLFxuICBbQWN0aW9uLlVQTE9BRF06ICdUZWxldmVyc2VyJyxcbn07XG5cbmNvbnN0IGZyUmVzb3VyY2VPdmVycmlkZXM6IFBhcnRpYWw8UmVjb3JkPFJlc291cmNlLCBzdHJpbmc+PiA9IHtcbiAgW1Jlc291cmNlLkFDQ09VTlRdOiAnQ29tcHRlJyxcbiAgW1Jlc291cmNlLkNBTENVTEFURURfTUVBU1VSRV9NT0RFTF06ICdNb2RlbGUgZGUgbWVzdXJlIGNhbGN1bGVlJyxcbiAgW1Jlc291cmNlLkNBTEVOREFSX1NFVFRJTkdTXTogJ1BhcmFtZXRyZXMgZHUgY2FsZW5kcmllcicsXG4gIFtSZXNvdXJjZS5DQUxFTkRBUl9TWU5DXTogJ1N5bmNocm9uaXNhdGlvbiBkdSBjYWxlbmRyaWVyJyxcbiAgW1Jlc291cmNlLkNBTEVOREFSX1RPS0VOXTogJ0pldG9uIGRlIGNhbGVuZHJpZXInLFxuICBbUmVzb3VyY2UuRE9DVU1FTlRfTEFZT1VUXTogJ01pc2UgZW4gcGFnZSBkdSBkb2N1bWVudCcsXG4gIFtSZXNvdXJjZS5ET0NVTUVOVF9NT0RFTF06ICdNb2RlbGUgZGUgZG9jdW1lbnQnLFxuICBbUmVzb3VyY2UuR0VORVJBTF9TRVRUSU5HU106ICdQYXJhbWV0cmVzIGdlbmVyYXV4JyxcbiAgW1Jlc291cmNlLkdFTkVSQVRFRF9ET0NVTUVOVF06ICdEb2N1bWVudCBnZW5lcmUnLFxuICBbUmVzb3VyY2UuTE9HX1JFQ09SRFNdOiAnSm91cm5hdXgnLFxuICBbUmVzb3VyY2UuTE9DQVRJT05dOiAnTGlldScsXG4gIFtSZXNvdXJjZS5NRUFTVVJFX01PREVMXTogJ01vZGVsZSBkZSBtZXN1cmUnLFxuICBbUmVzb3VyY2UuTUVESUNBVElPTl9TRUFSQ0hdOiAnUmVjaGVyY2hlIGRlIG1lZGljYW1lbnRzJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfSElTVE9SWV06ICdBbnRlY2VkZW50cyBtZWRpY2F1eCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX0hJU1RPUllfTU9ERUxdOiBcIk1vZGVsZSBkJ2FudGVjZWRlbnRzIG1lZGljYXV4XCIsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1NFUlZJQ0VdOiAnU2VydmljZSBtZWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FRElDQUxfU0VSVklDRV9OT1RFXTogJ05vdGUgZHUgc2VydmljZSBtZWRpY2FsJyxcbiAgW1Jlc291cmNlLk1FTUJFUlNISVBdOiAnQWRoZXNpb24nLFxuICBbUmVzb3VyY2UuT0JTRVJWQVRJT05dOiAnT2JzZXJ2YXRpb24nLFxuICBbUmVzb3VyY2UuUEFUSUVOVF06ICdQYXRpZW50JyxcbiAgW1Jlc291cmNlLlBBVElFTlRfUEFZTUVOVF06ICdQYWllbWVudCBkdSBwYXRpZW50JyxcbiAgW1Jlc291cmNlLlBSRUZFUkVOQ0VTXTogJ1ByZWZlcmVuY2VzJyxcbiAgW1Jlc291cmNlLlBSRVNDUklQVElPTl06ICdPcmRvbm5hbmNlJyxcbiAgW1Jlc291cmNlLlBSRVNDUklQVElPTl9NT0RFTF06IFwiTW9kZWxlIGQnb3Jkb25uYW5jZVwiLFxuICBbUmVzb3VyY2UuVEFTS19UWVBFXTogJ1R5cGUgZGUgdGFjaGUnLFxuICBbUmVzb3VyY2UuVVBMT0FEX0RPQ1VNRU5UXTogJ0RvY3VtZW50IHRlbGV2ZXJzZScsXG4gIFtSZXNvdXJjZS5VU0VSXTogJ1V0aWxpc2F0ZXVyJyxcbiAgW1Jlc291cmNlLkFWQUlMQUJMRV9TTE9UU106ICdDcmVuZWF1eCBkaXNwb25pYmxlcycsXG59O1xuXG5jb25zdCBlblJlc291cmNlQ2F0ZWdvcnk6IFJlY29yZDxSZXNvdXJjZUNhdGVnb3J5LCBzdHJpbmc+ID0ge1xuICBbUmVzb3VyY2VDYXRlZ29yeS5DT1JFXTogJ0NvcmUnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5DTElOSUNBTF06ICdDbGluaWNhbCcsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LkRPQ1VNRU5UU106ICdEb2N1bWVudHMnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5CSUxMSU5HXTogJ0JpbGxpbmcnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5NRU1CRVJTSElQXTogJ01lbWJlcnNoaXAnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5JTlRFR1JBVElPTl06ICdJbnRlZ3JhdGlvbicsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LlNFVFRJTkdTXTogJ1NldHRpbmdzJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuU0NIRURVTElOR106ICdTY2hlZHVsaW5nJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuRVhURVJOQUxdOiAnRXh0ZXJuYWwnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5TWVNURU1dOiAnU3lzdGVtJyxcbn07XG5cbmNvbnN0IGZyUmVzb3VyY2VDYXRlZ29yeTogUmVjb3JkPFJlc291cmNlQ2F0ZWdvcnksIHN0cmluZz4gPSB7XG4gIFtSZXNvdXJjZUNhdGVnb3J5LkNPUkVdOiAnTm95YXUnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5DTElOSUNBTF06ICdDbGluaXF1ZScsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LkRPQ1VNRU5UU106ICdEb2N1bWVudHMnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5CSUxMSU5HXTogJ0ZhY3R1cmF0aW9uJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuTUVNQkVSU0hJUF06ICdBZGhlc2lvbicsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LklOVEVHUkFUSU9OXTogJ0ludGVncmF0aW9uJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuU0VUVElOR1NdOiAnUGFyYW1ldHJlcycsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LlNDSEVEVUxJTkddOiAnUGxhbmlmaWNhdGlvbicsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LkVYVEVSTkFMXTogJ0V4dGVybmUnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5TWVNURU1dOiAnU3lzdGVtZScsXG59O1xuXG5mdW5jdGlvbiBodW1hbml6ZUtleShrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBrZXlcbiAgICAudG9Mb3dlckNhc2UoKVxuICAgIC5zcGxpdCgnXycpXG4gICAgLm1hcCgodykgPT4gdy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHcuc2xpY2UoMSkpXG4gICAgLmpvaW4oJyAnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFjdGlvbkxhYmVsKGFjdGlvbjogQWN0aW9uLCBsb2NhbGU6IExvY2FsZSA9ICd1cy1FTicpOiBzdHJpbmcge1xuICByZXR1cm4gbG9jYWxlID09PSAnZnItRlInID8gZnJBY3Rpb25bYWN0aW9uXSA6IGVuQWN0aW9uW2FjdGlvbl07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZXNvdXJjZUxhYmVsKHJlc291cmNlOiBSZXNvdXJjZSwgbG9jYWxlOiBMb2NhbGUgPSAndXMtRU4nKTogc3RyaW5nIHtcbiAgaWYgKGxvY2FsZSA9PT0gJ2ZyLUZSJykgcmV0dXJuIGZyUmVzb3VyY2VPdmVycmlkZXNbcmVzb3VyY2VdID8/IGh1bWFuaXplS2V5KHJlc291cmNlKTtcbiAgcmV0dXJuIGh1bWFuaXplS2V5KHJlc291cmNlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlQ2F0ZWdvcnlMYWJlbChjYXRlZ29yeTogUmVzb3VyY2VDYXRlZ29yeSwgbG9jYWxlOiBMb2NhbGUgPSAndXMtRU4nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGxvY2FsZSA9PT0gJ2ZyLUZSJyA/IGZyUmVzb3VyY2VDYXRlZ29yeVtjYXRlZ29yeV0gOiBlblJlc291cmNlQ2F0ZWdvcnlbY2F0ZWdvcnldO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3BlcmF0aW9uTGFiZWwoXG4gIG9wZXJhdGlvbjogT3BlcmF0aW9uIHwgc3RyaW5nLFxuICBsb2NhbGU6IExvY2FsZSA9ICd1cy1FTicsXG4gIG9wdHM/OiB7IG9yZGVyPzogJ2FjdGlvbi1yZXNvdXJjZScgfCAncmVzb3VyY2UtYWN0aW9uJzsgc2VwYXJhdG9yPzogc3RyaW5nIH0sXG4pOiBzdHJpbmcge1xuICBjb25zdCBvcmRlciA9IG9wdHM/Lm9yZGVyID8/ICdhY3Rpb24tcmVzb3VyY2UnO1xuICBjb25zdCBzZXAgPSBvcHRzPy5zZXBhcmF0b3IgPz8gJyAnO1xuXG4gIGNvbnN0IG9wID0gdHlwZW9mIG9wZXJhdGlvbiA9PT0gJ3N0cmluZycgPyBPcGVyYXRpb24uZnJvbVN0cmluZyhvcGVyYXRpb24pIDogb3BlcmF0aW9uO1xuICBpZiAoIW9wKSByZXR1cm4gJyc7XG4gIGNvbnN0IGEgPSBnZXRBY3Rpb25MYWJlbChvcC5hY3Rpb24sIGxvY2FsZSk7XG4gIGNvbnN0IHIgPSBnZXRSZXNvdXJjZUxhYmVsKG9wLnJlc291cmNlLCBsb2NhbGUpO1xuICByZXR1cm4gb3JkZXIgPT09ICdyZXNvdXJjZS1hY3Rpb24nID8gYCR7cn0ke3NlcH0ke2F9YCA6IGAke2F9JHtzZXB9JHtyfWA7XG59XG4iXX0=
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvbGFiZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBNEdBLHdDQUVDO0FBRUQsNENBR0M7QUFFRCw0REFFQztBQUVELDhDQWFDO0FBdElELHVDQUFtQztBQUNuQywyQ0FBd0M7QUFDeEMsMkNBQXlEO0FBSXpELE1BQU0sUUFBUSxHQUEyQjtJQUN2QyxDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTTtJQUNyQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVTtJQUM3QixDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVTtJQUM3QixDQUFDLGdCQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUztJQUMzQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVTtJQUM3QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLGdCQUFNLENBQUMsa0JBQWtCLENBQUMsRUFBRSxvQkFBb0I7Q0FDbEQsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUEyQjtJQUN2QyxDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTztJQUN4QixDQUFDLGdCQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTTtJQUNyQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsZUFBZTtJQUNoQyxDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsV0FBVztJQUM1QixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVTtJQUMzQixDQUFDLGdCQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUztJQUMxQixDQUFDLGdCQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsdUJBQXVCO0lBQzFDLENBQUMsZ0JBQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVO0lBQzdCLENBQUMsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxZQUFZO0lBQzlCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTO0lBQzFCLENBQUMsZ0JBQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxTQUFTO0lBQzVCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTO0lBQzFCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTO0lBQzFCLENBQUMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTO0lBQzFCLENBQUMsZ0JBQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLHlCQUF5QjtDQUN2RCxDQUFDO0FBRUYsTUFBTSxtQkFBbUIsR0FBc0M7SUFDN0QsQ0FBQyxvQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFFBQVE7SUFDNUIsQ0FBQyxvQkFBUSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsMkJBQTJCO0lBQ2hFLENBQUMsb0JBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLDBCQUEwQjtJQUN4RCxDQUFDLG9CQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsK0JBQStCO0lBQ3pELENBQUMsb0JBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRSxxQkFBcUI7SUFDaEQsQ0FBQyxvQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDN0IsQ0FBQyxvQkFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLDBCQUEwQjtJQUN0RCxDQUFDLG9CQUFRLENBQUMsY0FBYyxDQUFDLEVBQUUsb0JBQW9CO0lBQy9DLENBQUMsb0JBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLHFCQUFxQjtJQUNsRCxDQUFDLG9CQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxpQkFBaUI7SUFDaEQsQ0FBQyxvQkFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU07SUFDM0IsQ0FBQyxvQkFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLGtCQUFrQjtJQUM1QyxDQUFDLG9CQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSwwQkFBMEI7SUFDeEQsQ0FBQyxvQkFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLHNCQUFzQjtJQUNsRCxDQUFDLG9CQUFRLENBQUMscUJBQXFCLENBQUMsRUFBRSwrQkFBK0I7SUFDakUsQ0FBQyxvQkFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLGlCQUFpQjtJQUM3QyxDQUFDLG9CQUFRLENBQUMsb0JBQW9CLENBQUMsRUFBRSx5QkFBeUI7SUFDMUQsQ0FBQyxvQkFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVU7SUFDakMsQ0FBQyxvQkFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLGFBQWE7SUFDckMsQ0FBQyxvQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDN0IsQ0FBQyxvQkFBUSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsdUJBQXVCO0lBQ3hELENBQUMsb0JBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxxQkFBcUI7SUFDakQsQ0FBQyxvQkFBUSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsNkJBQTZCO0lBQ2hFLENBQUMsb0JBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxhQUFhO0lBQ3JDLENBQUMsb0JBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZO0lBQ3JDLENBQUMsb0JBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLHFCQUFxQjtJQUNwRCxDQUFDLG9CQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTTtJQUN2QixDQUFDLG9CQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsZUFBZTtJQUNyQyxDQUFDLG9CQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsb0JBQW9CO0lBQ2hELENBQUMsb0JBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxhQUFhO0lBQzlCLENBQUMsb0JBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxzQkFBc0I7Q0FDbkQsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQXFDO0lBQzNELENBQUMsNEJBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTTtJQUMvQixDQUFDLDRCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFLFlBQVk7SUFDM0MsQ0FBQyw0QkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVO0lBQ3ZDLENBQUMsNEJBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsV0FBVztJQUN6QyxDQUFDLDRCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDdkMsQ0FBQyw0QkFBZ0IsQ0FBQyxXQUFXLENBQUMsRUFBRSxhQUFhO0lBQzdDLENBQUMsNEJBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsWUFBWTtJQUMzQyxDQUFDLDRCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDdkMsQ0FBQyw0QkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxRQUFRO0NBQ3BDLENBQUM7QUFFRixNQUFNLGtCQUFrQixHQUFxQztJQUMzRCxDQUFDLDRCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU87SUFDaEMsQ0FBQyw0QkFBZ0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVO0lBQ3pDLENBQUMsNEJBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVTtJQUN2QyxDQUFDLDRCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLFdBQVc7SUFDekMsQ0FBQyw0QkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZO0lBQ3pDLENBQUMsNEJBQWdCLENBQUMsV0FBVyxDQUFDLEVBQUUsYUFBYTtJQUM3QyxDQUFDLDRCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFLGVBQWU7SUFDOUMsQ0FBQyw0QkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxTQUFTO0lBQ3RDLENBQUMsNEJBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUztDQUNyQyxDQUFDO0FBRUYsU0FBUyxXQUFXLENBQUMsR0FBVztJQUM5QixPQUFPLEdBQUc7U0FDUCxXQUFXLEVBQUU7U0FDYixLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2YsQ0FBQztBQUVELFNBQWdCLGNBQWMsQ0FBQyxNQUFjLEVBQUUsU0FBaUIsT0FBTztJQUNyRSxPQUFPLE1BQU0sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFFRCxTQUFnQixnQkFBZ0IsQ0FBQyxRQUFrQixFQUFFLFNBQWlCLE9BQU87SUFDM0UsSUFBSSxNQUFNLEtBQUssT0FBTztRQUFFLE9BQU8sbUJBQW1CLENBQUMsUUFBUSxDQUFDLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3RGLE9BQU8sV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUFFRCxTQUFnQix3QkFBd0IsQ0FBQyxRQUEwQixFQUFFLFNBQWlCLE9BQU87SUFDM0YsT0FBTyxNQUFNLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDMUYsQ0FBQztBQUVELFNBQWdCLGlCQUFpQixDQUMvQixTQUE2QixFQUM3QixTQUFpQixPQUFPLEVBQ3hCLElBQTRFO0lBRTVFLE1BQU0sS0FBSyxHQUFHLElBQUksRUFBRSxLQUFLLElBQUksaUJBQWlCLENBQUM7SUFDL0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxFQUFFLFNBQVMsSUFBSSxHQUFHLENBQUM7SUFFbkMsTUFBTSxFQUFFLEdBQUcsT0FBTyxTQUFTLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxxQkFBUyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3ZGLElBQUksQ0FBQyxFQUFFO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDbkIsTUFBTSxDQUFDLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRCxPQUFPLEtBQUssS0FBSyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBPcGVyYXRpb24gfSBmcm9tICcuL29wZXJhdGlvbic7XG5pbXBvcnQgeyBSZXNvdXJjZSwgUmVzb3VyY2VDYXRlZ29yeSB9IGZyb20gJy4vcmVzb3VyY2VzJztcblxuZXhwb3J0IHR5cGUgTG9jYWxlID0gJ2ZyLUZSJyB8ICd1cy1FTic7XG5cbmNvbnN0IGVuQWN0aW9uOiBSZWNvcmQ8QWN0aW9uLCBzdHJpbmc+ID0ge1xuICBbQWN0aW9uLkNSRUFURV06ICdDcmVhdGUnLFxuICBbQWN0aW9uLlZJRVddOiAnVmlldycsXG4gIFtBY3Rpb24uVVBEQVRFXTogJ1VwZGF0ZScsXG4gIFtBY3Rpb24uREVMRVRFXTogJ0RlbGV0ZScsXG4gIFtBY3Rpb24uQVNTSUdOXTogJ0Fzc2lnbicsXG4gIFtBY3Rpb24uQ0FOQ0VMXTogJ0NhbmNlbCcsXG4gIFtBY3Rpb24uQ0hFQ0tfSU5dOiAnQ2hlY2sgSW4nLFxuICBbQWN0aW9uLkNPTVBMRVRFXTogJ0NvbXBsZXRlJyxcbiAgW0FjdGlvbi5ESVNBQkxFXTogJ0Rpc2FibGUnLFxuICBbQWN0aW9uLkVOQUJMRV06ICdFbmFibGUnLFxuICBbQWN0aW9uLkdFTkVSQVRFXTogJ0dlbmVyYXRlJyxcbiAgW0FjdGlvbi5JTlZJVEVdOiAnSW52aXRlJyxcbiAgW0FjdGlvbi5SRU1PVkVdOiAnUmVtb3ZlJyxcbiAgW0FjdGlvbi5ST1RBVEVdOiAnUm90YXRlJyxcbiAgW0FjdGlvbi5UUkFOU0ZFUl9PV05FUlNISVBdOiAnVHJhbnNmZXIgT3duZXJzaGlwJyxcbn07XG5cbmNvbnN0IGZyQWN0aW9uOiBSZWNvcmQ8QWN0aW9uLCBzdHJpbmc+ID0ge1xuICBbQWN0aW9uLkNSRUFURV06ICdDcmVlcicsXG4gIFtBY3Rpb24uVklFV106ICdWb2lyJyxcbiAgW0FjdGlvbi5VUERBVEVdOiAnTWV0dHJlIGEgam91cicsXG4gIFtBY3Rpb24uREVMRVRFXTogJ1N1cHByaW1lcicsXG4gIFtBY3Rpb24uQVNTSUdOXTogJ0Fzc2lnbmVyJyxcbiAgW0FjdGlvbi5DQU5DRUxdOiAnQW5udWxlcicsXG4gIFtBY3Rpb24uQ0hFQ0tfSU5dOiAnRW5yZWdpc3RyZXIgbCBhcnJpdmVlJyxcbiAgW0FjdGlvbi5DT01QTEVURV06ICdUZXJtaW5lcicsXG4gIFtBY3Rpb24uRElTQUJMRV06ICdEZXNhY3RpdmVyJyxcbiAgW0FjdGlvbi5FTkFCTEVdOiAnQWN0aXZlcicsXG4gIFtBY3Rpb24uR0VORVJBVEVdOiAnR2VuZXJlcicsXG4gIFtBY3Rpb24uSU5WSVRFXTogJ0ludml0ZXInLFxuICBbQWN0aW9uLlJFTU9WRV06ICdSZXRpcmVyJyxcbiAgW0FjdGlvbi5ST1RBVEVdOiAnVG91cm5lcicsXG4gIFtBY3Rpb24uVFJBTlNGRVJfT1dORVJTSElQXTogJ1RyYW5zZmVyZXIgbGEgcHJvcHJpZXRlJyxcbn07XG5cbmNvbnN0IGZyUmVzb3VyY2VPdmVycmlkZXM6IFBhcnRpYWw8UmVjb3JkPFJlc291cmNlLCBzdHJpbmc+PiA9IHtcbiAgW1Jlc291cmNlLkFDQ09VTlRdOiAnQ29tcHRlJyxcbiAgW1Jlc291cmNlLkNBTENVTEFURURfTUVBU1VSRV9NT0RFTF06ICdNb2RlbGUgZGUgbWVzdXJlIGNhbGN1bGVlJyxcbiAgW1Jlc291cmNlLkNBTEVOREFSX1NFVFRJTkdTXTogJ1BhcmFtZXRyZXMgZHUgY2FsZW5kcmllcicsXG4gIFtSZXNvdXJjZS5DQUxFTkRBUl9TWU5DXTogJ1N5bmNocm9uaXNhdGlvbiBkdSBjYWxlbmRyaWVyJyxcbiAgW1Jlc291cmNlLkNBTEVOREFSX1RPS0VOXTogJ0pldG9uIGRlIGNhbGVuZHJpZXInLFxuICBbUmVzb3VyY2UuQ09OVEFDVF06ICdDb250YWN0JyxcbiAgW1Jlc291cmNlLkRPQ1VNRU5UX0xBWU9VVF06ICdNaXNlIGVuIHBhZ2UgZHUgZG9jdW1lbnQnLFxuICBbUmVzb3VyY2UuRE9DVU1FTlRfTU9ERUxdOiAnTW9kZWxlIGRlIGRvY3VtZW50JyxcbiAgW1Jlc291cmNlLkdFTkVSQUxfU0VUVElOR1NdOiAnUGFyYW1ldHJlcyBnZW5lcmF1eCcsXG4gIFtSZXNvdXJjZS5HRU5FUkFURURfRE9DVU1FTlRdOiAnRG9jdW1lbnQgZ2VuZXJlJyxcbiAgW1Jlc291cmNlLkxPQ0FUSU9OXTogJ0xpZXUnLFxuICBbUmVzb3VyY2UuTUVBU1VSRV9NT0RFTF06ICdNb2RlbGUgZGUgbWVzdXJlJyxcbiAgW1Jlc291cmNlLk1FRElDQVRJT05fU0VBUkNIXTogJ1JlY2hlcmNoZSBkZSBtZWRpY2FtZW50cycsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX0hJU1RPUlldOiAnQW50ZWNlZGVudHMgbWVkaWNhdXgnLFxuICBbUmVzb3VyY2UuTUVESUNBTF9ISVNUT1JZX01PREVMXTogXCJNb2RlbGUgZCdhbnRlY2VkZW50cyBtZWRpY2F1eFwiLFxuICBbUmVzb3VyY2UuTUVESUNBTF9TRVJWSUNFXTogJ1NlcnZpY2UgbWVkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRURJQ0FMX1NFUlZJQ0VfTk9URV06ICdOb3RlIGR1IHNlcnZpY2UgbWVkaWNhbCcsXG4gIFtSZXNvdXJjZS5NRU1CRVJTSElQXTogJ0FkaGVzaW9uJyxcbiAgW1Jlc291cmNlLk9CU0VSVkFUSU9OXTogJ09ic2VydmF0aW9uJyxcbiAgW1Jlc291cmNlLlBBVElFTlRdOiAnUGF0aWVudCcsXG4gIFtSZXNvdXJjZS5QQVRJRU5UX01FRElDQUxfTk9URV06ICdOb3RlIG1lZGljYWxlIHBhdGllbnQnLFxuICBbUmVzb3VyY2UuUEFUSUVOVF9QQVlNRU5UXTogJ1BhaWVtZW50IGR1IHBhdGllbnQnLFxuICBbUmVzb3VyY2UuUEFUSUVOVF9QUk9QRVJUWV9NT0RFTF06ICdNb2RlbGUgZGUgcHJvcHJpZXRlIHBhdGllbnQnLFxuICBbUmVzb3VyY2UuUFJFRkVSRU5DRVNdOiAnUHJlZmVyZW5jZXMnLFxuICBbUmVzb3VyY2UuUFJFU0NSSVBUSU9OXTogJ09yZG9ubmFuY2UnLFxuICBbUmVzb3VyY2UuUFJFU0NSSVBUSU9OX01PREVMXTogXCJNb2RlbGUgZCdvcmRvbm5hbmNlXCIsXG4gIFtSZXNvdXJjZS5ST0xFXTogJ1JvbGUnLFxuICBbUmVzb3VyY2UuVEFTS19UWVBFXTogJ1R5cGUgZGUgdGFjaGUnLFxuICBbUmVzb3VyY2UuVVBMT0FEX0RPQ1VNRU5UXTogJ0RvY3VtZW50IHRlbGV2ZXJzZScsXG4gIFtSZXNvdXJjZS5VU0VSXTogJ1V0aWxpc2F0ZXVyJyxcbiAgW1Jlc291cmNlLkFWQUlMQUJMRV9TTE9UU106ICdDcmVuZWF1eCBkaXNwb25pYmxlcycsXG59O1xuXG5jb25zdCBlblJlc291cmNlQ2F0ZWdvcnk6IFJlY29yZDxSZXNvdXJjZUNhdGVnb3J5LCBzdHJpbmc+ID0ge1xuICBbUmVzb3VyY2VDYXRlZ29yeS5DT1JFXTogJ0NvcmUnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5NRU1CRVJTSElQXTogJ01lbWJlcnNoaXAnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5DTElOSUNBTF06ICdDbGluaWNhbCcsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LkRPQ1VNRU5UU106ICdEb2N1bWVudHMnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5TRVRUSU5HU106ICdTZXR0aW5ncycsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LklOVEVHUkFUSU9OXTogJ0ludGVncmF0aW9uJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuU0NIRURVTElOR106ICdTY2hlZHVsaW5nJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuRVhURVJOQUxdOiAnRXh0ZXJuYWwnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5TWVNURU1dOiAnU3lzdGVtJyxcbn07XG5cbmNvbnN0IGZyUmVzb3VyY2VDYXRlZ29yeTogUmVjb3JkPFJlc291cmNlQ2F0ZWdvcnksIHN0cmluZz4gPSB7XG4gIFtSZXNvdXJjZUNhdGVnb3J5LkNPUkVdOiAnTm95YXUnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5NRU1CRVJTSElQXTogJ0FkaGVzaW9uJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuQ0xJTklDQUxdOiAnQ2xpbmlxdWUnLFxuICBbUmVzb3VyY2VDYXRlZ29yeS5ET0NVTUVOVFNdOiAnRG9jdW1lbnRzJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuU0VUVElOR1NdOiAnUGFyYW1ldHJlcycsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LklOVEVHUkFUSU9OXTogJ0ludGVncmF0aW9uJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuU0NIRURVTElOR106ICdQbGFuaWZpY2F0aW9uJyxcbiAgW1Jlc291cmNlQ2F0ZWdvcnkuRVhURVJOQUxdOiAnRXh0ZXJuZScsXG4gIFtSZXNvdXJjZUNhdGVnb3J5LlNZU1RFTV06ICdTeXN0ZW1lJyxcbn07XG5cbmZ1bmN0aW9uIGh1bWFuaXplS2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGtleVxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnNwbGl0KCdfJylcbiAgICAubWFwKCh3KSA9PiB3LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdy5zbGljZSgxKSlcbiAgICAuam9pbignICcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aW9uTGFiZWwoYWN0aW9uOiBBY3Rpb24sIGxvY2FsZTogTG9jYWxlID0gJ3VzLUVOJyk6IHN0cmluZyB7XG4gIHJldHVybiBsb2NhbGUgPT09ICdmci1GUicgPyBmckFjdGlvblthY3Rpb25dIDogZW5BY3Rpb25bYWN0aW9uXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlTGFiZWwocmVzb3VyY2U6IFJlc291cmNlLCBsb2NhbGU6IExvY2FsZSA9ICd1cy1FTicpOiBzdHJpbmcge1xuICBpZiAobG9jYWxlID09PSAnZnItRlInKSByZXR1cm4gZnJSZXNvdXJjZU92ZXJyaWRlc1tyZXNvdXJjZV0gPz8gaHVtYW5pemVLZXkocmVzb3VyY2UpO1xuICByZXR1cm4gaHVtYW5pemVLZXkocmVzb3VyY2UpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVzb3VyY2VDYXRlZ29yeUxhYmVsKGNhdGVnb3J5OiBSZXNvdXJjZUNhdGVnb3J5LCBsb2NhbGU6IExvY2FsZSA9ICd1cy1FTicpOiBzdHJpbmcge1xuICByZXR1cm4gbG9jYWxlID09PSAnZnItRlInID8gZnJSZXNvdXJjZUNhdGVnb3J5W2NhdGVnb3J5XSA6IGVuUmVzb3VyY2VDYXRlZ29yeVtjYXRlZ29yeV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcGVyYXRpb25MYWJlbChcbiAgb3BlcmF0aW9uOiBPcGVyYXRpb24gfCBzdHJpbmcsXG4gIGxvY2FsZTogTG9jYWxlID0gJ3VzLUVOJyxcbiAgb3B0cz86IHsgb3JkZXI/OiAnYWN0aW9uLXJlc291cmNlJyB8ICdyZXNvdXJjZS1hY3Rpb24nOyBzZXBhcmF0b3I/OiBzdHJpbmcgfSxcbik6IHN0cmluZyB7XG4gIGNvbnN0IG9yZGVyID0gb3B0cz8ub3JkZXIgPz8gJ2FjdGlvbi1yZXNvdXJjZSc7XG4gIGNvbnN0IHNlcCA9IG9wdHM/LnNlcGFyYXRvciA/PyAnICc7XG5cbiAgY29uc3Qgb3AgPSB0eXBlb2Ygb3BlcmF0aW9uID09PSAnc3RyaW5nJyA/IE9wZXJhdGlvbi5mcm9tU3RyaW5nKG9wZXJhdGlvbikgOiBvcGVyYXRpb247XG4gIGlmICghb3ApIHJldHVybiAnJztcbiAgY29uc3QgYSA9IGdldEFjdGlvbkxhYmVsKG9wLmFjdGlvbiwgbG9jYWxlKTtcbiAgY29uc3QgciA9IGdldFJlc291cmNlTGFiZWwob3AucmVzb3VyY2UsIGxvY2FsZSk7XG4gIHJldHVybiBvcmRlciA9PT0gJ3Jlc291cmNlLWFjdGlvbicgPyBgJHtyfSR7c2VwfSR7YX1gIDogYCR7YX0ke3NlcH0ke3J9YDtcbn1cbiJdfQ==