auth0-deploy-cli 7.6.0 → 7.8.0

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.
Files changed (216) hide show
  1. package/.eslintrc +7 -41
  2. package/.husky/pre-commit +4 -0
  3. package/.husky/pre-push +3 -1
  4. package/.prettierignore +10 -0
  5. package/.prettierrc.json +4 -0
  6. package/CHANGELOG.md +222 -7
  7. package/CONTRIBUTING.md +2 -2
  8. package/README.md +3 -0
  9. package/lib/args.d.ts +29 -0
  10. package/lib/args.js +16 -15
  11. package/lib/commands/export.d.ts +2 -0
  12. package/lib/commands/export.js +3 -3
  13. package/lib/commands/import.d.ts +2 -0
  14. package/lib/commands/import.js +6 -6
  15. package/lib/commands/index.d.ts +9 -0
  16. package/lib/commands/index.js +1 -1
  17. package/lib/configFactory.d.ts +7 -0
  18. package/lib/configFactory.js +5 -1
  19. package/lib/context/defaults.d.ts +1 -0
  20. package/lib/context/defaults.js +4 -3
  21. package/lib/context/directory/handlers/actions.d.ts +6 -0
  22. package/lib/context/directory/handlers/actions.js +3 -3
  23. package/lib/context/directory/handlers/attackProtection.d.ts +10 -0
  24. package/lib/context/directory/handlers/attackProtection.js +7 -7
  25. package/lib/context/directory/handlers/branding.d.ts +6 -0
  26. package/lib/context/directory/handlers/branding.js +6 -5
  27. package/lib/context/directory/handlers/clientGrants.d.ts +6 -0
  28. package/lib/context/directory/handlers/clientGrants.js +3 -2
  29. package/lib/context/directory/handlers/clients.d.ts +6 -0
  30. package/lib/context/directory/handlers/clients.js +1 -1
  31. package/lib/context/directory/handlers/connections.d.ts +6 -0
  32. package/lib/context/directory/handlers/connections.js +4 -2
  33. package/lib/context/directory/handlers/databases.d.ts +6 -0
  34. package/lib/context/directory/handlers/databases.js +13 -7
  35. package/lib/context/directory/handlers/emailProvider.d.ts +6 -0
  36. package/lib/context/directory/handlers/emailProvider.js +3 -2
  37. package/lib/context/directory/handlers/emailTemplates.d.ts +6 -0
  38. package/lib/context/directory/handlers/emailTemplates.js +2 -2
  39. package/lib/context/directory/handlers/guardianFactorProviders.d.ts +6 -0
  40. package/lib/context/directory/handlers/guardianFactorProviders.js +3 -2
  41. package/lib/context/directory/handlers/guardianFactorTemplates.d.ts +6 -0
  42. package/lib/context/directory/handlers/guardianFactorTemplates.js +3 -2
  43. package/lib/context/directory/handlers/guardianFactors.d.ts +6 -0
  44. package/lib/context/directory/handlers/guardianFactors.js +3 -2
  45. package/lib/context/directory/handlers/guardianPhoneFactorMessageTypes.d.ts +6 -0
  46. package/lib/context/directory/handlers/guardianPhoneFactorMessageTypes.js +1 -1
  47. package/lib/context/directory/handlers/guardianPhoneFactorSelectedProvider.d.ts +6 -0
  48. package/lib/context/directory/handlers/guardianPhoneFactorSelectedProvider.js +1 -1
  49. package/lib/context/directory/handlers/guardianPolicies.d.ts +6 -0
  50. package/lib/context/directory/handlers/guardianPolicies.js +1 -1
  51. package/lib/context/directory/handlers/hooks.d.ts +6 -0
  52. package/lib/context/directory/handlers/hooks.js +2 -2
  53. package/lib/context/directory/handlers/index.d.ts +12 -0
  54. package/lib/context/directory/handlers/index.js +3 -2
  55. package/lib/context/directory/handlers/migrations.d.ts +6 -0
  56. package/lib/context/directory/handlers/organizations.d.ts +6 -0
  57. package/lib/context/directory/handlers/organizations.js +1 -1
  58. package/lib/context/directory/handlers/pages.d.ts +6 -0
  59. package/lib/context/directory/handlers/pages.js +2 -2
  60. package/lib/context/directory/handlers/resourceServers.d.ts +6 -0
  61. package/lib/context/directory/handlers/resourceServers.js +3 -2
  62. package/lib/context/directory/handlers/roles.d.ts +6 -0
  63. package/lib/context/directory/handlers/roles.js +1 -1
  64. package/lib/context/directory/handlers/rules.d.ts +6 -0
  65. package/lib/context/directory/handlers/rules.js +2 -2
  66. package/lib/context/directory/handlers/rulesConfigs.d.ts +6 -0
  67. package/lib/context/directory/handlers/rulesConfigs.js +3 -2
  68. package/lib/context/directory/handlers/tenant.d.ts +10 -0
  69. package/lib/context/directory/handlers/tenant.js +3 -2
  70. package/lib/context/directory/handlers/triggers.d.ts +6 -0
  71. package/lib/context/directory/index.d.ts +17 -0
  72. package/lib/context/directory/index.js +21 -18
  73. package/lib/context/index.d.ts +4 -0
  74. package/lib/context/index.js +83 -61
  75. package/lib/context/yaml/handlers/actions.d.ts +6 -0
  76. package/lib/context/yaml/handlers/actions.js +9 -6
  77. package/lib/context/yaml/handlers/attackProtection.d.ts +6 -0
  78. package/lib/context/yaml/handlers/attackProtection.js +1 -1
  79. package/lib/context/yaml/handlers/branding.d.ts +6 -0
  80. package/lib/context/yaml/handlers/branding.js +5 -4
  81. package/lib/context/yaml/handlers/clientGrants.d.ts +6 -0
  82. package/lib/context/yaml/handlers/clientGrants.js +2 -2
  83. package/lib/context/yaml/handlers/clients.d.ts +6 -0
  84. package/lib/context/yaml/handlers/clients.js +6 -4
  85. package/lib/context/yaml/handlers/connections.d.ts +6 -0
  86. package/lib/context/yaml/handlers/connections.js +7 -5
  87. package/lib/context/yaml/handlers/databases.d.ts +6 -0
  88. package/lib/context/yaml/handlers/databases.js +12 -8
  89. package/lib/context/yaml/handlers/emailProvider.d.ts +6 -0
  90. package/lib/context/yaml/handlers/emailProvider.js +4 -3
  91. package/lib/context/yaml/handlers/emailTemplates.d.ts +6 -0
  92. package/lib/context/yaml/handlers/emailTemplates.js +3 -3
  93. package/lib/context/yaml/handlers/guardianFactorProviders.d.ts +6 -0
  94. package/lib/context/yaml/handlers/guardianFactorProviders.js +1 -1
  95. package/lib/context/yaml/handlers/guardianFactorTemplates.d.ts +6 -0
  96. package/lib/context/yaml/handlers/guardianFactorTemplates.js +1 -1
  97. package/lib/context/yaml/handlers/guardianFactors.d.ts +6 -0
  98. package/lib/context/yaml/handlers/guardianFactors.js +1 -1
  99. package/lib/context/yaml/handlers/guardianPhoneFactorMessageTypes.d.ts +6 -0
  100. package/lib/context/yaml/handlers/guardianPhoneFactorMessageTypes.js +1 -1
  101. package/lib/context/yaml/handlers/guardianPhoneFactorSelectedProvider.d.ts +6 -0
  102. package/lib/context/yaml/handlers/guardianPhoneFactorSelectedProvider.js +1 -1
  103. package/lib/context/yaml/handlers/guardianPolicies.d.ts +6 -0
  104. package/lib/context/yaml/handlers/guardianPolicies.js +1 -1
  105. package/lib/context/yaml/handlers/hooks.d.ts +6 -0
  106. package/lib/context/yaml/handlers/hooks.js +4 -3
  107. package/lib/context/yaml/handlers/index.d.ts +12 -0
  108. package/lib/context/yaml/handlers/index.js +3 -2
  109. package/lib/context/yaml/handlers/migrations.d.ts +6 -0
  110. package/lib/context/yaml/handlers/organizations.d.ts +6 -0
  111. package/lib/context/yaml/handlers/organizations.js +3 -3
  112. package/lib/context/yaml/handlers/pages.d.ts +6 -0
  113. package/lib/context/yaml/handlers/pages.js +3 -3
  114. package/lib/context/yaml/handlers/resourceServers.d.ts +6 -0
  115. package/lib/context/yaml/handlers/resourceServers.js +2 -2
  116. package/lib/context/yaml/handlers/roles.d.ts +6 -0
  117. package/lib/context/yaml/handlers/roles.js +3 -3
  118. package/lib/context/yaml/handlers/rules.d.ts +6 -0
  119. package/lib/context/yaml/handlers/rules.js +3 -3
  120. package/lib/context/yaml/handlers/rulesConfigs.d.ts +6 -0
  121. package/lib/context/yaml/handlers/rulesConfigs.js +2 -2
  122. package/lib/context/yaml/handlers/tenant.d.ts +6 -0
  123. package/lib/context/yaml/handlers/tenant.js +4 -3
  124. package/lib/context/yaml/handlers/triggers.d.ts +6 -0
  125. package/lib/context/yaml/handlers/triggers.js +2 -2
  126. package/lib/context/yaml/index.d.ts +13 -0
  127. package/lib/context/yaml/index.js +31 -23
  128. package/lib/index.d.ts +88 -0
  129. package/lib/index.js +25 -17
  130. package/lib/logger.d.ts +2 -0
  131. package/lib/logger.js +8 -17
  132. package/lib/readonly.d.ts +2 -0
  133. package/lib/readonly.js +11 -16
  134. package/lib/sessionDurationsToMinutes.d.ts +7 -0
  135. package/lib/sessionDurationsToMinutes.js +15 -0
  136. package/lib/tools/auth0/client.d.ts +2 -0
  137. package/lib/tools/auth0/client.js +12 -12
  138. package/lib/tools/auth0/handlers/actions.d.ts +95 -0
  139. package/lib/tools/auth0/handlers/actions.js +22 -24
  140. package/lib/tools/auth0/handlers/attackProtection.d.ts +28 -0
  141. package/lib/tools/auth0/handlers/attackProtection.js +14 -17
  142. package/lib/tools/auth0/handlers/branding.d.ts +27 -0
  143. package/lib/tools/auth0/handlers/branding.js +13 -9
  144. package/lib/tools/auth0/handlers/clientGrants.d.ts +32 -0
  145. package/lib/tools/auth0/handlers/clientGrants.js +17 -10
  146. package/lib/tools/auth0/handlers/clients.d.ts +23 -0
  147. package/lib/tools/auth0/handlers/clients.js +15 -8
  148. package/lib/tools/auth0/handlers/connections.d.ts +54 -0
  149. package/lib/tools/auth0/handlers/connections.js +30 -10
  150. package/lib/tools/auth0/handlers/databases.d.ts +36 -0
  151. package/lib/tools/auth0/handlers/databases.js +25 -13
  152. package/lib/tools/auth0/handlers/default.d.ts +54 -0
  153. package/lib/tools/auth0/handlers/default.js +62 -36
  154. package/lib/tools/auth0/handlers/emailProvider.d.ts +11 -0
  155. package/lib/tools/auth0/handlers/emailTemplates.d.ts +26 -0
  156. package/lib/tools/auth0/handlers/emailTemplates.js +8 -10
  157. package/lib/tools/auth0/handlers/guardianFactorProviders.d.ts +25 -0
  158. package/lib/tools/auth0/handlers/guardianFactorProviders.js +3 -3
  159. package/lib/tools/auth0/handlers/guardianFactorTemplates.d.ts +21 -0
  160. package/lib/tools/auth0/handlers/guardianFactorTemplates.js +3 -3
  161. package/lib/tools/auth0/handlers/guardianFactors.d.ts +21 -0
  162. package/lib/tools/auth0/handlers/guardianFactors.js +3 -3
  163. package/lib/tools/auth0/handlers/guardianPhoneFactorMessageTypes.d.ts +21 -0
  164. package/lib/tools/auth0/handlers/guardianPhoneFactorMessageTypes.js +11 -10
  165. package/lib/tools/auth0/handlers/guardianPhoneFactorSelectedProvider.d.ts +18 -0
  166. package/lib/tools/auth0/handlers/guardianPhoneFactorSelectedProvider.js +10 -9
  167. package/lib/tools/auth0/handlers/guardianPolicies.d.ts +23 -0
  168. package/lib/tools/auth0/handlers/guardianPolicies.js +5 -4
  169. package/lib/tools/auth0/handlers/hooks.d.ts +58 -0
  170. package/lib/tools/auth0/handlers/hooks.js +34 -21
  171. package/lib/tools/auth0/handlers/index.d.ts +129 -0
  172. package/lib/tools/auth0/handlers/index.js +31 -27
  173. package/lib/tools/auth0/handlers/migrations.d.ts +15 -0
  174. package/lib/tools/auth0/handlers/migrations.js +3 -2
  175. package/lib/tools/auth0/handlers/organizations.d.ts +51 -0
  176. package/lib/tools/auth0/handlers/organizations.js +62 -32
  177. package/lib/tools/auth0/handlers/pages.d.ts +42 -0
  178. package/lib/tools/auth0/handlers/pages.js +20 -14
  179. package/lib/tools/auth0/handlers/prompts.d.ts +11 -0
  180. package/lib/tools/auth0/handlers/prompts.js +1 -0
  181. package/lib/tools/auth0/handlers/resourceServers.d.ts +51 -0
  182. package/lib/tools/auth0/handlers/resourceServers.js +22 -14
  183. package/lib/tools/auth0/handlers/roles.d.ts +48 -0
  184. package/lib/tools/auth0/handlers/roles.js +56 -32
  185. package/lib/tools/auth0/handlers/rules.d.ts +55 -0
  186. package/lib/tools/auth0/handlers/rules.js +53 -36
  187. package/lib/tools/auth0/handlers/rulesConfigs.d.ts +25 -0
  188. package/lib/tools/auth0/handlers/rulesConfigs.js +12 -6
  189. package/lib/tools/auth0/handlers/tenant.d.ts +11 -0
  190. package/lib/tools/auth0/handlers/tenant.js +8 -4
  191. package/lib/tools/auth0/handlers/triggers.d.ts +35 -0
  192. package/lib/tools/auth0/handlers/triggers.js +12 -13
  193. package/lib/tools/auth0/index.d.ts +15 -0
  194. package/lib/tools/auth0/index.js +15 -31
  195. package/lib/tools/auth0/schema.d.ts +15 -0
  196. package/lib/tools/auth0/schema.js +7 -27
  197. package/lib/tools/calculateChanges.d.ts +26 -0
  198. package/lib/tools/calculateChanges.js +12 -7
  199. package/lib/tools/constants.d.ts +71 -0
  200. package/lib/tools/constants.js +164 -161
  201. package/lib/tools/deploy.d.ts +3 -0
  202. package/lib/tools/deploy.js +3 -3
  203. package/lib/tools/index.d.ts +82 -0
  204. package/lib/tools/index.js +1 -1
  205. package/lib/tools/utils.d.ts +18 -0
  206. package/lib/tools/utils.js +68 -10
  207. package/lib/tools/validationError.d.ts +5 -0
  208. package/lib/tools/{ValidationError.js → validationError.js} +3 -1
  209. package/lib/types.d.ts +255 -0
  210. package/lib/types.js +2 -0
  211. package/lib/utils.d.ts +66 -0
  212. package/lib/utils.js +18 -25
  213. package/package.json +16 -7
  214. package/tsconfig.json +3 -4
  215. package/typescript-migration-progress.sh +1 -1
  216. package/lib/tools/logger.js +0 -15
