ctt-babylon 0.12.0 → 0.12.3

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 (66) hide show
  1. package/esm2022/lib/components/core/babylon-ba-sli-img-txt/babylon-ba-sli-img-txt.component.mjs +20 -6
  2. package/esm2022/lib/components/core/babylon-filter-modal-v2/babylon-filter-modal-v2.component.mjs +1 -2
  3. package/esm2022/lib/components/core/babylon-floating-buttons/babylon-floating-buttons.interface.mjs +1 -1
  4. package/esm2022/lib/components/core/babylon-fo-c3-img-txt/babylon-fo-c3-img-txt.component.mjs +22 -6
  5. package/esm2022/lib/components/core/babylon-fo-sli-img/babylon-fo-sli-img.component.mjs +61 -34
  6. package/esm2022/lib/components/core/babylon-he-svg-list/babylon-he-svg-list.component.mjs +33 -3
  7. package/esm2022/lib/components/core/babylon-info-zig-zag-counter/babylon-info-zig-zag-counter.component.mjs +2 -3
  8. package/esm2022/lib/components/core/babylon-language-modal-v3/babylon-language-modal-v3.component.mjs +3 -3
  9. package/esm2022/lib/components/core/babylon-lis-c2-txt/babylon-lis-c2-txt.component.mjs +20 -6
  10. package/esm2022/lib/components/core/babylon-lis-svg-txt-cta/babylon-lis-svg-txt-cta.component.mjs +16 -5
  11. package/esm2022/lib/components/core/babylon-list-c3-img-txt/babylon-list-c3-img-txt.component.mjs +4 -3
  12. package/esm2022/lib/components/core/babylon-sli-c1-img-text/babylon-sli-c1-img-text.component.mjs +10 -3
  13. package/esm2022/lib/components/core/babylon-sli-c5-img-txt/babylon-sli-c5-img-txt.component.mjs +3 -3
  14. package/esm2022/lib/components/external/core/c4-for-c2-txt/c4-for-c2-txt.component.mjs +1 -1
  15. package/esm2022/lib/components/external/core/c4-lis-c2-img-txt-c/list-rooms.component.mjs +3 -3
  16. package/esm2022/lib/components/external/core/c4-txt-svg/c4-txt-svg.component.mjs +7 -7
  17. package/esm2022/lib/components/external/core/car-c2-txt-cta/car-c2-txt-cta.component.mjs +15 -5
  18. package/esm2022/lib/components/external/core/lis-c3-txt-img-ct/lis-c3-txt-img-ct.component.mjs +1 -1
  19. package/esm2022/lib/components/external/core/lis-c4-txt-des-cta/lis-c4-txt-des-cta.component.mjs +14 -5
  20. package/esm2022/lib/components/external/core/sli-c1-img-svg/sli-c1-img-svg.component.mjs +11 -5
  21. package/esm2022/lib/components/external/core/sli-c2-img/sli-c2-img.component.mjs +6 -8
  22. package/esm2022/lib/interfaces/babylon-button.interface.mjs +1 -1
  23. package/esm2022/lib/interfaces/babylon-destination.interface.mjs +2 -0
  24. package/esm2022/lib/interfaces/babylon-global-icon.interface.mjs +1 -1
  25. package/esm2022/lib/interfaces/babylon-header-global.interface.mjs +2 -0
  26. package/esm2022/lib/interfaces/babylon-hotel.interface.mjs +1 -1
  27. package/esm2022/lib/interfaces/babylon-icon.interface.mjs +1 -1
  28. package/esm2022/lib/interfaces/babylon-nav.interface.mjs +2 -0
  29. package/esm2022/lib/interfaces/babylon-text-info.interface.mjs +1 -1
  30. package/esm2022/lib/interfaces/index.mjs +7 -6
  31. package/esm2022/lib/pipes/babylon-clean-props.pipe.mjs +64 -0
  32. package/esm2022/lib/services/mapper/mapper.service.mjs +149 -8
  33. package/esm2022/lib/utils/clean-props.mjs +37 -0
  34. package/esm2022/lib/utils/utils.mjs +2 -2
  35. package/esm2022/public-api.mjs +2 -1
  36. package/fesm2022/ctt-babylon.mjs +456 -91
  37. package/fesm2022/ctt-babylon.mjs.map +1 -1
  38. package/lib/components/core/babylon-ba-sli-img-txt/babylon-ba-sli-img-txt.component.d.ts +9 -1
  39. package/lib/components/core/babylon-floating-buttons/babylon-floating-buttons.interface.d.ts +4 -0
  40. package/lib/components/core/babylon-fo-c3-img-txt/babylon-fo-c3-img-txt.component.d.ts +9 -1
  41. package/lib/components/core/babylon-fo-sli-img/babylon-fo-sli-img.component.d.ts +13 -6
  42. package/lib/components/core/babylon-he-svg-list/babylon-he-svg-list.component.d.ts +17 -4
  43. package/lib/components/core/babylon-info-zig-zag-counter/babylon-info-zig-zag-counter.component.d.ts +2 -2
  44. package/lib/components/core/babylon-lis-c2-txt/babylon-lis-c2-txt.component.d.ts +8 -1
  45. package/lib/components/core/babylon-lis-svg-txt-cta/babylon-lis-svg-txt-cta.component.d.ts +7 -1
  46. package/lib/components/core/babylon-sli-c1-img-text/babylon-sli-c1-img-text.component.d.ts +5 -1
  47. package/lib/components/external/core/c4-for-c2-txt/c4-for-c2-txt.component.d.ts +2 -2
  48. package/lib/components/external/core/c4-txt-svg/c4-txt-svg.component.d.ts +4 -2
  49. package/lib/components/external/core/car-c2-txt-cta/car-c2-txt-cta.component.d.ts +7 -2
  50. package/lib/components/external/core/lis-c4-txt-des-cta/lis-c4-txt-des-cta.component.d.ts +8 -2
  51. package/lib/components/external/core/sli-c1-img-svg/sli-c1-img-svg.component.d.ts +6 -2
  52. package/lib/components/external/core/sli-c2-img/sli-c2-img.component.d.ts +4 -4
  53. package/lib/interfaces/babylon-button.interface.d.ts +2 -0
  54. package/lib/interfaces/babylon-destination.interface.d.ts +10 -0
  55. package/lib/interfaces/babylon-global-icon.interface.d.ts +3 -0
  56. package/lib/interfaces/babylon-header-global.interface.d.ts +26 -0
  57. package/lib/interfaces/babylon-hotel.interface.d.ts +37 -2
  58. package/lib/interfaces/babylon-icon.interface.d.ts +2 -0
  59. package/lib/interfaces/babylon-nav.interface.d.ts +8 -0
  60. package/lib/interfaces/babylon-text-info.interface.d.ts +1 -0
  61. package/lib/interfaces/index.d.ts +6 -5
  62. package/lib/pipes/babylon-clean-props.pipe.d.ts +16 -0
  63. package/lib/services/mapper/mapper.service.d.ts +8 -3
  64. package/lib/utils/clean-props.d.ts +7 -0
  65. package/package.json +1 -1
  66. package/public-api.d.ts +1 -0
