@gravitee/ui-particles-angular 7.31.0-form-cron-p2-6e2de57 → 7.31.0-form-cron-p2-e813056

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.
@@ -61,9 +61,7 @@ export const getDefaultCronDisplay = (mode) => {
61
61
  return parseCronExpression(modeFound.default);
62
62
  };
63
63
  export const parseCronExpression = (cronExpression) => {
64
- if (!cronIsValid(cronExpression)) {
65
- throw new Error('Invalid cron expression.');
66
- }
64
+ throwIfInvalid(cronExpression);
67
65
  const parts = cronExpression.split(' ');
68
66
  // Normalize cron so that second segment is included.
69
67
  if (cronExpression && cronExpression.split(' ').length === 6) {
@@ -142,20 +140,21 @@ export const toCronExpression = (cronDisplay) => {
142
140
  }
143
141
  };
144
142
  export const toCronDescription = (cronExpression) => {
145
- if (!cronIsValid(cronExpression)) {
146
- throw new Error('Invalid cron expression.');
147
- }
143
+ throwIfInvalid(cronExpression);
148
144
  if (!isEmpty(cronExpression)) {
149
145
  return Cronstrue.toString(cronExpression);
150
146
  }
151
147
  return '';
152
148
  };
153
- const cronIsValid = (cronExpression) => {
154
- const parts = cronExpression.split(' ');
149
+ /**
150
+ * Simple validation to ensure that the cron expression has 6 parts.
151
+ * Note : The full cron expression validation is done by the backend.
152
+ */
153
+ const throwIfInvalid = (cronExpression) => {
154
+ const parts = cronExpression.trim().split(/\s+/);
155
155
  if (parts.length != 6) {
156
156
  throw new Error('Cron expression must have 6 parts.');
157
157
  }
158
- return true;
159
158
  };
160
159
  const getDisplayMode = (cronExpression) => {
161
160
  const modeFound = DISPLAY_MODE_LIST.find(mf => {
@@ -216,4 +215,4 @@ const getSegment = (value) => {
216
215
  });
217
216
  });
218
217
  };
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tY3Jvbi5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tZm9ybS1jcm9uL2dpby1mb3JtLWNyb24uYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sU0FBUyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFnQmpDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFVLENBQUM7QUFHdEgsTUFBTSxpQkFBaUIsR0FJakI7SUFDSjtRQUNFLElBQUksRUFBRSxVQUFVO1FBQ2hCLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSx5QkFBeUI7S0FDakM7SUFDRDtRQUNFLElBQUksRUFBRSxVQUFVO1FBQ2hCLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSwyQkFBMkI7S0FDbkM7SUFDRDtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsT0FBTyxFQUFFLGVBQWU7UUFDeEIsS0FBSyxFQUFFLGdDQUFnQztLQUN4QztJQUNEO1FBQ0UsSUFBSSxFQUFFLE9BQU87UUFDYixPQUFPLEVBQUUsZUFBZTtRQUN4QixLQUFLLEVBQUUsZ0NBQWdDO0tBQ3hDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsUUFBUTtRQUNkLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLEtBQUssRUFBRSxvQ0FBb0M7S0FDNUM7SUFDRDtRQUNFLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLGFBQWE7UUFDdEIsS0FBSyxFQUFFLHNCQUFzQjtLQUM5QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFD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SyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUFHLENBQUMsZUFBeUIsRUFBc0IsRUFBRTtJQUN4RSxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUFHLENBQUMsZUFBeUIsRUFBc0IsRUFBRTtJQUN2RSxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sWUFBWSxHQUFHLENBQUMsZUFBeUIsRUFBc0IsRUFBRTtJQUNyRSxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sYUFBYSxHQUFHLENBQUMsZUFBeUIsRUFBc0IsRUFBRTtJQUN0RSxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsZUFBeUIsRUFBc0IsRUFBRTtJQUNuRSxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUFHLENBQUMsZUFBeUIsRUFBc0IsRUFBRTtJQUNqRSxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBYSxFQUFpQyxFQUFFO0lBQ2xFLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtRQUN2QixLQUFLLEdBQUcsR0FBRyxDQUFDO0tBQ2I7SUFDRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQzlCLElBQUksQ0FBQyxLQUFLLFNBQVMsRUFBRTtZQUNuQixDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ1Q7UUFDRCxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzFCLE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIzIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IENyb25zdHJ1ZSBmcm9tICdjcm9uc3RydWUvaTE4bic7XG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnbG9kYXNoJztcblxuZXhwb3J0IGludGVyZmFjZSBDcm9uRGlzcGxheSB7XG4gIG1vZGU6IENyb25EaXNwbGF5TW9kZTtcblxuICBzZWNvbmRJbnRlcnZhbD86IG51bWJlcjtcbiAgbWludXRlSW50ZXJ2YWw/OiBudW1iZXI7XG4gIGhvdXJJbnRlcnZhbD86IG51bWJlcjtcbiAgZGF5SW50ZXJ2YWw/OiBudW1iZXI7XG4gIGRheU9mV2Vlaz86IG51bWJlcjtcbiAgZGF5T2ZNb250aD86IG51bWJlcjtcbiAgY3VzdG9tRXhwcmVzc2lvbj86IHN0cmluZztcblxuICBob3Vycz86IG51bWJlcjtcbiAgbWludXRlcz86IG51bWJlcjtcbn1cbmV4cG9ydCBjb25zdCBDUk9OX0RJU1BMQVlfTU9ERVMgPSBbJ3NlY29uZGx5JywgJ21pbnV0ZWx5JywgJ2hvdXJseScsICdkYWlseScsICd3ZWVrbHknLCAnbW9udGhseScsICdjdXN0b20nXSBhcyBjb25zdDtcbmV4cG9ydCB0eXBlIENyb25EaXNwbGF5TW9kZSA9ICh0eXBlb2YgQ1JPTl9ESVNQTEFZX01PREVTKVtudW1iZXJdO1xuXG5jb25zdCBESVNQTEFZX01PREVfTElTVDoge1xuICBtb2RlOiBDcm9uRGlzcGxheU1vZGU7XG4gIGRlZmF1bHQ6IHN0cmluZztcbiAgcmVnZXg6IFJlZ0V4cDtcbn1bXSA9IFtcbiAge1xuICAgIG1vZGU6ICdzZWNvbmRseScsXG4gICAgZGVmYXVsdDogJyovMSAqICogKiAqIConLFxuICAgIHJlZ2V4OiAvXihcXCpcXC9cXGQrXFxzKShcXCpcXHMpezR9XFwqLyxcbiAgfSxcbiAge1xuICAgIG1vZGU6ICdtaW51dGVseScsXG4gICAgZGVmYXVsdDogJzAgKi8xICogKiAqIConLFxuICAgIHJlZ2V4OiAvXjBcXHNcXCpcXC9cXGQrXFxzKFxcKlxccyl7M31cXCokLyxcbiAgfSxcbiAge1xuICAgIG1vZGU6ICdob3VybHknLFxuICAgIGRlZmF1bHQ6ICcwIDAgKi8xICogKiAqJyxcbiAgICByZWdleDogL14wXFxzXFxkK1xcc1xcKlxcL1xcZCtcXHMoXFwqXFxzKXsyfVxcKiQvLFxuICB9LFxuICB7XG4gICAgbW9kZTogJ2RhaWx5JyxcbiAgICBkZWZhdWx0OiAnMCAwIDAgKi8xICogKicsXG4gICAgcmVnZXg6IC9eMFxcc1xcZCtcXHNcXGQrXFxzXFwqXFwvXFxkK1xcc1xcKlxcc1xcKiQvLFxuICB9LFxuICB7XG4gICAgbW9kZTogJ3dlZWtseScsXG4gICAgZGVmYXVsdDogJzAgMCAwICogKiAwJyxcbiAgICByZWdleDogL14oXFxkezEsMn1cXHMpezIsM30oXFwqXFxzKXsyfVxcZHsxLDJ9JC8sXG4gIH0sXG4gIHtcbiAgICBtb2RlOiAnbW9udGhseScsXG4gICAgZGVmYXVsdDogJzAgMCAwIDEgKiAqJyxcbiAgICByZWdleDogL14oXFxkK1xccyl7Myw0fVxcKlxcc1xcKiQvLFxuICB9LFxuICB7XG4gICAgbW9kZTogJ2N1c3RvbScsXG4gICAgZGVmYXVsdDogJyogKiAqICogKiAqJyxcbiAgICByZWdleDogL14uKiQvLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IGdldERlZmF1bHRDcm9uRGlzcGxheSA9IChtb2RlOiBDcm9uRGlzcGxheU1vZGUpOiBDcm9uRGlzcGxheSA9PiB7XG4gIGNvbnN0IG1vZGVGb3VuZCA9IERJU1BMQVlfTU9ERV9MSVNULmZpbmQobWYgPT4gbWYubW9kZSA9PT0gbW9kZSk7XG4gIGlmICghbW9kZUZvdW5kKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNyb24gbW9kZS4nKTtcbiAgfVxuXG4gIHJldHVybiBwYXJzZUNyb25FeHByZXNzaW9uKG1vZGVGb3VuZC5kZWZhdWx0KTtcbn07XG5cbmV4cG9ydCBjb25zdCBwYXJzZUNyb25FeHByZXNzaW9uID0gKGNyb25FeHByZXNzaW9uOiBzdHJpbmcpOiBDcm9uRGlzcGxheSA9PiB7XG4gIGlmICghY3JvbklzVmFsaWQoY3JvbkV4cHJlc3Npb24pKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNyb24gZXhwcmVzc2lvbi4nKTtcbiAgfVxuXG4gIGNvbnN0IHBhcnRzID0gY3JvbkV4cHJlc3Npb24uc3BsaXQoJyAnKTtcblxuICAvLyBOb3JtYWxpemUgY3JvbiBzbyB0aGF0IHNlY29uZCBzZWdtZW50IGlzIGluY2x1ZGVkLlxuICBpZiAoY3JvbkV4cHJlc3Npb24gJiYgY3JvbkV4cHJlc3Npb24uc3BsaXQoJyAnKS5sZW5ndGggPT09IDYpIHtcbiAgICBwYXJ0cy5wdXNoKCcnKTtcbiAgfVxuXG4gIGNvbnN0IGhvdXJJbnRlcnZhbCA9IGdldEhvdXJJbnRlcnZhbChwYXJ0cyk7XG4gIGNvbnN0IG1pbnV0ZUludGVydmFsID0gZ2V0TWludXRlSW50ZXJ2YWwocGFydHMpO1xuICBjb25zdCBzZWNvbmRJbnRlcnZhbCA9IGdldFNlY29uZEludGVydmFsKHBhcnRzKTtcbiAgY29uc3QgZGF5SW50ZXJ2YWwgPSBnZXREYXlJbnRlcnZhbChwYXJ0cyk7XG4gIGNvbnN0IGRheU9mV2VlayA9IGdldERheU9mV2VlayhwYXJ0cyk7XG4gIGNvbnN0IGRheU9mTW9udGggPSBnZXREYXlPZk1vbnRoKHBhcnRzKTtcblxuICBjb25zdCBob3VycyA9IGdldEhvdXJzKHBhcnRzKTtcbiAgY29uc3QgbWludXRlcyA9IGdldE1pbnV0ZXMocGFydHMpO1xuXG4gIGNvbnN0IGRpc3BsYXlNb2RlID0gZ2V0RGlzcGxheU1vZGUoY3JvbkV4cHJlc3Npb24pO1xuXG4gIHN3aXRjaCAoZGlzcGxheU1vZGUubW9kZSkge1xuICAgIGNhc2UgJ3NlY29uZGx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdzZWNvbmRseScsXG4gICAgICAgIHNlY29uZEludGVydmFsLFxuICAgICAgfTtcbiAgICBjYXNlICdtaW51dGVseSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtb2RlOiAnbWludXRlbHknLFxuICAgICAgICBtaW51dGVJbnRlcnZhbCxcbiAgICAgIH07XG4gICAgY2FzZSAnaG91cmx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdob3VybHknLFxuICAgICAgICBob3VySW50ZXJ2YWwsXG4gICAgICAgIG1pbnV0ZXMsXG4gICAgICB9O1xuICAgIGNhc2UgJ2RhaWx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdkYWlseScsXG4gICAgICAgIGRheUludGVydmFsLFxuICAgICAgICBob3VycyxcbiAgICAgICAgbWludXRlcyxcbiAgICAgIH07XG4gICAgY2FzZSAnd2Vla2x5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICd3ZWVrbHknLFxuICAgICAgICBkYXlPZldlZWssXG4gICAgICAgIGhvdXJzLFxuICAgICAgICBtaW51dGVzLFxuICAgICAgfTtcbiAgICBjYXNlICdtb250aGx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdtb250aGx5JyxcbiAgICAgICAgZGF5T2ZNb250aCxcbiAgICAgICAgaG91cnMsXG4gICAgICAgIG1pbnV0ZXMsXG4gICAgICB9O1xuICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtb2RlOiAnY3VzdG9tJyxcbiAgICAgICAgY3VzdG9tRXhwcmVzc2lvbjogY3JvbkV4cHJlc3Npb24sXG4gICAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9Dcm9uRXhwcmVzc2lvbiA9IChjcm9uRGlzcGxheTogT21pdDxDcm9uRGlzcGxheSwgJ2Nyb25EZXNjcmlwdGlvbic+KTogc3RyaW5nID0+IHtcbiAgc3dpdGNoIChjcm9uRGlzcGxheS5tb2RlKSB7XG4gICAgY2FzZSAnc2Vjb25kbHknOlxuICAgICAgcmV0dXJuIGAqLyR7Y3JvbkRpc3BsYXkuc2Vjb25kSW50ZXJ2YWx9ICogKiAqICogKmA7XG4gICAgY2FzZSAnbWludXRlbHknOlxuICAgICAgcmV0dXJuIGAwICovJHtjcm9uRGlzcGxheS5taW51dGVJbnRlcnZhbH0gKiAqICogKmA7XG4gICAgY2FzZSAnaG91cmx5JzpcbiAgICAgIHJldHVybiBgMCAke2Nyb25EaXNwbGF5Lm1pbnV0ZXN9ICovJHtjcm9uRGlzcGxheS5ob3VySW50ZXJ2YWx9ICogKiAqYDtcbiAgICBjYXNlICdkYWlseSc6XG4gICAgICByZXR1cm4gYDAgJHtjcm9uRGlzcGxheS5taW51dGVzfSAke2Nyb25EaXNwbGF5LmhvdXJzfSAqLyR7Y3JvbkRpc3BsYXkuZGF5SW50ZXJ2YWx9ICogKmA7XG4gICAgY2FzZSAnd2Vla2x5JzpcbiAgICAgIHJldHVybiBgMCAke2Nyb25EaXNwbGF5Lm1pbnV0ZXN9ICR7Y3JvbkRpc3BsYXkuaG91cnN9ICogKiAke2Nyb25EaXNwbGF5LmRheU9mV2Vla31gO1xuICAgIGNhc2UgJ21vbnRobHknOlxuICAgICAgcmV0dXJuIGAwICR7Y3JvbkRpc3BsYXkubWludXRlc30gJHtjcm9uRGlzcGxheS5ob3Vyc30gJHtjcm9uRGlzcGxheS5kYXlPZk1vbnRofSAqICpgO1xuICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICByZXR1cm4gYCR7Y3JvbkRpc3BsYXkuY3VzdG9tRXhwcmVzc2lvbn1gO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9Dcm9uRGVzY3JpcHRpb24gPSAoY3JvbkV4cHJlc3Npb246IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGlmICghY3JvbklzVmFsaWQoY3JvbkV4cHJlc3Npb24pKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNyb24gZXhwcmVzc2lvbi4nKTtcbiAgfVxuXG4gIGlmICghaXNFbXB0eShjcm9uRXhwcmVzc2lvbikpIHtcbiAgICByZXR1cm4gQ3JvbnN0cnVlLnRvU3RyaW5nKGNyb25FeHByZXNzaW9uKTtcbiAgfVxuXG4gIHJldHVybiAnJztcbn07XG5cbmNvbnN0IGNyb25Jc1ZhbGlkID0gKGNyb25FeHByZXNzaW9uOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgY29uc3QgcGFydHMgPSBjcm9uRXhwcmVzc2lvbi5zcGxpdCgnICcpO1xuXG4gIGlmIChwYXJ0cy5sZW5ndGggIT0gNikge1xuICAgIHRocm93IG5ldyBFcnJvcignQ3JvbiBleHByZXNzaW9uIG11c3QgaGF2ZSA2IHBhcnRzLicpO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59O1xuXG5jb25zdCBnZXREaXNwbGF5TW9kZSA9IChcbiAgY3JvbkV4cHJlc3Npb246IHN0cmluZyxcbik6IHtcbiAgbW9kZTogQ3JvbkRpc3BsYXlNb2RlO1xuICBkZWZhdWx0OiBzdHJpbmc7XG59ID0+IHtcbiAgY29uc3QgbW9kZUZvdW5kID0gRElTUExBWV9NT0RFX0xJU1QuZmluZChtZiA9PiB7XG4gICAgY29uc3QgcmVnZXggPSBtZi5yZWdleDtcbiAgICByZXR1cm4gcmVnZXgudGVzdChjcm9uRXhwcmVzc2lvbik7XG4gIH0pO1xuXG4gIGlmICghbW9kZUZvdW5kKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNyb24gZXhwcmVzc2lvbi4nKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbW9kZTogbW9kZUZvdW5kLm1vZGUsXG4gICAgZGVmYXVsdDogbW9kZUZvdW5kLmRlZmF1bHQsXG4gIH07XG59O1xuXG5jb25zdCBnZXRTZWNvbmRJbnRlcnZhbCA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzBdKVswXVsxXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRNaW51dGVJbnRlcnZhbCA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzFdKVswXVsxXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRIb3VySW50ZXJ2YWwgPSAoZXhwcmVzc2lvblBhcnRzOiBzdHJpbmdbXSk6IG51bWJlciB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHYgPSBnZXRTZWdtZW50KGV4cHJlc3Npb25QYXJ0c1syXSlbMF1bMV07XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ251bWJlcicgPyB2IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2V0RGF5SW50ZXJ2YWwgPSAoZXhwcmVzc2lvblBhcnRzOiBzdHJpbmdbXSk6IG51bWJlciB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHYgPSBnZXRTZWdtZW50KGV4cHJlc3Npb25QYXJ0c1szXSlbMF1bMV07XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ251bWJlcicgPyB2IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2V0RGF5T2ZXZWVrID0gKGV4cHJlc3Npb25QYXJ0czogc3RyaW5nW10pOiBudW1iZXIgfCB1bmRlZmluZWQgPT4ge1xuICBjb25zdCB2ID0gZ2V0U2VnbWVudChleHByZXNzaW9uUGFydHNbNV0pWzBdWzBdO1xuICByZXR1cm4gdHlwZW9mIHYgPT09ICdudW1iZXInID8gdiA6IHVuZGVmaW5lZDtcbn07XG5cbmNvbnN0IGdldERheU9mTW9udGggPSAoZXhwcmVzc2lvblBhcnRzOiBzdHJpbmdbXSk6IG51bWJlciB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHYgPSBnZXRTZWdtZW50KGV4cHJlc3Npb25QYXJ0c1szXSlbMF1bMF07XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ251bWJlcicgPyB2IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2V0TWludXRlcyA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzFdKVswXVswXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRIb3VycyA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzJdKVswXVswXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRTZWdtZW50ID0gKHZhbHVlOiBzdHJpbmcpOiBBcnJheTxBcnJheTxzdHJpbmcgfCBudW1iZXI+PiA9PiB7XG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdmFsdWUgPSAnKic7XG4gIH1cbiAgcmV0dXJuIHZhbHVlLnNwbGl0KCcsJykubWFwKHMgPT4ge1xuICAgIGlmIChzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHMgPSAnKic7XG4gICAgfVxuICAgIHJldHVybiBzLnNwbGl0KCcvJykubWFwKHAgPT4ge1xuICAgICAgY29uc3QgdiA9IHBhcnNlSW50KHAsIDEwKTtcbiAgICAgIHJldHVybiBpc05hTih2KSA/IHAgOiB2O1xuICAgIH0pO1xuICB9KTtcbn07XG4iXX0=
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tY3Jvbi5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tZm9ybS1jcm9uL2dpby1mb3JtLWNyb24uYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sU0FBUyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFnQmpDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFVLENBQUM7QUFHdEgsTUFBTSxpQkFBaUIsR0FJakI7SUFDSjtRQUNFLElBQUksRUFBRSxVQUFVO1FBQ2hCLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSx5QkFBeUI7S0FDakM7SUFDRDtRQUNFLElBQUksRUFBRSxVQUFVO1FBQ2hCLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSwyQkFBMkI7S0FDbkM7SUFDRDtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsT0FBTyxFQUFFLGVBQWU7UUFDeEIsS0FBSyxFQUFFLGdDQUFnQztLQUN4QztJQUNEO1FBQ0UsSUFBSSxFQUFFLE9BQU87UUFDYixPQUFPLEVBQUUsZUFBZTtRQUN4QixLQUFLLEVBQUUsZ0NBQWdDO0tBQ3hDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsUUFBUTtRQUNkLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLEtBQUssRUFBRSxvQ0FBb0M7S0FDNUM7SUFDRDtRQUNFLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLGFBQWE7UUFDdEIsS0FBSyxFQUFFLHNCQUFzQjtLQUM5QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFD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O0lBQ3hFLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDL0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxjQUFjLEdBQUcsQ0FBQyxlQUF5QixFQUFzQixFQUFFO0lBQ3ZFLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDL0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxlQUF5QixFQUFzQixFQUFFO0lBQ3JFLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDL0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxhQUFhLEdBQUcsQ0FBQyxlQUF5QixFQUFzQixFQUFFO0lBQ3RFLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDL0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEdBQUcsQ0FBQyxlQUF5QixFQUFzQixFQUFFO0lBQ25FLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDL0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxRQUFRLEdBQUcsQ0FBQyxlQUF5QixFQUFzQixFQUFFO0lBQ2pFLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDL0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEdBQUcsQ0FBQyxLQUFhLEVBQWlDLEVBQUU7SUFDbEUsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1FBQ3ZCLEtBQUssR0FBRyxHQUFHLENBQUM7S0FDYjtJQUNELE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDOUIsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFO1lBQ25CLENBQUMsR0FBRyxHQUFHLENBQUM7U0FDVDtRQUNELE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDMUIsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMxQixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjMgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgQ3JvbnN0cnVlIGZyb20gJ2Nyb25zdHJ1ZS9pMThuJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyb25EaXNwbGF5IHtcbiAgbW9kZTogQ3JvbkRpc3BsYXlNb2RlO1xuXG4gIHNlY29uZEludGVydmFsPzogbnVtYmVyO1xuICBtaW51dGVJbnRlcnZhbD86IG51bWJlcjtcbiAgaG91ckludGVydmFsPzogbnVtYmVyO1xuICBkYXlJbnRlcnZhbD86IG51bWJlcjtcbiAgZGF5T2ZXZWVrPzogbnVtYmVyO1xuICBkYXlPZk1vbnRoPzogbnVtYmVyO1xuICBjdXN0b21FeHByZXNzaW9uPzogc3RyaW5nO1xuXG4gIGhvdXJzPzogbnVtYmVyO1xuICBtaW51dGVzPzogbnVtYmVyO1xufVxuZXhwb3J0IGNvbnN0IENST05fRElTUExBWV9NT0RFUyA9IFsnc2Vjb25kbHknLCAnbWludXRlbHknLCAnaG91cmx5JywgJ2RhaWx5JywgJ3dlZWtseScsICdtb250aGx5JywgJ2N1c3RvbSddIGFzIGNvbnN0O1xuZXhwb3J0IHR5cGUgQ3JvbkRpc3BsYXlNb2RlID0gKHR5cGVvZiBDUk9OX0RJU1BMQVlfTU9ERVMpW251bWJlcl07XG5cbmNvbnN0IERJU1BMQVlfTU9ERV9MSVNUOiB7XG4gIG1vZGU6IENyb25EaXNwbGF5TW9kZTtcbiAgZGVmYXVsdDogc3RyaW5nO1xuICByZWdleDogUmVnRXhwO1xufVtdID0gW1xuICB7XG4gICAgbW9kZTogJ3NlY29uZGx5JyxcbiAgICBkZWZhdWx0OiAnKi8xICogKiAqICogKicsXG4gICAgcmVnZXg6IC9eKFxcKlxcL1xcZCtcXHMpKFxcKlxccyl7NH1cXCovLFxuICB9LFxuICB7XG4gICAgbW9kZTogJ21pbnV0ZWx5JyxcbiAgICBkZWZhdWx0OiAnMCAqLzEgKiAqICogKicsXG4gICAgcmVnZXg6IC9eMFxcc1xcKlxcL1xcZCtcXHMoXFwqXFxzKXszfVxcKiQvLFxuICB9LFxuICB7XG4gICAgbW9kZTogJ2hvdXJseScsXG4gICAgZGVmYXVsdDogJzAgMCAqLzEgKiAqIConLFxuICAgIHJlZ2V4OiAvXjBcXHNcXGQrXFxzXFwqXFwvXFxkK1xccyhcXCpcXHMpezJ9XFwqJC8sXG4gIH0sXG4gIHtcbiAgICBtb2RlOiAnZGFpbHknLFxuICAgIGRlZmF1bHQ6ICcwIDAgMCAqLzEgKiAqJyxcbiAgICByZWdleDogL14wXFxzXFxkK1xcc1xcZCtcXHNcXCpcXC9cXGQrXFxzXFwqXFxzXFwqJC8sXG4gIH0sXG4gIHtcbiAgICBtb2RlOiAnd2Vla2x5JyxcbiAgICBkZWZhdWx0OiAnMCAwIDAgKiAqIDAnLFxuICAgIHJlZ2V4OiAvXihcXGR7MSwyfVxccyl7MiwzfShcXCpcXHMpezJ9XFxkezEsMn0kLyxcbiAgfSxcbiAge1xuICAgIG1vZGU6ICdtb250aGx5JyxcbiAgICBkZWZhdWx0OiAnMCAwIDAgMSAqIConLFxuICAgIHJlZ2V4OiAvXihcXGQrXFxzKXszLDR9XFwqXFxzXFwqJC8sXG4gIH0sXG4gIHtcbiAgICBtb2RlOiAnY3VzdG9tJyxcbiAgICBkZWZhdWx0OiAnKiAqICogKiAqIConLFxuICAgIHJlZ2V4OiAvXi4qJC8sXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgZ2V0RGVmYXVsdENyb25EaXNwbGF5ID0gKG1vZGU6IENyb25EaXNwbGF5TW9kZSk6IENyb25EaXNwbGF5ID0+IHtcbiAgY29uc3QgbW9kZUZvdW5kID0gRElTUExBWV9NT0RFX0xJU1QuZmluZChtZiA9PiBtZi5tb2RlID09PSBtb2RlKTtcbiAgaWYgKCFtb2RlRm91bmQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY3JvbiBtb2RlLicpO1xuICB9XG5cbiAgcmV0dXJuIHBhcnNlQ3JvbkV4cHJlc3Npb24obW9kZUZvdW5kLmRlZmF1bHQpO1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlQ3JvbkV4cHJlc3Npb24gPSAoY3JvbkV4cHJlc3Npb246IHN0cmluZyk6IENyb25EaXNwbGF5ID0+IHtcbiAgdGhyb3dJZkludmFsaWQoY3JvbkV4cHJlc3Npb24pO1xuXG4gIGNvbnN0IHBhcnRzID0gY3JvbkV4cHJlc3Npb24uc3BsaXQoJyAnKTtcblxuICAvLyBOb3JtYWxpemUgY3JvbiBzbyB0aGF0IHNlY29uZCBzZWdtZW50IGlzIGluY2x1ZGVkLlxuICBpZiAoY3JvbkV4cHJlc3Npb24gJiYgY3JvbkV4cHJlc3Npb24uc3BsaXQoJyAnKS5sZW5ndGggPT09IDYpIHtcbiAgICBwYXJ0cy5wdXNoKCcnKTtcbiAgfVxuXG4gIGNvbnN0IGhvdXJJbnRlcnZhbCA9IGdldEhvdXJJbnRlcnZhbChwYXJ0cyk7XG4gIGNvbnN0IG1pbnV0ZUludGVydmFsID0gZ2V0TWludXRlSW50ZXJ2YWwocGFydHMpO1xuICBjb25zdCBzZWNvbmRJbnRlcnZhbCA9IGdldFNlY29uZEludGVydmFsKHBhcnRzKTtcbiAgY29uc3QgZGF5SW50ZXJ2YWwgPSBnZXREYXlJbnRlcnZhbChwYXJ0cyk7XG4gIGNvbnN0IGRheU9mV2VlayA9IGdldERheU9mV2VlayhwYXJ0cyk7XG4gIGNvbnN0IGRheU9mTW9udGggPSBnZXREYXlPZk1vbnRoKHBhcnRzKTtcblxuICBjb25zdCBob3VycyA9IGdldEhvdXJzKHBhcnRzKTtcbiAgY29uc3QgbWludXRlcyA9IGdldE1pbnV0ZXMocGFydHMpO1xuXG4gIGNvbnN0IGRpc3BsYXlNb2RlID0gZ2V0RGlzcGxheU1vZGUoY3JvbkV4cHJlc3Npb24pO1xuXG4gIHN3aXRjaCAoZGlzcGxheU1vZGUubW9kZSkge1xuICAgIGNhc2UgJ3NlY29uZGx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdzZWNvbmRseScsXG4gICAgICAgIHNlY29uZEludGVydmFsLFxuICAgICAgfTtcbiAgICBjYXNlICdtaW51dGVseSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtb2RlOiAnbWludXRlbHknLFxuICAgICAgICBtaW51dGVJbnRlcnZhbCxcbiAgICAgIH07XG4gICAgY2FzZSAnaG91cmx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdob3VybHknLFxuICAgICAgICBob3VySW50ZXJ2YWwsXG4gICAgICAgIG1pbnV0ZXMsXG4gICAgICB9O1xuICAgIGNhc2UgJ2RhaWx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdkYWlseScsXG4gICAgICAgIGRheUludGVydmFsLFxuICAgICAgICBob3VycyxcbiAgICAgICAgbWludXRlcyxcbiAgICAgIH07XG4gICAgY2FzZSAnd2Vla2x5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICd3ZWVrbHknLFxuICAgICAgICBkYXlPZldlZWssXG4gICAgICAgIGhvdXJzLFxuICAgICAgICBtaW51dGVzLFxuICAgICAgfTtcbiAgICBjYXNlICdtb250aGx5JzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vZGU6ICdtb250aGx5JyxcbiAgICAgICAgZGF5T2ZNb250aCxcbiAgICAgICAgaG91cnMsXG4gICAgICAgIG1pbnV0ZXMsXG4gICAgICB9O1xuICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtb2RlOiAnY3VzdG9tJyxcbiAgICAgICAgY3VzdG9tRXhwcmVzc2lvbjogY3JvbkV4cHJlc3Npb24sXG4gICAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9Dcm9uRXhwcmVzc2lvbiA9IChjcm9uRGlzcGxheTogT21pdDxDcm9uRGlzcGxheSwgJ2Nyb25EZXNjcmlwdGlvbic+KTogc3RyaW5nID0+IHtcbiAgc3dpdGNoIChjcm9uRGlzcGxheS5tb2RlKSB7XG4gICAgY2FzZSAnc2Vjb25kbHknOlxuICAgICAgcmV0dXJuIGAqLyR7Y3JvbkRpc3BsYXkuc2Vjb25kSW50ZXJ2YWx9ICogKiAqICogKmA7XG4gICAgY2FzZSAnbWludXRlbHknOlxuICAgICAgcmV0dXJuIGAwICovJHtjcm9uRGlzcGxheS5taW51dGVJbnRlcnZhbH0gKiAqICogKmA7XG4gICAgY2FzZSAnaG91cmx5JzpcbiAgICAgIHJldHVybiBgMCAke2Nyb25EaXNwbGF5Lm1pbnV0ZXN9ICovJHtjcm9uRGlzcGxheS5ob3VySW50ZXJ2YWx9ICogKiAqYDtcbiAgICBjYXNlICdkYWlseSc6XG4gICAgICByZXR1cm4gYDAgJHtjcm9uRGlzcGxheS5taW51dGVzfSAke2Nyb25EaXNwbGF5LmhvdXJzfSAqLyR7Y3JvbkRpc3BsYXkuZGF5SW50ZXJ2YWx9ICogKmA7XG4gICAgY2FzZSAnd2Vla2x5JzpcbiAgICAgIHJldHVybiBgMCAke2Nyb25EaXNwbGF5Lm1pbnV0ZXN9ICR7Y3JvbkRpc3BsYXkuaG91cnN9ICogKiAke2Nyb25EaXNwbGF5LmRheU9mV2Vla31gO1xuICAgIGNhc2UgJ21vbnRobHknOlxuICAgICAgcmV0dXJuIGAwICR7Y3JvbkRpc3BsYXkubWludXRlc30gJHtjcm9uRGlzcGxheS5ob3Vyc30gJHtjcm9uRGlzcGxheS5kYXlPZk1vbnRofSAqICpgO1xuICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICByZXR1cm4gYCR7Y3JvbkRpc3BsYXkuY3VzdG9tRXhwcmVzc2lvbn1gO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9Dcm9uRGVzY3JpcHRpb24gPSAoY3JvbkV4cHJlc3Npb246IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHRocm93SWZJbnZhbGlkKGNyb25FeHByZXNzaW9uKTtcblxuICBpZiAoIWlzRW1wdHkoY3JvbkV4cHJlc3Npb24pKSB7XG4gICAgcmV0dXJuIENyb25zdHJ1ZS50b1N0cmluZyhjcm9uRXhwcmVzc2lvbik7XG4gIH1cblxuICByZXR1cm4gJyc7XG59O1xuXG4vKipcbiAqIFNpbXBsZSB2YWxpZGF0aW9uIHRvIGVuc3VyZSB0aGF0IHRoZSBjcm9uIGV4cHJlc3Npb24gaGFzIDYgcGFydHMuXG4gKiBOb3RlIDogVGhlIGZ1bGwgY3JvbiBleHByZXNzaW9uIHZhbGlkYXRpb24gaXMgZG9uZSBieSB0aGUgYmFja2VuZC5cbiAqL1xuY29uc3QgdGhyb3dJZkludmFsaWQgPSAoY3JvbkV4cHJlc3Npb246IHN0cmluZyk6IHZvaWQgPT4ge1xuICBjb25zdCBwYXJ0cyA9IGNyb25FeHByZXNzaW9uLnRyaW0oKS5zcGxpdCgvXFxzKy8pO1xuXG4gIGlmIChwYXJ0cy5sZW5ndGggIT0gNikge1xuICAgIHRocm93IG5ldyBFcnJvcignQ3JvbiBleHByZXNzaW9uIG11c3QgaGF2ZSA2IHBhcnRzLicpO1xuICB9XG59O1xuXG5jb25zdCBnZXREaXNwbGF5TW9kZSA9IChcbiAgY3JvbkV4cHJlc3Npb246IHN0cmluZyxcbik6IHtcbiAgbW9kZTogQ3JvbkRpc3BsYXlNb2RlO1xuICBkZWZhdWx0OiBzdHJpbmc7XG59ID0+IHtcbiAgY29uc3QgbW9kZUZvdW5kID0gRElTUExBWV9NT0RFX0xJU1QuZmluZChtZiA9PiB7XG4gICAgY29uc3QgcmVnZXggPSBtZi5yZWdleDtcbiAgICByZXR1cm4gcmVnZXgudGVzdChjcm9uRXhwcmVzc2lvbik7XG4gIH0pO1xuXG4gIGlmICghbW9kZUZvdW5kKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNyb24gZXhwcmVzc2lvbi4nKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbW9kZTogbW9kZUZvdW5kLm1vZGUsXG4gICAgZGVmYXVsdDogbW9kZUZvdW5kLmRlZmF1bHQsXG4gIH07XG59O1xuXG5jb25zdCBnZXRTZWNvbmRJbnRlcnZhbCA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzBdKVswXVsxXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRNaW51dGVJbnRlcnZhbCA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzFdKVswXVsxXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRIb3VySW50ZXJ2YWwgPSAoZXhwcmVzc2lvblBhcnRzOiBzdHJpbmdbXSk6IG51bWJlciB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHYgPSBnZXRTZWdtZW50KGV4cHJlc3Npb25QYXJ0c1syXSlbMF1bMV07XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ251bWJlcicgPyB2IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2V0RGF5SW50ZXJ2YWwgPSAoZXhwcmVzc2lvblBhcnRzOiBzdHJpbmdbXSk6IG51bWJlciB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHYgPSBnZXRTZWdtZW50KGV4cHJlc3Npb25QYXJ0c1szXSlbMF1bMV07XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ251bWJlcicgPyB2IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2V0RGF5T2ZXZWVrID0gKGV4cHJlc3Npb25QYXJ0czogc3RyaW5nW10pOiBudW1iZXIgfCB1bmRlZmluZWQgPT4ge1xuICBjb25zdCB2ID0gZ2V0U2VnbWVudChleHByZXNzaW9uUGFydHNbNV0pWzBdWzBdO1xuICByZXR1cm4gdHlwZW9mIHYgPT09ICdudW1iZXInID8gdiA6IHVuZGVmaW5lZDtcbn07XG5cbmNvbnN0IGdldERheU9mTW9udGggPSAoZXhwcmVzc2lvblBhcnRzOiBzdHJpbmdbXSk6IG51bWJlciB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHYgPSBnZXRTZWdtZW50KGV4cHJlc3Npb25QYXJ0c1szXSlbMF1bMF07XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ251bWJlcicgPyB2IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgZ2V0TWludXRlcyA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzFdKVswXVswXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRIb3VycyA9IChleHByZXNzaW9uUGFydHM6IHN0cmluZ1tdKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3QgdiA9IGdldFNlZ21lbnQoZXhwcmVzc2lvblBhcnRzWzJdKVswXVswXTtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJyA/IHYgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRTZWdtZW50ID0gKHZhbHVlOiBzdHJpbmcpOiBBcnJheTxBcnJheTxzdHJpbmcgfCBudW1iZXI+PiA9PiB7XG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdmFsdWUgPSAnKic7XG4gIH1cbiAgcmV0dXJuIHZhbHVlLnNwbGl0KCcsJykubWFwKHMgPT4ge1xuICAgIGlmIChzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHMgPSAnKic7XG4gICAgfVxuICAgIHJldHVybiBzLnNwbGl0KCcvJykubWFwKHAgPT4ge1xuICAgICAgY29uc3QgdiA9IHBhcnNlSW50KHAsIDEwKTtcbiAgICAgIHJldHVybiBpc05hTih2KSA/IHAgOiB2O1xuICAgIH0pO1xuICB9KTtcbn07XG4iXX0=
@@ -5766,9 +5766,7 @@ const getDefaultCronDisplay = (mode) => {
5766
5766
  return parseCronExpression(modeFound.default);
5767
5767
  };
5768
5768
  const parseCronExpression = (cronExpression) => {
5769
- if (!cronIsValid(cronExpression)) {
5770
- throw new Error('Invalid cron expression.');
5771
- }
5769
+ throwIfInvalid(cronExpression);
5772
5770
  const parts = cronExpression.split(' ');
5773
5771
  // Normalize cron so that second segment is included.
5774
5772
  if (cronExpression && cronExpression.split(' ').length === 6) {
@@ -5847,20 +5845,21 @@ const toCronExpression = (cronDisplay) => {
5847
5845
  }
5848
5846
  };
5849
5847
  const toCronDescription = (cronExpression) => {
5850
- if (!cronIsValid(cronExpression)) {
5851
- throw new Error('Invalid cron expression.');
5852
- }
5848
+ throwIfInvalid(cronExpression);
5853
5849
  if (!isEmpty(cronExpression)) {
5854
5850
  return Cronstrue.toString(cronExpression);
5855
5851
  }
5856
5852
  return '';
5857
5853
  };
5858
- const cronIsValid = (cronExpression) => {
5859
- const parts = cronExpression.split(' ');
5854
+ /**
5855
+ * Simple validation to ensure that the cron expression has 6 parts.
5856
+ * Note : The full cron expression validation is done by the backend.
5857
+ */
5858
+ const throwIfInvalid = (cronExpression) => {
5859
+ const parts = cronExpression.trim().split(/\s+/);
5860
5860
  if (parts.length != 6) {
5861
5861
  throw new Error('Cron expression must have 6 parts.');
5862
5862
  }
5863
- return true;
5864
5863
  };
5865
5864
  const getDisplayMode = (cronExpression) => {
5866
5865
  const modeFound = DISPLAY_MODE_LIST.find(mf => {