@@ -25,11 +25,11 @@ function parse(context) {
25
25
  const markupFile = path_1.default.join(templateDefinition.body);
26
26
  return {
27
27
  template: templateDefinition.template,
28
- body: (0, tools_1.loadFileAndReplaceKeywords)(markupFile, context.mappings)
28
+ body: (0, tools_1.loadFileAndReplaceKeywords)(markupFile, context.mappings),
29
29
  };
30
30
  });
31
31
  return {
32
- branding: Object.assign(Object.assign({}, branding), { templates })
32
+ branding: Object.assign(Object.assign({}, branding), { templates }),
33
33
  };
34
34
  });
35
35
  }
@@ -59,7 +59,8 @@ function dump(context) {
59
59
  return { branding };
60
60
  });
61
61
  }
62
- exports.default = {
62
+ const brandingHandler = {
63
63
  parse,
64
- dump
64
+ dump,
65
65
  };
66
+ exports.default = brandingHandler;
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedClientGrants = {
3
+ clientGrants: unknown[];
4
+ };
5
+ declare const clientGrantsHandler: YAMLHandler<ParsedClientGrants>;
6
+ export default clientGrantsHandler;
@@ -14,7 +14,7 @@ function parse(context) {
14
14
  return __awaiter(this, void 0, void 0, function* () {
15
15
  // nothing to do, set default empty
16
16
  return {
17
- clientGrants: context.assets.clientGrants
17
+ clientGrants: context.assets.clientGrants,
18
18
  };
19
19
  });
20
20
  }
@@ -30,7 +30,7 @@ function dump(context) {
30
30
  const dumpGrant = Object.assign({}, grant);
31
31
  dumpGrant.client_id = (0, utils_1.convertClientIdToName)(dumpGrant.client_id, context.assets.clients);
32
32
  return dumpGrant;
33
- })
33
+ }),
34
34
  };