@@ -0,0 +1,64 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class BabylonCleanPropsPipe {
4
+ transform(value, options = {}) {
5
+ const opts = {
6
+ removeNull: false,
7
+ removeEmptyString: false,
8
+ pruneEmpty: true,
9
+ ...options,
10
+ };
11
+ return deepClean(value, opts);
12
+ }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BabylonCleanPropsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
14
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: BabylonCleanPropsPipe, isStandalone: true, name: "babylonCleanProps" }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BabylonCleanPropsPipe, decorators: [{
17
+ type: Pipe,
18
+ args: [{
19
+ name: 'babylonCleanProps',
20
+ standalone: true,
21
+ pure: true,
22
+ }]
23
+ }] });
24
+ function deepClean(value, opts) {
25
+ // 1) valores “vacíos”
26
+ if (value === undefined)
27
+ return undefined;
28
+ if (opts.removeNull && value === null)
29
+ return undefined;
30
+ if (opts.removeEmptyString &&
31
+ typeof value === 'string' &&
32
+ value.trim().length === 0) {
33
+ return undefined;
34
+ }
35
+ // 2) arrays
36
+ if (Array.isArray(value)) {
37
+ const cleanedArr = value
38
+ .map((v) => deepClean(v, opts))
39
+ .filter((v) => v !== undefined);
40
+ if (opts.pruneEmpty && cleanedArr.length === 0)
41
+ return undefined;
42
+ return cleanedArr;
43
+ }
44
+ // 3) objetos
45
+ if (value && typeof value === 'object') {
46
+ // Mantén Date, File, etc.
47
+ const tag = Object.prototype.toString.call(value);
48
+ const isPlainObject = tag === '[object Object]';
49
+ if (!isPlainObject)
50
+ return value;
51
+ const out = {};
52
+ for (const [k, v] of Object.entries(value)) {
53
+ const cleaned = deepClean(v, opts);
54
+ if (cleaned !== undefined)
55
+ out[k] = cleaned;
56
+ }
57
+ if (opts.pruneEmpty && Object.keys(out).length === 0)
58
+ return undefined;
59
+ return out;
60
+ }
61
+ // 4) primitivos
62
+ return value;
63
+ }
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1jbGVhbi1wcm9wcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFieWxvbi9zcmMvbGliL3BpcGVzL2JhYnlsb24tY2xlYW4tcHJvcHMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFnQnBELE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsU0FBUyxDQUFJLEtBQVEsRUFBRSxVQUF3QixFQUFFO1FBQzdDLE1BQU0sSUFBSSxHQUEyQjtZQUNqQyxVQUFVLEVBQUUsS0FBSztZQUNqQixpQkFBaUIsRUFBRSxLQUFLO1lBQ3hCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLEdBQUcsT0FBTztTQUNiLENBQUM7UUFFRixPQUFPLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFrQixDQUFDO0lBQ25ELENBQUM7K0dBVlEscUJBQXFCOzZHQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBTGpDLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRSxJQUFJO2lCQUNiOztBQWNELFNBQVMsU0FBUyxDQUFDLEtBQVUsRUFBRSxJQUE0QjtJQUN2RCxzQkFBc0I7SUFDdEIsSUFBSSxLQUFLLEtBQUssU0FBUztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQzFDLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxLQUFLLEtBQUssSUFBSTtRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQ3hELElBQ0ksSUFBSSxDQUFDLGlCQUFpQjtRQUN0QixPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3pCLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUMzQjtRQUNFLE9BQU8sU0FBUyxDQUFDO0tBQ3BCO0lBRUQsWUFBWTtJQUNaLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUN0QixNQUFNLFVBQVUsR0FBRyxLQUFLO2FBQ25CLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUM5QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQztRQUVwQyxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDakUsT0FBTyxVQUFVLENBQUM7S0FDckI7SUFFRCxhQUFhO0lBQ2IsSUFBSSxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1FBQ3BDLDBCQUEwQjtRQUMxQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEQsTUFBTSxhQUFhLEdBQUcsR0FBRyxLQUFLLGlCQUFpQixDQUFDO1FBQ2hELElBQUksQ0FBQyxhQUFhO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFakMsTUFBTSxHQUFHLEdBQXdCLEVBQUUsQ0FBQztRQUNwQyxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ25DLElBQUksT0FBTyxLQUFLLFNBQVM7Z0JBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQztTQUMvQztRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDdkUsT0FBTyxHQUFHLENBQUM7S0FDZDtJQUVELGdCQUFnQjtJQUNoQixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG50eXBlIENsZWFuT3B0aW9ucyA9IHtcbiAgICAvKiogU2kgdHJ1ZTogZWxpbWluYSB0YW1iacOpbiBudWxsICovXG4gICAgcmVtb3ZlTnVsbD86IGJvb2xlYW47XG4gICAgLyoqIFNpIHRydWU6IGVsaW1pbmEgc3RyaW5ncyB2YWPDrW9zL3doaXRlc3BhY2UgKi9cbiAgICByZW1vdmVFbXB0eVN0cmluZz86IGJvb2xlYW47XG4gICAgLyoqIFNpIHRydWU6IHNpIHVuIG9iamV0by9hcnJheSBxdWVkYSB2YWPDrW8gPT4gZGV2dWVsdmUgdW5kZWZpbmVkICovXG4gICAgcHJ1bmVFbXB0eT86IGJvb2xlYW47XG59O1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ2JhYnlsb25DbGVhblByb3BzJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHB1cmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEJhYnlsb25DbGVhblByb3BzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybTxUPih2YWx1ZTogVCwgb3B0aW9uczogQ2xlYW5PcHRpb25zID0ge30pOiBUIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3Qgb3B0czogUmVxdWlyZWQ8Q2xlYW5PcHRpb25zPiA9IHtcbiAgICAgICAgICAgIHJlbW92ZU51bGw6IGZhbHNlLFxuICAgICAgICAgICAgcmVtb3ZlRW1wdHlTdHJpbmc6IGZhbHNlLFxuICAgICAgICAgICAgcHJ1bmVFbXB0eTogdHJ1ZSxcbiAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIGRlZXBDbGVhbih2YWx1ZSwgb3B0cykgYXMgVCB8IHVuZGVmaW5lZDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGRlZXBDbGVhbih2YWx1ZTogYW55LCBvcHRzOiBSZXF1aXJlZDxDbGVhbk9wdGlvbnM+KTogYW55IHtcbiAgICAvLyAxKSB2YWxvcmVzIOKAnHZhY8Otb3PigJ1cbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBpZiAob3B0cy5yZW1vdmVOdWxsICYmIHZhbHVlID09PSBudWxsKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGlmIChcbiAgICAgICAgb3B0cy5yZW1vdmVFbXB0eVN0cmluZyAmJlxuICAgICAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmXG4gICAgICAgIHZhbHVlLnRyaW0oKS5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICAvLyAyKSBhcnJheXNcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgY29uc3QgY2xlYW5lZEFyciA9IHZhbHVlXG4gICAgICAgICAgICAubWFwKCh2KSA9PiBkZWVwQ2xlYW4odiwgb3B0cykpXG4gICAgICAgICAgICAuZmlsdGVyKCh2KSA9PiB2ICE9PSB1bmRlZmluZWQpO1xuXG4gICAgICAgIGlmIChvcHRzLnBydW5lRW1wdHkgJiYgY2xlYW5lZEFyci5sZW5ndGggPT09IDApIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiBjbGVhbmVkQXJyO1xuICAgIH1cblxuICAgIC8vIDMpIG9iamV0b3NcbiAgICBpZiAodmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAvLyBNYW50w6luIERhdGUsIEZpbGUsIGV0Yy5cbiAgICAgICAgY29uc3QgdGFnID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKTtcbiAgICAgICAgY29uc3QgaXNQbGFpbk9iamVjdCA9IHRhZyA9PT0gJ1tvYmplY3QgT2JqZWN0XSc7XG4gICAgICAgIGlmICghaXNQbGFpbk9iamVjdCkgcmV0dXJuIHZhbHVlO1xuXG4gICAgICAgIGNvbnN0IG91dDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgICAgICBmb3IgKGNvbnN0IFtrLCB2XSBvZiBPYmplY3QuZW50cmllcyh2YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGNsZWFuZWQgPSBkZWVwQ2xlYW4odiwgb3B0cyk7XG4gICAgICAgICAgICBpZiAoY2xlYW5lZCAhPT0gdW5kZWZpbmVkKSBvdXRba10gPSBjbGVhbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdHMucHJ1bmVFbXB0eSAmJiBPYmplY3Qua2V5cyhvdXQpLmxlbmd0aCA9PT0gMCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgcmV0dXJuIG91dDtcbiAgICB9XG5cbiAgICAvLyA0KSBwcmltaXRpdm9zXG4gICAgcmV0dXJuIHZhbHVlO1xufVxuIl19