@arsedizioni/ars-utils 21.2.360 → 21.2.362

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.
@@ -23,10 +23,10 @@ class AutoFocusDirective {
23
23
  this.elementRef.nativeElement?.focus();
24
24
  });
25
25
  }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AutoFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
27
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: AutoFocusDirective, isStandalone: true, selector: "[autoFocus]", ngImport: i0 }); }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: AutoFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
27
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: AutoFocusDirective, isStandalone: true, selector: "[autoFocus]", ngImport: i0 }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AutoFocusDirective, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: AutoFocusDirective, decorators: [{
30
30
  type: Directive,
31
31
  args: [{
32
32
  selector: '[autoFocus]',
@@ -373,54 +373,63 @@ class SystemUtils {
373
373
  * @returns the html
374
374
  */
375
375
  static markdownToHtml(markdown, escapeEntities = false) {
376
+ if (!markdown)
377
+ return '';
376
378
  let html = markdown;
377
- //1. Escape HTML entities
379
+ // 1. Escape HTML entities
378
380
  if (escapeEntities) {
379
381
  html = html.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
380
382
  }
381
- // 2. Code blocks
383
+ // 2. Protect code from inline formatting by replacing it with placeholders.
384
+ // Placeholders are HTML-comment shaped so block detection treats them correctly.
385
+ const codeStore = [];
386
+ const stash = (content) => `<!--C${codeStore.push(content) - 1}-->`;
387
+ // 2a. Fenced code blocks
382
388
  html = html.replace(/```(\w+)?\n([\s\S]*?)```/g, (_match, lang, code) => {
383
389
  const langClass = lang ? ` class="language-${lang}"` : '';
384
- return `<pre><code${langClass}>${code.trim()}</code></pre>`;
390
+ return stash(`<pre><code${langClass}>${code.trim()}</code></pre>`);
385
391
  });
386
- // 3. Inline code
387
- html = html.replace(/`([^`]+)`/g, '<code>$1</code>');
388
- // 4. Headers
392
+ // 2b. Inline code
393
+ html = html.replace(/`([^`]+)`/g, (_match, code) => stash(`<code>${code}</code>`));
394
+ // 3. Headers
389
395
  html = html.replace(/^##### (.*$)/gim, '<h5>$1</h5>');
390
396
  html = html.replace(/^#### (.*$)/gim, '<h4>$1</h4>');
391
397
  html = html.replace(/^### (.*$)/gim, '<h3>$1</h3>');
392
398
  html = html.replace(/^## (.*$)/gim, '<h2>$1</h2>');
393
399
  html = html.replace(/^# (.*$)/gim, '<h1>$1</h1>');
394
- // 5. Horizontal rules
400
+ // 4. Horizontal rules
395
401
  html = html.replace(/^---+$/gim, '<hr>');
396
402
  html = html.replace(/^\*\*\*+$/gim, '<hr>');
397
- // 6. Links
403
+ // 5. Links
398
404
  html = html.replace(/\[([^\]]+)\]\(([^)]+)\)/g, '<a href="$2">$1</a>');
399
- // 7. Images
405
+ // 6. Images
400
406
  html = html.replace(/!\[([^\]]*)\]\(([^)]+)\)/g, '<img src="$2" alt="$1">');
401
- // 8. Bold e Italic
402
- html = html.replace(/\*\*\*([^*]+)\*\*\*/gim, '<strong><em>$1</em></strong>');
403
- html = html.replace(/___([^_]+)___/gim, '<strong><em>$1</em></strong>');
404
- html = html.replace(/\*\*([^*]+)\*\*/gim, '<strong>$1</strong>');
405
- html = html.replace(/__([^_]+)__/gim, '<strong>$1</strong>');
406
- html = html.replace(/\*([^*]+)\*/gim, '<em>$1</em>');
407
- html = html.replace(/_([^_]+)_/gim, '<em>$1</em>');
408
- // 9. Strikethrough
409
- html = html.replace(/~~([^~]+)~~/gim, '<del>$1</del>');
410
- // 10. Blockquotes
407
+ // 7. Bold and Italic.
408
+ // Delimiters must hug the text (no inner spaces) so spacing between
409
+ // separate styled spans is preserved. Underscore emphasis only applies at
410
+ // word boundaries, so identifiers like snake_case are left untouched.
411
+ html = html.replace(/\*\*\*(?=\S)([\s\S]*?\S)\*\*\*/g, '<strong><em>$1</em></strong>');
412
+ html = html.replace(/(?<![\w*])___(?=\S)([\s\S]*?\S)___(?![\w*])/g, '<strong><em>$1</em></strong>');
413
+ html = html.replace(/\*\*(?=\S)([\s\S]*?\S)\*\*/g, '<strong>$1</strong>');
414
+ html = html.replace(/(?<![\w*])__(?=\S)([\s\S]*?\S)__(?![\w*])/g, '<strong>$1</strong>');
415
+ html = html.replace(/\*(?=\S)([^*\n]*?\S)\*/g, '<em>$1</em>');
416
+ html = html.replace(/(?<![\w_])_(?=\S)([^_\n]*?\S)_(?![\w_])/g, '<em>$1</em>');
417
+ // 8. Strikethrough
418
+ html = html.replace(/~~(?=\S)([\s\S]*?\S)~~/g, '<del>$1</del>');
419
+ // 9. Blockquotes
411
420
  html = html.replace(/^> (.*$)/gim, '<blockquote>$1</blockquote>');
412
- // 11. Tables
421
+ // 10. Tables
413
422
  html = this.markdownConvertTables(html);
414
- // 12. Lists
423
+ // 11. Lists
415
424
  html = this.markdownConvertLists(html);
416
- // 13. Line breaks
417
- html = html.replace(/ $/gm, '<br>');
418
- // 14. Paragrafi (ultimo step per non interferire con altri elementi)
425
+ // 12. Line breaks (two trailing spaces)
426
+ html = html.replace(/ {2}$/gm, '<br>');
427
+ // 13. Paragraphs (last block step, to avoid interfering with other elements)
419
428
  html = this.markdownConvertParagraphs(html);
420
- // 15. Clean up extra newlines
421
- html = html.replace(/\`\`\`markdown/g, '');
422
- html = html.replace(/\*\*/g, '');
429
+ // 14. Collapse extra blank lines
423
430
  html = html.replace(/\n{3,}/g, '\n\n');
431
+ // 15. Restore protected code placeholders
432
+ html = html.replace(/<!--C(\d+)-->/g, (_match, index) => codeStore[Number(index)] ?? '');
424
433
  return html.trim();
425
434
  }
426
435
  /**
@@ -550,24 +559,39 @@ class SystemUtils {
550
559
  * @returns the html
551
560
  */
552
561
  static markdownConvertParagraphs(markdown) {
562
+ // Block-level tags that must not be wrapped in a paragraph.
563
+ const blockTag = /^<\/?(h[1-6]|ul|ol|li|table|thead|tbody|tfoot|tr|td|th|pre|blockquote|hr|p|div)\b/i;
564
+ // A line consisting solely of a protected code placeholder is block-level.
565
+ const codePlaceholder = /^<!--C\d+-->$/;
553
566
  const lines = markdown.split('\n');
554
567
  const result = [];
568
+ // Buffer of consecutive plain-text lines that belong to the same paragraph.
569
+ let paragraph = [];
570
+ // Flush the buffered lines as a single paragraph, joining soft line breaks
571
+ // (single newlines) with a <br> so each source line keeps its own visual row.
572
+ const flushParagraph = () => {
573
+ if (paragraph.length > 0) {
574
+ result.push(`<p>${paragraph.join('<br>')}</p>`);
575
+ paragraph = [];
576
+ }
577
+ };
555
578
  for (const line of lines) {
556
579
  const trimmed = line.trim();
557
580
  if (!trimmed) {
581
+ flushParagraph();
558
582
  result.push('');
559
583
  continue;
560
584
  }
561
- if (trimmed.startsWith('<') && trimmed.endsWith('>')) {
562
- result.push(line);
563
- continue;
564
- }
565
- if (trimmed.startsWith('<') || trimmed.endsWith('>')) {
585
+ if (blockTag.test(trimmed) || codePlaceholder.test(trimmed)) {
586
+ flushParagraph();
566
587
  result.push(line);
567
588
  continue;
568
589
  }
569
- result.push(`<p>${trimmed}</p>`);
590
+ // Plain text or inline-level content (strong, em, a, code, ...) becomes a paragraph.
591
+ // Lines separated by a single newline are merged into the same paragraph.
592
+ paragraph.push(trimmed);
570
593
  }
594
+ flushParagraph();
571
595
  return result.join('\n');
572
596
  }
573
597
  /**
@@ -1166,10 +1190,10 @@ class DateIntervalChangeDirective {
1166
1190
  }
1167
1191
  this.subject.next(e);
1168
1192
  }
1169
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DateIntervalChangeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1170
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: DateIntervalChangeDirective, isStandalone: true, selector: "[dateIntervalChange]", inputs: { dateIntervalChange: { classPropertyName: "dateIntervalChange", publicName: "dateIntervalChange", isSignal: true, isRequired: false, transformFunction: null }, end: { classPropertyName: "end", publicName: "end", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keyup": "onKeyup($event)" } }, ngImport: i0 }); }
1193
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: DateIntervalChangeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1194
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: DateIntervalChangeDirective, isStandalone: true, selector: "[dateIntervalChange]", inputs: { dateIntervalChange: { classPropertyName: "dateIntervalChange", publicName: "dateIntervalChange", isSignal: true, isRequired: false, transformFunction: null }, end: { classPropertyName: "end", publicName: "end", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keyup": "onKeyup($event)" } }, ngImport: i0 }); }
1171
1195
  }
1172
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DateIntervalChangeDirective, decorators: [{
1196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: DateIntervalChangeDirective, decorators: [{
1173
1197
  type: Directive,
1174
1198
  args: [{
1175
1199
  selector: '[dateIntervalChange]',
@@ -1212,10 +1236,10 @@ class CopyClipboardDirective {
1212
1236
  document.removeEventListener('copy', listener, false);
1213
1237
  }
1214
1238
  }
1215
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CopyClipboardDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1216
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: CopyClipboardDirective, isStandalone: true, selector: "[copyClipboard]", inputs: { payload: { classPropertyName: "payload", publicName: "copyClipboard", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { copied: "copied" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
1239
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: CopyClipboardDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1240
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: CopyClipboardDirective, isStandalone: true, selector: "[copyClipboard]", inputs: { payload: { classPropertyName: "payload", publicName: "copyClipboard", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { copied: "copied" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
1217
1241
  }
1218
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CopyClipboardDirective, decorators: [{
1242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: CopyClipboardDirective, decorators: [{
1219
1243
  type: Directive,
1220
1244
  args: [{
1221
1245
  selector: '[copyClipboard]',
@@ -1244,10 +1268,10 @@ class ValidatorDirective {
1244
1268
  const fn = this.validator();
1245
1269
  return fn ? fn(control) : null;
1246
1270
  }
1247
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1248
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: ValidatorDirective, isStandalone: true, selector: "[validator]", inputs: { validator: { classPropertyName: "validator", publicName: "validator", isSignal: true, isRequired: false, transformFunction: null } }, providers: [{ provide: NG_VALIDATORS, useExisting: ValidatorDirective, multi: true }], ngImport: i0 }); }
1271
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1272
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: ValidatorDirective, isStandalone: true, selector: "[validator]", inputs: { validator: { classPropertyName: "validator", publicName: "validator", isSignal: true, isRequired: false, transformFunction: null } }, providers: [{ provide: NG_VALIDATORS, useExisting: ValidatorDirective, multi: true }], ngImport: i0 }); }
1249
1273
  }
1250
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ValidatorDirective, decorators: [{
1274
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ValidatorDirective, decorators: [{
1251
1275
  type: Directive,
1252
1276
  args: [{
1253
1277
  selector: '[validator]',
@@ -1283,8 +1307,8 @@ class ValidIfDirective {
1283
1307
  }
1284
1308
  return isValid ? null : { validIf: "Non valido." };
1285
1309
  }
1286
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ValidIfDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1287
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: ValidIfDirective, isStandalone: true, selector: "[validIf]", inputs: { validIf: { classPropertyName: "validIf", publicName: "validIf", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1310
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ValidIfDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1311
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: ValidIfDirective, isStandalone: true, selector: "[validIf]", inputs: { validIf: { classPropertyName: "validIf", publicName: "validIf", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1288
1312
  {
1289
1313
  provide: NG_VALIDATORS,
1290
1314
  useExisting: forwardRef(() => ValidIfDirective),
@@ -1292,7 +1316,7 @@ class ValidIfDirective {
1292
1316
  },
1293
1317
  ], ngImport: i0 }); }
1294
1318
  }
1295
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ValidIfDirective, decorators: [{
1319
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ValidIfDirective, decorators: [{
1296
1320
  type: Directive,
1297
1321
  args: [{
1298
1322
  selector: "[validIf]",
@@ -1327,8 +1351,8 @@ class EqualsValidatorDirective {
1327
1351
  return null;
1328
1352
  return eq.value === control.value ? null : { equals: "Non valido." };
1329
1353
  }
1330
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EqualsValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1331
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: EqualsValidatorDirective, isStandalone: true, selector: "[equals]", inputs: { equals: { classPropertyName: "equals", publicName: "equals", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1354
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EqualsValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1355
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: EqualsValidatorDirective, isStandalone: true, selector: "[equals]", inputs: { equals: { classPropertyName: "equals", publicName: "equals", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1332
1356
  {
1333
1357
  provide: NG_VALIDATORS,
1334
1358
  useExisting: forwardRef(() => EqualsValidatorDirective),
@@ -1336,7 +1360,7 @@ class EqualsValidatorDirective {
1336
1360
  },
1337
1361
  ], ngImport: i0 }); }
1338
1362
  }
1339
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EqualsValidatorDirective, decorators: [{
1363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EqualsValidatorDirective, decorators: [{
1340
1364
  type: Directive,
1341
1365
  args: [{
1342
1366
  selector: "[equals]",
@@ -1383,8 +1407,8 @@ class NotEqualValidatorDirective {
1383
1407
  }
1384
1408
  return errors;
1385
1409
  }
1386
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NotEqualValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1387
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NotEqualValidatorDirective, isStandalone: true, selector: "[notEqual]", inputs: { notEqual: { classPropertyName: "notEqual", publicName: "notEqual", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1410
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NotEqualValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1411
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: NotEqualValidatorDirective, isStandalone: true, selector: "[notEqual]", inputs: { notEqual: { classPropertyName: "notEqual", publicName: "notEqual", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1388
1412
  {
1389
1413
  provide: NG_VALIDATORS,
1390
1414
  useExisting: forwardRef(() => NotEqualValidatorDirective),
@@ -1392,7 +1416,7 @@ class NotEqualValidatorDirective {
1392
1416
  },
1393
1417
  ], ngImport: i0 }); }
1394
1418
  }
1395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NotEqualValidatorDirective, decorators: [{
1419
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NotEqualValidatorDirective, decorators: [{
1396
1420
  type: Directive,
1397
1421
  args: [{
1398
1422
  selector: "[notEqual]",
@@ -1425,8 +1449,8 @@ class EmailsValidatorDirective {
1425
1449
  const isValid = parts.every(part => part.length === 0 || !!SystemUtils.parseEmail(part));
1426
1450
  return isValid ? null : { emails: "Elenco non valido." };
1427
1451
  }
1428
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EmailsValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1429
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: EmailsValidatorDirective, isStandalone: true, selector: "[emails]", providers: [
1452
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EmailsValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1453
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: EmailsValidatorDirective, isStandalone: true, selector: "[emails]", providers: [
1430
1454
  {
1431
1455
  provide: NG_VALIDATORS,
1432
1456
  useExisting: forwardRef(() => EmailsValidatorDirective),
@@ -1434,7 +1458,7 @@ class EmailsValidatorDirective {
1434
1458
  },
1435
1459
  ], ngImport: i0 }); }
1436
1460
  }
1437
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EmailsValidatorDirective, decorators: [{
1461
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EmailsValidatorDirective, decorators: [{
1438
1462
  type: Directive,
1439
1463
  args: [{
1440
1464
  selector: "[emails]",
@@ -1465,8 +1489,8 @@ class GuidValidatorDirective {
1465
1489
  return null;
1466
1490
  return SystemUtils.parseUUID(input) ? null : { guid: "Non valido." };
1467
1491
  }
1468
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: GuidValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1469
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: GuidValidatorDirective, isStandalone: true, selector: "[guid]", providers: [
1492
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: GuidValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1493
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: GuidValidatorDirective, isStandalone: true, selector: "[guid]", providers: [
1470
1494
  {
1471
1495
  provide: NG_VALIDATORS,
1472
1496
  useExisting: forwardRef(() => GuidValidatorDirective),
@@ -1474,7 +1498,7 @@ class GuidValidatorDirective {
1474
1498
  },
1475
1499
  ], ngImport: i0 }); }
1476
1500
  }
1477
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: GuidValidatorDirective, decorators: [{
1501
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: GuidValidatorDirective, decorators: [{
1478
1502
  type: Directive,
1479
1503
  args: [{
1480
1504
  selector: "[guid]",
@@ -1506,8 +1530,8 @@ class SqlDateValidatorDirective {
1506
1530
  const d = endOfDay(SystemUtils.parseDate(input));
1507
1531
  return d.getFullYear() > 1750 ? null : { sqlDate: "Non valido." };
1508
1532
  }
1509
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SqlDateValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1510
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: SqlDateValidatorDirective, isStandalone: true, selector: "[sqlDate]", providers: [
1533
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SqlDateValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1534
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: SqlDateValidatorDirective, isStandalone: true, selector: "[sqlDate]", providers: [
1511
1535
  {
1512
1536
  provide: NG_VALIDATORS,
1513
1537
  useExisting: forwardRef(() => SqlDateValidatorDirective),
@@ -1515,7 +1539,7 @@ class SqlDateValidatorDirective {
1515
1539
  },
1516
1540
  ], ngImport: i0 }); }
1517
1541
  }
1518
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SqlDateValidatorDirective, decorators: [{
1542
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SqlDateValidatorDirective, decorators: [{
1519
1543
  type: Directive,
1520
1544
  args: [{
1521
1545
  selector: "[sqlDate]",
@@ -1548,8 +1572,8 @@ class NotFutureValidatorDirective {
1548
1572
  const d = endOfDay(SystemUtils.parseDate(input));
1549
1573
  return d <= today ? null : { notFuture: "Non valido." };
1550
1574
  }
1551
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NotFutureValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1552
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NotFutureValidatorDirective, isStandalone: true, selector: "[notFuture]", providers: [
1575
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NotFutureValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1576
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: NotFutureValidatorDirective, isStandalone: true, selector: "[notFuture]", providers: [
1553
1577
  {
1554
1578
  provide: NG_VALIDATORS,
1555
1579
  useExisting: forwardRef(() => NotFutureValidatorDirective),
@@ -1557,7 +1581,7 @@ class NotFutureValidatorDirective {
1557
1581
  },
1558
1582
  ], ngImport: i0 }); }
1559
1583
  }
1560
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NotFutureValidatorDirective, decorators: [{
1584
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NotFutureValidatorDirective, decorators: [{
1561
1585
  type: Directive,
1562
1586
  args: [{
1563
1587
  selector: "[notFuture]",
@@ -1588,8 +1612,8 @@ class UrlValidatorDirective {
1588
1612
  return null;
1589
1613
  return SystemUtils.parseUrl(input) ? null : { url: "Non valido." };
1590
1614
  }
1591
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: UrlValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1592
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: UrlValidatorDirective, isStandalone: true, selector: "[url]", providers: [
1615
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: UrlValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1616
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: UrlValidatorDirective, isStandalone: true, selector: "[url]", providers: [
1593
1617
  {
1594
1618
  provide: NG_VALIDATORS,
1595
1619
  useExisting: forwardRef(() => UrlValidatorDirective),
@@ -1597,7 +1621,7 @@ class UrlValidatorDirective {
1597
1621
  },
1598
1622
  ], ngImport: i0 }); }
1599
1623
  }
1600
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: UrlValidatorDirective, decorators: [{
1624
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: UrlValidatorDirective, decorators: [{
1601
1625
  type: Directive,
1602
1626
  args: [{
1603
1627
  selector: "[url]",
@@ -1638,8 +1662,8 @@ class FileSizeValidatorDirective {
1638
1662
  const isValid = s <= this.maxSizeMb() && s >= this.minSizeMb();
1639
1663
  return isValid ? null : { fileSize: "Non valido." };
1640
1664
  }
1641
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FileSizeValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1642
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: FileSizeValidatorDirective, isStandalone: true, selector: "[fileSize]", inputs: { maxSizeMb: { classPropertyName: "maxSizeMb", publicName: "maxSizeMb", isSignal: true, isRequired: false, transformFunction: null }, minSizeMb: { classPropertyName: "minSizeMb", publicName: "minSizeMb", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1665
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FileSizeValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1666
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: FileSizeValidatorDirective, isStandalone: true, selector: "[fileSize]", inputs: { maxSizeMb: { classPropertyName: "maxSizeMb", publicName: "maxSizeMb", isSignal: true, isRequired: false, transformFunction: null }, minSizeMb: { classPropertyName: "minSizeMb", publicName: "minSizeMb", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1643
1667
  {
1644
1668
  provide: NG_VALIDATORS,
1645
1669
  useExisting: forwardRef(() => FileSizeValidatorDirective),
@@ -1647,7 +1671,7 @@ class FileSizeValidatorDirective {
1647
1671
  },
1648
1672
  ], ngImport: i0 }); }
1649
1673
  }
1650
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FileSizeValidatorDirective, decorators: [{
1674
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FileSizeValidatorDirective, decorators: [{
1651
1675
  type: Directive,
1652
1676
  args: [{
1653
1677
  selector: "[fileSize]",
@@ -1683,8 +1707,8 @@ class MaxTermsValidatorDirective {
1683
1707
  const terms = input.match(/\S+/g)?.length ?? 0;
1684
1708
  return terms <= this.maxTerms() ? null : { maxTerms: "Non valido." };
1685
1709
  }
1686
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MaxTermsValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1687
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: MaxTermsValidatorDirective, isStandalone: true, selector: "[maxTerms]", inputs: { maxTerms: { classPropertyName: "maxTerms", publicName: "maxTerms", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1710
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: MaxTermsValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1711
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: MaxTermsValidatorDirective, isStandalone: true, selector: "[maxTerms]", inputs: { maxTerms: { classPropertyName: "maxTerms", publicName: "maxTerms", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1688
1712
  {
1689
1713
  provide: NG_VALIDATORS,
1690
1714
  useExisting: forwardRef(() => MaxTermsValidatorDirective),
@@ -1692,7 +1716,7 @@ class MaxTermsValidatorDirective {
1692
1716
  },
1693
1717
  ], ngImport: i0 }); }
1694
1718
  }
1695
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MaxTermsValidatorDirective, decorators: [{
1719
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: MaxTermsValidatorDirective, decorators: [{
1696
1720
  type: Directive,
1697
1721
  args: [{
1698
1722
  selector: "[maxTerms]",
@@ -1721,8 +1745,8 @@ class PasswordValidatorDirective {
1721
1745
  const strength = SystemUtils.calculatePasswordStrength(input);
1722
1746
  return strength.isValid ? null : { password: "Non valido." };
1723
1747
  }
1724
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PasswordValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1725
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: PasswordValidatorDirective, isStandalone: true, selector: "[password]", providers: [
1748
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: PasswordValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1749
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: PasswordValidatorDirective, isStandalone: true, selector: "[password]", providers: [
1726
1750
  {
1727
1751
  provide: NG_VALIDATORS,
1728
1752
  useExisting: forwardRef(() => PasswordValidatorDirective),
@@ -1730,7 +1754,7 @@ class PasswordValidatorDirective {
1730
1754
  },
1731
1755
  ], ngImport: i0 }); }
1732
1756
  }
1733
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PasswordValidatorDirective, decorators: [{
1757
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: PasswordValidatorDirective, decorators: [{
1734
1758
  type: Directive,
1735
1759
  args: [{
1736
1760
  selector: "[password]",
@@ -1795,8 +1819,8 @@ class TimeValidatorDirective {
1795
1819
  }
1796
1820
  return null;
1797
1821
  }
1798
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: TimeValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1799
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: TimeValidatorDirective, isStandalone: true, selector: "[time]", inputs: { slots: { classPropertyName: "slots", publicName: "slots", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1822
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: TimeValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1823
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.15", type: TimeValidatorDirective, isStandalone: true, selector: "[time]", inputs: { slots: { classPropertyName: "slots", publicName: "slots", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
1800
1824
  {
1801
1825
  provide: NG_VALIDATORS,
1802
1826
  useExisting: forwardRef(() => TimeValidatorDirective),
@@ -1804,7 +1828,7 @@ class TimeValidatorDirective {
1804
1828
  },
1805
1829
  ], ngImport: i0 }); }
1806
1830
  }
1807
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: TimeValidatorDirective, decorators: [{
1831
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: TimeValidatorDirective, decorators: [{
1808
1832
  type: Directive,
1809
1833
  args: [{
1810
1834
  selector: "[time]",
@@ -1835,8 +1859,8 @@ class NotEmptyValidatorDirective {
1835
1859
  return null;
1836
1860
  return input.trim().length > 0 ? null : { notEmpty: true };
1837
1861
  }
1838
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NotEmptyValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1839
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NotEmptyValidatorDirective, isStandalone: true, selector: "[notEmpty]", providers: [
1862
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NotEmptyValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1863
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: NotEmptyValidatorDirective, isStandalone: true, selector: "[notEmpty]", providers: [
1840
1864
  {
1841
1865
  provide: NG_VALIDATORS,
1842
1866
  useExisting: forwardRef(() => NotEmptyValidatorDirective),
@@ -1844,7 +1868,7 @@ class NotEmptyValidatorDirective {
1844
1868
  },
1845
1869
  ], ngImport: i0 }); }
1846
1870
  }
1847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NotEmptyValidatorDirective, decorators: [{
1871
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NotEmptyValidatorDirective, decorators: [{
1848
1872
  type: Directive,
1849
1873
  args: [{
1850
1874
  selector: "[notEmpty]",
@@ -1903,10 +1927,10 @@ class FormatPipe {
1903
1927
  }
1904
1928
  return undefined;
1905
1929
  }
1906
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1907
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: FormatPipe, isStandalone: true, name: "format" }); }
1930
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1931
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: FormatPipe, isStandalone: true, name: "format" }); }
1908
1932
  }
1909
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FormatPipe, decorators: [{
1933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FormatPipe, decorators: [{
1910
1934
  type: Pipe,
1911
1935
  args: [{
1912
1936
  name: 'format',
@@ -1939,10 +1963,10 @@ class ReplacePipe {
1939
1963
  const replacement = (regexValue === '\n' && !replaceValue) ? '<br>' : replaceValue;
1940
1964
  return this.sanitizer.bypassSecurityTrustHtml(value.replace(new RegExp(regexValue, 'g'), replacement));
1941
1965
  }
1942
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ReplacePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1943
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: ReplacePipe, isStandalone: true, name: "replace" }); }
1966
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ReplacePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1967
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: ReplacePipe, isStandalone: true, name: "replace" }); }
1944
1968
  }
1945
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ReplacePipe, decorators: [{
1969
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ReplacePipe, decorators: [{
1946
1970
  type: Pipe,
1947
1971
  args: [{
1948
1972
  name: 'replace',
@@ -1968,10 +1992,10 @@ class SafeHtmlPipe {
1968
1992
  transform(value) {
1969
1993
  return this.sanitizer.bypassSecurityTrustHtml(value ?? '');
1970
1994
  }
1971
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SafeHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1972
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: SafeHtmlPipe, isStandalone: true, name: "safeHtml" }); }
1995
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SafeHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1996
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: SafeHtmlPipe, isStandalone: true, name: "safeHtml" }); }
1973
1997
  }
1974
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SafeHtmlPipe, decorators: [{
1998
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SafeHtmlPipe, decorators: [{
1975
1999
  type: Pipe,
1976
2000
  args: [{
1977
2001
  name: 'safeHtml',
@@ -1997,10 +2021,10 @@ class SafeUrlPipe {
1997
2021
  transform(value) {
1998
2022
  return this.sanitizer.bypassSecurityTrustResourceUrl(value ?? '');
1999
2023
  }
2000
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SafeUrlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2001
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: SafeUrlPipe, isStandalone: true, name: "safeUrl" }); }
2024
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SafeUrlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2025
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: SafeUrlPipe, isStandalone: true, name: "safeUrl" }); }
2002
2026
  }
2003
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SafeUrlPipe, decorators: [{
2027
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SafeUrlPipe, decorators: [{
2004
2028
  type: Pipe,
2005
2029
  args: [{
2006
2030
  name: 'safeUrl',
@@ -2029,10 +2053,10 @@ class SearchCallbackPipe {
2029
2053
  return items;
2030
2054
  return items.filter(item => callback(item));
2031
2055
  }
2032
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchCallbackPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2033
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: SearchCallbackPipe, isStandalone: true, name: "callback", pure: false }); }
2056
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SearchCallbackPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2057
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: SearchCallbackPipe, isStandalone: true, name: "callback", pure: false }); }
2034
2058
  }
2035
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchCallbackPipe, decorators: [{
2059
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SearchCallbackPipe, decorators: [{
2036
2060
  type: Pipe,
2037
2061
  args: [{
2038
2062
  name: 'callback',
@@ -2080,10 +2104,10 @@ class SearchFilterPipe {
2080
2104
  metadata.count = result.length;
2081
2105
  return result;
2082
2106
  }
2083
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2084
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: SearchFilterPipe, isStandalone: true, name: "search" }); }
2107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SearchFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2108
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: SearchFilterPipe, isStandalone: true, name: "search" }); }
2085
2109
  }
2086
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchFilterPipe, decorators: [{
2110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: SearchFilterPipe, decorators: [{
2087
2111
  type: Pipe,
2088
2112
  args: [{
2089
2113
  name: 'search',
@@ -2110,10 +2134,10 @@ class FormatHtmlPipe {
2110
2134
  transform(value) {
2111
2135
  return this.sanitizer.bypassSecurityTrustHtml((value ?? '').replaceAll(/(?:\r\n|\r|\n)/g, '<br>'));
2112
2136
  }
2113
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FormatHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2114
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: FormatHtmlPipe, isStandalone: true, name: "formatHtml" }); }
2137
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FormatHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2138
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: FormatHtmlPipe, isStandalone: true, name: "formatHtml" }); }
2115
2139
  }
2116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FormatHtmlPipe, decorators: [{
2140
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FormatHtmlPipe, decorators: [{
2117
2141
  type: Pipe,
2118
2142
  args: [{
2119
2143
  name: 'formatHtml',
@@ -2462,10 +2486,10 @@ class BroadcastService {
2462
2486
  getMessage() {
2463
2487
  return this.subject.asObservable();
2464
2488
  }
2465
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: BroadcastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2466
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: BroadcastService, providedIn: 'root' }); }
2489
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: BroadcastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2490
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: BroadcastService, providedIn: 'root' }); }
2467
2491
  }
2468
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: BroadcastService, decorators: [{
2492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: BroadcastService, decorators: [{
2469
2493
  type: Injectable,
2470
2494
  args: [{
2471
2495
  providedIn: 'root'
@@ -2520,10 +2544,10 @@ class EnvironmentService {
2520
2544
  get appServiceLoginUri() { return this._effectiveServiceLoginUri(); }
2521
2545
  /** @param value - The login endpoint URI of the backend service. */
2522
2546
  set appServiceLoginUri(value) { this.appServiceLoginUriSignal.set(value); }
2523
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EnvironmentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2524
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EnvironmentService, providedIn: 'root' }); }
2547
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EnvironmentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2548
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EnvironmentService, providedIn: 'root' }); }
2525
2549
  }
2526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EnvironmentService, decorators: [{
2550
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: EnvironmentService, decorators: [{
2527
2551
  type: Injectable,
2528
2552
  args: [{
2529
2553
  providedIn: 'root'
@@ -2556,10 +2580,10 @@ class ScreenService {
2556
2580
  get isIEOrEdge() {
2557
2581
  return /msie\s|trident\/|edge\//i.test(window.navigator.userAgent);
2558
2582
  }
2559
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ScreenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2560
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ScreenService, providedIn: 'root' }); }
2583
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ScreenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2584
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ScreenService, providedIn: 'root' }); }
2561
2585
  }
2562
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ScreenService, decorators: [{
2586
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ScreenService, decorators: [{
2563
2587
  type: Injectable,
2564
2588
  args: [{
2565
2589
  providedIn: 'root'
@@ -2676,10 +2700,10 @@ class ThemeService {
2676
2700
  this.themeChanged.next(this.getTheme());
2677
2701
  this.broadcastChannel.sendMessage(this.broadcastMessage, theme);
2678
2702
  }
2679
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2680
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ThemeService, providedIn: "root" }); }
2703
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2704
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ThemeService, providedIn: "root" }); }
2681
2705
  }
2682
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ThemeService, decorators: [{
2706
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ThemeService, decorators: [{
2683
2707
  type: Injectable,
2684
2708
  args: [{
2685
2709
  providedIn: "root",
@@ -2687,8 +2711,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
2687
2711
  }], ctorParameters: () => [] });
2688
2712
 
2689
2713
  class ArsCoreModule {
2690
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ArsCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2691
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: ArsCoreModule, imports: [FileSizeValidatorDirective,
2714
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2715
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: ArsCoreModule, imports: [FileSizeValidatorDirective,
2692
2716
  ValidIfDirective,
2693
2717
  ValidatorDirective,
2694
2718
  EqualsValidatorDirective,
@@ -2731,7 +2755,7 @@ class ArsCoreModule {
2731
2755
  CopyClipboardDirective,
2732
2756
  AutoFocusDirective,
2733
2757
  MaxTermsValidatorDirective] }); }
2734
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ArsCoreModule, providers: [
2758
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsCoreModule, providers: [
2735
2759
  SearchFilterPipe,
2736
2760
  SearchCallbackPipe,
2737
2761
  SafeHtmlPipe,
@@ -2741,7 +2765,7 @@ class ArsCoreModule {
2741
2765
  FormatHtmlPipe
2742
2766
  ] }); }
2743
2767
  }
2744
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ArsCoreModule, decorators: [{
2768
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsCoreModule, decorators: [{
2745
2769
  type: NgModule,
2746
2770
  args: [{
2747
2771
  imports: [
@@ -3093,16 +3117,16 @@ class DateFnsAdapter extends DateAdapter {
3093
3117
  invalid() {
3094
3118
  return new Date(NaN);
3095
3119
  }
3096
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DateFnsAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3097
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DateFnsAdapter }); }
3120
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: DateFnsAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3121
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: DateFnsAdapter }); }
3098
3122
  }
3099
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DateFnsAdapter, decorators: [{
3123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: DateFnsAdapter, decorators: [{
3100
3124
  type: Injectable
3101
3125
  }], ctorParameters: () => [] });
3102
3126
  class ArsDateFnsModule {
3103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ArsDateFnsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3104
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: ArsDateFnsModule }); }
3105
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ArsDateFnsModule, providers: [
3127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsDateFnsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3128
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: ArsDateFnsModule }); }
3129
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsDateFnsModule, providers: [
3106
3130
  {
3107
3131
  provide: DateAdapter,
3108
3132
  useClass: DateFnsAdapter,
@@ -3111,7 +3135,7 @@ class ArsDateFnsModule {
3111
3135
  { provide: MAT_DATE_FORMATS, useValue: MAT_DATE_FNS_FORMATS }
3112
3136
  ] }); }
3113
3137
  }
3114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ArsDateFnsModule, decorators: [{
3138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsDateFnsModule, decorators: [{
3115
3139
  type: NgModule,
3116
3140
  args: [{
3117
3141
  providers: [
@@ -3144,10 +3168,10 @@ class RemoveFocusDirective {
3144
3168
  setTimeout(() => el.blur(), 0);
3145
3169
  }
3146
3170
  }
3147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: RemoveFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
3148
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: RemoveFocusDirective, isStandalone: true, selector: "[removeFocus]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
3171
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: RemoveFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
3172
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: RemoveFocusDirective, isStandalone: true, selector: "[removeFocus]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
3149
3173
  }
3150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: RemoveFocusDirective, decorators: [{
3174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: RemoveFocusDirective, decorators: [{
3151
3175
  type: Directive,
3152
3176
  args: [{
3153
3177
  selector: '[removeFocus]',
@@ -3175,10 +3199,10 @@ class FormatMarkdownPipe {
3175
3199
  transform(value) {
3176
3200
  return this.sanitizer.bypassSecurityTrustHtml(SystemUtils.markdownToHtml(value ?? ''));
3177
3201
  }
3178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FormatMarkdownPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3179
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: FormatMarkdownPipe, isStandalone: true, name: "formatMarkdown" }); }
3202
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FormatMarkdownPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3203
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: FormatMarkdownPipe, isStandalone: true, name: "formatMarkdown" }); }
3180
3204
  }
3181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FormatMarkdownPipe, decorators: [{
3205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FormatMarkdownPipe, decorators: [{
3182
3206
  type: Pipe,
3183
3207
  args: [{
3184
3208
  name: 'formatMarkdown',