35
35
  });
36
36
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedClients = {
3
+ clients: unknown[];
4
+ };
5
+ declare const clientsHandler: YAMLHandler<ParsedClients>;
6
+ export default clientsHandler;
@@ -35,8 +35,8 @@ function parse(context) {
35
35
  }
36
36
  }
37
37
  return client;
38
- })
39
- ]
38
+ }),
39
+ ],
40
40
  };
41
41
  });
42
42
  }
@@ -45,7 +45,8 @@ function dump(context) {
45
45
  // Save custom_login_page to a separate html file
46
46
  const clientsFolder = path_1.default.join(context.basePath, tools_1.constants.CLIENTS_DIRECTORY);
47
47
  return {
48
- clients: [...context.assets.clients.map((client) => {
48
+ clients: [
49
+ ...context.assets.clients.map((client) => {
49
50
  if (client.custom_login_page) {
50
51
  const clientName = (0, utils_1.sanitize)(client.name);
51
52
  const html = client.custom_login_page;
@@ -56,7 +57,8 @@ function dump(context) {
56
57
  client.custom_login_page = `./${clientName}_custom_login_page.html`;
57
58
  }
58
59
  return (0, utils_1.clearClientArrays)(client);
59
- })]
60
+ }),
61
+ ],
60
62
  };
61
63
  });
62
64
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedConnections = {
3
+ connections: unknown[];
4
+ };
5
+ declare const connectionsHandler: YAMLHandler<ParsedConnections>;
6
+ export default connectionsHandler;
@@ -36,15 +36,15 @@ function parse(context) {
36
36
  }
37
37
  }
38
38
  return connection;
39
- })
40
- ]
39
+ }),
40
+ ],
41
41
  };
42
42
  });
43
43
  }
44
44
  const getFormattedOptions = (connection, clients) => {
45
45
  try {
46
46
  return {
47
- options: Object.assign(Object.assign({}, connection.options), { idpinitiated: Object.assign(Object.assign({}, connection.options.idpinitiated), { client_id: (0, utils_1.convertClientIdToName)(connection.options.idpinitiated.client_id, clients) }) })
47
+ options: Object.assign(Object.assign({}, connection.options), { idpinitiated: Object.assign(Object.assign({}, connection.options.idpinitiated), { client_id: (0, utils_1.convertClientIdToName)(connection.options.idpinitiated.client_id, clients) }) }),
48
48
  };
49
49
  }
50
50
  catch (e) {
@@ -60,7 +60,9 @@ function dump(context) {
60
60
  // nothing to do, set default if empty
61
61
  return {
62
62
  connections: connections.map((connection) => {
63
- const dumpedConnection = Object.assign(Object.assign(Object.assign({}, connection), getFormattedOptions(connection, context.assets.clients)), (connection.enabled_clients && { enabled_clients: (0, utils_1.mapClientID2NameSorted)(connection.enabled_clients, context.assets.clients) }));
63
+ const dumpedConnection = Object.assign(Object.assign(Object.assign({}, connection), getFormattedOptions(connection, context.assets.clients)), (connection.enabled_clients && {
64
+ enabled_clients: (0, utils_1.mapClientID2NameSorted)(connection.enabled_clients, context.assets.clients),
65
+ }));
64
66
  if (dumpedConnection.strategy === 'email') {
65
67
  (0, utils_1.ensureProp)(connection, 'options.email.body');
66
68
  const connectionsFolder = path_1.default.join(context.basePath, tools_1.constants.CONNECTIONS_DIRECTORY);
@@ -73,7 +75,7 @@ function dump(context) {
73
75
  dumpedConnection.options.email.body = `./${connectionName}.html`;
74
76
  }
75
77
  return dumpedConnection;
76
- })
78
+ }),
77
79
  };
78
80
  });
79
81
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedDatabases = {
3
+ databases: unknown[];
4
+ };
5
+ declare const databasesHandler: YAMLHandler<ParsedDatabases | {}>;
6
+ export default databasesHandler;
@@ -24,9 +24,9 @@ function parse(context) {
24
24
  return {
25
25
  databases: [
26
26
  ...context.assets.databases.map((database) => (Object.assign(Object.assign({}, database), { options: Object.assign(Object.assign({}, database.options), (database.options.customScripts && {
27
- customScripts: Object.entries(database.options.customScripts).reduce((scripts, [name, script]) => (Object.assign(Object.assign({}, scripts), { [name]: context.loadFile(script) })), {})
28
- })) })))
29
- ]
27
+ customScripts: Object.entries(database.options.customScripts).reduce((scripts, [name, script]) => (Object.assign(Object.assign({}, scripts), { [name]: context.loadFile(script) })), {}),
28
+ })) }))),
29
+ ],
30
30
  };
31
31
  });
32
32
  }
@@ -43,8 +43,12 @@ function dump(context) {
43
43
  };
44
44
  return {
45
45
  databases: [
46
- ...databases.map((database) => (Object.assign(Object.assign(Object.assign({}, database), (database.enabled_clients && { enabled_clients: (0, utils_1.mapClientID2NameSorted)(database.enabled_clients, context.assets.clients) })), { options: Object.assign(Object.assign({}, database.options), (database.options.customScripts && {
47
- customScripts: Object.entries(database.options.customScripts).sort(sortCustomScripts).reduce((scripts, [name, script]) => {
46
+ ...databases.map((database) => (Object.assign(Object.assign(Object.assign({}, database), (database.enabled_clients && {
47
+ enabled_clients: (0, utils_1.mapClientID2NameSorted)(database.enabled_clients, context.assets.clients),
48
+ })), { options: Object.assign(Object.assign({}, database.options), (database.options.customScripts && {
49
+ customScripts: Object.entries(database.options.customScripts)
50
+ .sort(sortCustomScripts)
51
+ .reduce((scripts, [name, script]) => {
48
52
  // Create Database folder
49
53
  const dbName = (0, utils_1.sanitize)(database.name);
50
54
  const dbFolder = path_1.default.join(context.basePath, 'databases', (0, utils_1.sanitize)(dbName));
@@ -56,9 +60,9 @@ function dump(context) {
56
60
  fs_extra_1.default.writeFileSync(scriptFile, script);
57
61
  scripts[name] = `./databases/${dbName}/${scriptName}.js`;
58
62
  return scripts;
59
- }, {})
60
- })) })))
61
- ]
63
+ }, {}),
64
+ })) }))),
65
+ ],
62
66
  };
63
67
  });
64
68
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedEmailProvider = {
3
+ emailProvider: unknown;
4
+ };
5
+ declare const emailProviderHandler: YAMLHandler<ParsedEmailProvider>;
6
+ export default emailProviderHandler;
@@ -14,20 +14,21 @@ function parse(context) {
14
14
  return __awaiter(this, void 0, void 0, function* () {
15
15
  // nothing to do, set default if empty
16
16
  return {
17
- emailProvider: Object.assign({}, context.assets.emailProvider || {})
17
+ emailProvider: Object.assign({}, (context.assets.emailProvider || {})),
18
18
  };
19
19
  });
20
20
  }
21
21
  function dump(context) {
22
+ var _a;
22
23
  return __awaiter(this, void 0, void 0, function* () {
23
24
  let { emailProvider } = context.assets;
24
- const excludedDefaults = context.assets.exclude.defaults || [];
25
+ const excludedDefaults = ((_a = context.assets.exclude) === null || _a === void 0 ? void 0 : _a.defaults) || [];
25
26
  if (emailProvider && !excludedDefaults.includes('emailProvider')) {
26
27
  // Add placeholder for credentials as they cannot be exported
27
28
  emailProvider = (0, defaults_1.emailProviderDefaults)(emailProvider);
28
29
  }
29
30
  return {
30
- emailProvider: emailProvider || {}
31
+ emailProvider: emailProvider || {},
31
32
  };
32
33
  });
33
34
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedEmailTemplates = {
3
+ emailTemplates: unknown[];
4
+ };
5
+ declare const emailTemplatesHandler: YAMLHandler<ParsedEmailTemplates>;
6
+ export default emailTemplatesHandler;
@@ -21,14 +21,14 @@ function parse(context) {
21
21
  const emailTemplates = context.assets.emailTemplates || [];
22
22
  return {
23
23
  emailTemplates: [
24
- ...emailTemplates.map((et) => (Object.assign(Object.assign({}, et), { body: context.loadFile(et.body) })))
25
- ]
24
+ ...emailTemplates.map((et) => (Object.assign(Object.assign({}, et), { body: context.loadFile(et.body) }))),
25
+ ],
26
26
  };
27
27
  });
28
28
  }
29
29
  function dump(context) {
30
30
  return __awaiter(this, void 0, void 0, function* () {
31
- let emailTemplates = [...context.assets.emailTemplates || []];
31
+ let emailTemplates = [...(context.assets.emailTemplates || [])];
32
32
  if (emailTemplates.length > 0) {
33
33
  // Create Templates folder
34
34
  const templatesFolder = path_1.default.join(context.basePath, 'emailTemplates');
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedGuardianFactorProviders = {
3
+ guardianFactorProviders: unknown[];
4
+ };
5
+ declare const guardianFactorProvidersHandler: YAMLHandler<ParsedGuardianFactorProviders>;
6
+ export default guardianFactorProvidersHandler;
@@ -13,7 +13,7 @@ function parseAndDump(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default empty
15
15
  return {
16
- guardianFactorProviders: [...context.assets.guardianFactorProviders || []]
16
+ guardianFactorProviders: [...(context.assets.guardianFactorProviders || [])],
17
17
  };
18
18
  });
19
19
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedGuardianFactorTemplates = {
3
+ guardianFactorTemplates: unknown[];
4
+ };
5
+ declare const guardianFactorTemplatesHandler: YAMLHandler<ParsedGuardianFactorTemplates>;
6
+ export default guardianFactorTemplatesHandler;
@@ -13,7 +13,7 @@ function parseAndDump(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default if empty
15
15
  return {
16
- guardianFactorTemplates: [...context.assets.guardianFactorTemplates || []]
16
+ guardianFactorTemplates: [...(context.assets.guardianFactorTemplates || [])],
17
17
  };
18
18
  });
19
19
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedGuardianFactors = {
3
+ guardianFactors: unknown[];
4
+ };
5
+ declare const guardianFactorsHandler: YAMLHandler<ParsedGuardianFactors>;
6
+ export default guardianFactorsHandler;
@@ -13,7 +13,7 @@ function parseAndDump(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default if empty
15
15
  return {
16
- guardianFactors: [...context.assets.guardianFactors || []]
16
+ guardianFactors: [...(context.assets.guardianFactors || [])],
17
17
  };
18
18
  });
19
19
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedGuardianFactorMessageTypes = {
3
+ guardianPhoneFactorMessageTypes: unknown;
4
+ };
5
+ declare const guardianPhoneFactorMessageTypesHandler: YAMLHandler<ParsedGuardianFactorMessageTypes>;
6
+ export default guardianPhoneFactorMessageTypesHandler;
@@ -13,7 +13,7 @@ function parseAndDump(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default if empty
15
15
  return {
16
- guardianPhoneFactorMessageTypes: Object.assign({}, context.assets.guardianPhoneFactorMessageTypes || {})
16
+ guardianPhoneFactorMessageTypes: Object.assign({}, (context.assets.guardianPhoneFactorMessageTypes || {})),
17
17
  };
18
18
  });
19
19
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedGuardianPhoneFactorSelectedProvider = {
3
+ guardianPhoneFactorSelectedProvider: unknown;
4
+ };
5
+ declare const guardianPhoneFactorSelectedProviderHandler: YAMLHandler<ParsedGuardianPhoneFactorSelectedProvider>;
6
+ export default guardianPhoneFactorSelectedProviderHandler;
@@ -13,7 +13,7 @@ function parseAndDump(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default empty
15
15
  return {
16
- guardianPhoneFactorSelectedProvider: Object.assign({}, context.assets.guardianPhoneFactorSelectedProvider || {})
16
+ guardianPhoneFactorSelectedProvider: Object.assign({}, (context.assets.guardianPhoneFactorSelectedProvider || {})),
17
17
  };
18
18
  });
19
19
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedGuardianPolicies = {
3
+ guardianPolicies: unknown;
4
+ };
5
+ declare const guardianPoliciesHandler: YAMLHandler<ParsedGuardianPolicies>;
6
+ export default guardianPoliciesHandler;
@@ -13,7 +13,7 @@ function parseAndDump(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default if empty
15
15
  return {
16
- guardianPolicies: Object.assign({}, context.assets.guardianPolicies || {})
16
+ guardianPolicies: Object.assign({}, (context.assets.guardianPolicies || {})),
17
17
  };
18
18
  });
19
19
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedHooks = {
3
+ hooks: unknown[];
4
+ } | {};
5
+ declare const hooksHandler: YAMLHandler<ParsedHooks>;
6
+ export default hooksHandler;
@@ -26,18 +26,19 @@ function parse(context) {
26
26
  hooks: [
27
27
  ...context.assets.hooks.map((hook) => {
28
28
  if (hook.script) {
29
+ //@ts-ignore TODO: understand why two arguments are passed when context.loadFile only accepts one
29
30
  hook.script = context.loadFile(hook.script, tools_1.constants.HOOKS_DIRECTORY);
30
31
  }
31
32
  hook.name = hook.name.toLowerCase().replace(/\s/g, '-');
32
33
  return Object.assign({}, hook);
33
- })
34
- ]
34
+ }),
35
+ ],
35
36
  };
36
37
  });
37
38
  }
38
39
  function dump(context) {
39
40
  return __awaiter(this, void 0, void 0, function* () {
40
- let hooks = [...context.assets.hooks || []];
41
+ let hooks = [...(context.assets.hooks || [])];
41
42
  if (hooks.length > 0) {
42
43
  // Create hooks folder
43
44
  const hooksFolder = path_1.default.join(context.basePath, 'hooks');
@@ -0,0 +1,12 @@
1
+ import YAMLContext from '..';
2
+ import { AssetTypes } from '../../../types';
3
+ export declare type YAMLHandler<T> = {
4
+ dump: (context: YAMLContext) => Promise<T | {}>;
5
+ parse: (context: YAMLContext) => Promise<T>;
6
+ };
7
+ declare const yamlHandlers: {
8
+ [key in AssetTypes]: YAMLHandler<{
9
+ [key: string]: unknown;
10
+ }>;
11
+ };
12
+ export default yamlHandlers;
@@ -28,7 +28,7 @@ const actions_1 = __importDefault(require("./actions"));
28
28
  const triggers_1 = __importDefault(require("./triggers"));
29
29
  const attackProtection_1 = __importDefault(require("./attackProtection"));
30
30
  const branding_1 = __importDefault(require("./branding"));
31
- exports.default = {
31
+ const yamlHandlers = {
32
32
  rules: rules_1.default,
33
33
  hooks: hooks_1.default,
34
34
  rulesConfigs: rulesConfigs_1.default,
@@ -53,5 +53,6 @@ exports.default = {
53
53
  organizations: organizations_1.default,
54
54
  triggers: triggers_1.default,
55
55
  attackProtection: attackProtection_1.default,
56
- branding: branding_1.default
56
+ branding: branding_1.default,
57
57
  };
58
+ exports.default = yamlHandlers;
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedMigrations = {
3
+ migrations: unknown[];
4
+ };
5
+ declare const migrationsHandler: YAMLHandler<ParsedMigrations>;
6
+ export default migrationsHandler;
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedOrganizations = {
3
+ organizations: unknown[];
4
+ };
5
+ declare const organizationsHandler: YAMLHandler<ParsedOrganizations>;
6
+ export default organizationsHandler;
@@ -13,7 +13,7 @@ function parse(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  const { organizations } = context.assets;
15
15
  return {
16
- organizations: organizations
16
+ organizations: organizations,
17
17
  };
18
18
  });
19
19
  }
@@ -33,8 +33,8 @@ function dump(context) {
33
33
  });
34
34
  }
35
35
  return org;
36
- })
37
- ]
36
+ }),
37
+ ],
38
38
  };
39
39
  });
40
40
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedPages = {
3
+ pages: unknown[];
4
+ } | {};
5
+ declare const pagesHandler: YAMLHandler<ParsedPages>;
6
+ export default pagesHandler;
@@ -22,14 +22,14 @@ function parse(context) {
22
22
  return {};
23
23
  return {
24
24
  pages: [
25
- ...context.assets.pages.map((page) => (Object.assign(Object.assign({}, page), { html: page.html ? context.loadFile(page.html) : '' })))
26
- ]
25
+ ...context.assets.pages.map((page) => (Object.assign(Object.assign({}, page), { html: page.html ? context.loadFile(page.html) : '' }))),
26
+ ],
27
27
  };
28
28
  });
29
29
  }
30
30
  function dump(context) {
31
31
  return __awaiter(this, void 0, void 0, function* () {
32
- let pages = [...context.assets.pages || []];
32
+ let pages = [...(context.assets.pages || [])];
33
33
  if (pages.length > 0) {
34
34
  // Create Pages folder
35
35
  const pagesFolder = path_1.default.join(context.basePath, 'pages');
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedResourceServers = {
3
+ resourceServers: unknown[];
4
+ };
5
+ declare const resourceServersHandler: YAMLHandler<ParsedResourceServers>;
6
+ export default resourceServersHandler;
@@ -13,7 +13,7 @@ function parse(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default if empty
15
15
  return {
16
- resourceServers: context.assets.resourceServers
16
+ resourceServers: context.assets.resourceServers,
17
17
  };
18
18
  });
19
19
  }
@@ -21,7 +21,7 @@ function dump(context) {
21
21
  return __awaiter(this, void 0, void 0, function* () {
22
22
  // nothing to do, set default if empty
23
23
  return {
24
- resourceServers: [...context.assets.resourceServers || []]
24
+ resourceServers: [...(context.assets.resourceServers || [])],
25
25
  };
26
26
  });
27
27
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedRoles = {
3
+ roles: unknown[];
4
+ };
5
+ declare const rolesHandler: YAMLHandler<ParsedRoles>;
6
+ export default rolesHandler;
@@ -13,7 +13,7 @@ function parse(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default empty
15
15
  return {
16
- roles: context.assets.roles
16
+ roles: context.assets.roles,
17
17
  };
18
18
  });
19
19
  }
@@ -27,8 +27,8 @@ function dump(context) {
27
27
  delete role.description;
28
28
  }
29
29
  return role;
30
- })
31
- ]
30
+ }),
31
+ ],
32
32
  };
33
33
  });
34
34
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedRules = {
3
+ rules: unknown[];
4
+ } | {};
5
+ declare const rulesHandler: YAMLHandler<ParsedRules>;
6
+ export default rulesHandler;
@@ -23,14 +23,14 @@ function parse(context) {
23
23
  return {};
24
24
  return {
25
25
  rules: [
26
- ...context.assets.rules.map((rule) => (Object.assign(Object.assign({}, rule), { script: context.loadFile(rule.script) })))
27
- ]
26
+ ...context.assets.rules.map((rule) => (Object.assign(Object.assign({}, rule), { script: context.loadFile(rule.script) }))),
27
+ ],
28
28
  };
29
29
  });
30
30
  }
31
31
  function dump(context) {
32
32
  return __awaiter(this, void 0, void 0, function* () {
33
- let rules = [...context.assets.rules || []];
33
+ let rules = [...(context.assets.rules || [])];
34
34
  if (rules.length > 0) {
35
35
  // Create Rules folder
36
36
  const rulesFolder = path_1.default.join(context.basePath, 'rules');
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedRulesConfigs = {
3
+ rulesConfigs: unknown[];
4
+ } | {};
5
+ declare const rulesConfigsHandler: YAMLHandler<ParsedRulesConfigs>;
6
+ export default rulesConfigsHandler;
@@ -13,7 +13,7 @@ function parse(context) {
13
13
  return __awaiter(this, void 0, void 0, function* () {
14
14
  // nothing to do, set default if empty
15
15
  return {
16
- rulesConfigs: context.assets.rulesConfigs
16
+ rulesConfigs: context.assets.rulesConfigs,
17
17
  };
18
18
  });
19
19
  }
@@ -21,7 +21,7 @@ function dump(_context) {
21
21
  return __awaiter(this, void 0, void 0, function* () {
22
22
  // do not export rulesConfigs as its values cannot be extracted
23
23
  return {
24
- rulesConfigs: []
24
+ rulesConfigs: [],
25
25
  };
26
26
  });
27
27
  }
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedTenant = {
3
+ tenant: unknown[];
4
+ } | {};
5
+ declare const tenantHandler: YAMLHandler<ParsedTenant>;
6
+ export default tenantHandler;
@@ -21,6 +21,7 @@ var __rest = (this && this.__rest) || function (s, e) {
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
23
  const utils_1 = require("../../../utils");
24
+ const sessionDurationsToMinutes_1 = require("../../../sessionDurationsToMinutes");
24
25
  function parse(context) {
25
26
  return __awaiter(this, void 0, void 0, function* () {
26
27
  // Nothing to do
@@ -29,15 +30,15 @@ function parse(context) {
29
30
  /* eslint-disable camelcase */
30
31
  const _a = context.assets.tenant, { session_lifetime, idle_session_lifetime } = _a, tenant = __rest(_a, ["session_lifetime", "idle_session_lifetime"]);
31
32
  (0, utils_1.clearTenantFlags)(tenant);
33
+ const sessionDurations = (0, sessionDurationsToMinutes_1.sessionDurationsToMinutes)({ session_lifetime, idle_session_lifetime });
32
34
  return {
33
- tenant: Object.assign(tenant, session_lifetime && (0, utils_1.hoursAsInteger)('session_lifetime', session_lifetime), idle_session_lifetime && (0, utils_1.hoursAsInteger)('idle_session_lifetime', idle_session_lifetime))
35
+ tenant: Object.assign(Object.assign({}, tenant), sessionDurations),
34
36
  };
35
- /* eslint-enable camelcase */
36
37
  });
37
38
  }
38
39
  function dump(context) {
39
40
  return __awaiter(this, void 0, void 0, function* () {
40
- const tenant = Object.assign({}, context.assets.tenant || {});
41
+ const tenant = Object.assign({}, (context.assets.tenant || {}));
41
42
  (0, utils_1.clearTenantFlags)(tenant);
42
43
  return { tenant };
43
44
  });
@@ -0,0 +1,6 @@
1
+ import { YAMLHandler } from '.';
2
+ declare type ParsedTriggers = {
3
+ triggers: unknown[];
4
+ } | {};
5
+ declare const triggersHandler: YAMLHandler<ParsedTriggers>;
6
+ export default triggersHandler;