@candy-kingdom/bonnie 0.1.1 → 0.1.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 (88) hide show
  1. package/esm2022/index.mjs +2 -2
  2. package/esm2022/lib/bonnie.module.mjs +102 -0
  3. package/esm2022/lib/core/MediaObjectFit.mjs +1 -1
  4. package/esm2022/lib/core/MediaStatus.mjs +1 -1
  5. package/esm2022/lib/core/device.service.base.mjs +1 -1
  6. package/esm2022/lib/core/device.service.mjs +1 -1
  7. package/esm2022/lib/core/emptyBone.mjs +9 -0
  8. package/esm2022/lib/core/emptyImage.mjs +8 -0
  9. package/esm2022/lib/core/emptyLocalizedString.mjs +4 -0
  10. package/esm2022/lib/core/emptyVideo.mjs +8 -0
  11. package/esm2022/lib/core/encode-uri.pipe.mjs +14 -0
  12. package/esm2022/lib/core/index.mjs +7 -1
  13. package/esm2022/lib/core/intersection.component.mjs +1 -1
  14. package/esm2022/lib/core/pix-media-union.mjs +2 -0
  15. package/esm2022/lib/core/src.directive.mjs +1 -1
  16. package/esm2022/lib/core/unsubscribe.service.mjs +1 -1
  17. package/esm2022/lib/core/utils.mjs +1 -1
  18. package/esm2022/lib/generated/bone.mjs +1 -1
  19. package/esm2022/lib/generated/file-meta.mjs +1 -1
  20. package/esm2022/lib/generated/file-src-base.mjs +1 -1
  21. package/esm2022/lib/generated/file-src.mjs +1 -1
  22. package/esm2022/lib/generated/i-equatable.mjs +1 -1
  23. package/esm2022/lib/generated/i-have-data-route-with-data.mjs +1 -1
  24. package/esm2022/lib/generated/i-have-data-route.mjs +1 -1
  25. package/esm2022/lib/generated/i-have-skeleton.mjs +1 -1
  26. package/esm2022/lib/generated/i-page.mjs +1 -1
  27. package/esm2022/lib/generated/image-meta.mjs +1 -1
  28. package/esm2022/lib/generated/image-source.mjs +1 -1
  29. package/esm2022/lib/generated/image.mjs +1 -1
  30. package/esm2022/lib/generated/index.mjs +1 -1
  31. package/esm2022/lib/generated/localized-object.mjs +1 -1
  32. package/esm2022/lib/generated/localized-string.mjs +1 -1
  33. package/esm2022/lib/generated/media-source-base.mjs +1 -1
  34. package/esm2022/lib/generated/media-source.mjs +1 -1
  35. package/esm2022/lib/generated/open-graph-data.mjs +1 -1
  36. package/esm2022/lib/generated/page-base.mjs +1 -1
  37. package/esm2022/lib/generated/page-data.mjs +1 -1
  38. package/esm2022/lib/generated/page.mjs +1 -1
  39. package/esm2022/lib/generated/pix-media.mjs +1 -1
  40. package/esm2022/lib/generated/pix-meta.mjs +1 -1
  41. package/esm2022/lib/generated/publish-status.mjs +1 -1
  42. package/esm2022/lib/generated/sizes-item.mjs +1 -1
  43. package/esm2022/lib/generated/sizes-width-unit.mjs +1 -1
  44. package/esm2022/lib/generated/video-meta.mjs +1 -1
  45. package/esm2022/lib/generated/video-source.mjs +1 -1
  46. package/esm2022/lib/generated/video.mjs +1 -1
  47. package/esm2022/lib/generated/view.mjs +1 -1
  48. package/esm2022/lib/localization/LocalizeServiceBase.mjs +1 -1
  49. package/esm2022/lib/localization/index.mjs +1 -1
  50. package/esm2022/lib/localization/localize.pipe.mjs +1 -1
  51. package/esm2022/lib/marcy-image/IHtmlPictureSource.mjs +1 -1
  52. package/esm2022/lib/marcy-image/getDefaultSrc.mjs +1 -1
  53. package/esm2022/lib/marcy-image/imgsrc.directive.mjs +1 -1
  54. package/esm2022/lib/marcy-image/index.mjs +1 -1
  55. package/esm2022/lib/marcy-image/marcy-image.component.mjs +3 -3
  56. package/esm2022/lib/marcy-image/toHtmlSources.mjs +1 -1
  57. package/esm2022/lib/marcy-media/index.mjs +1 -1
  58. package/esm2022/lib/marcy-media/marcy-media.component.mjs +3 -3
  59. package/esm2022/lib/marcy-video/index.mjs +1 -1
  60. package/esm2022/lib/marcy-video/marcy-video.component.mjs +3 -3
  61. package/esm2022/lib/marcy-video/vidsrc.directive.mjs +1 -1
  62. package/esm2022/lib/skeleton/BoneMap.mjs +10 -0
  63. package/esm2022/lib/skeleton/IBoneComponent.mjs +1 -1
  64. package/esm2022/lib/skeleton/bone.directive.mjs +1 -1
  65. package/esm2022/lib/skeleton/index.mjs +2 -1
  66. package/esm2022/lib/skeleton/skeleton-anchor.directive.mjs +1 -1
  67. package/esm2022/lib/skeleton/skeleton.component.mjs +3 -3
  68. package/esm2022/lib/skeleton/unknown-bone.component.mjs +3 -3
  69. package/fesm2022/candy-kingdom-bonnie.mjs +73 -19
  70. package/fesm2022/candy-kingdom-bonnie.mjs.map +1 -1
  71. package/index.d.ts +1 -1
  72. package/lib/bonnie.module.d.ts +20 -0
  73. package/lib/core/emptyBone.d.ts +2 -0
  74. package/lib/core/emptyImage.d.ts +2 -0
  75. package/lib/core/emptyLocalizedString.d.ts +2 -0
  76. package/lib/core/emptyVideo.d.ts +2 -0
  77. package/lib/core/encode-uri.pipe.d.ts +7 -0
  78. package/lib/core/index.d.ts +6 -0
  79. package/lib/core/pix-media-union.d.ts +2 -0
  80. package/lib/generated/image.d.ts +1 -0
  81. package/lib/generated/open-graph-data.d.ts +0 -1
  82. package/lib/generated/video.d.ts +1 -0
  83. package/lib/generated/view.d.ts +1 -0
  84. package/lib/skeleton/BoneMap.d.ts +5 -0
  85. package/lib/skeleton/index.d.ts +1 -0
  86. package/package.json +1 -1
  87. package/esm2022/lib/marcy-elements.module.mjs +0 -98
  88. package/lib/marcy-elements.module.d.ts +0 -19
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
38
38
  standalone: true
39
39
  }]
40
40
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.UnsubscriberService }, { type: i2.LocalizeServiceBase }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9uZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Jvbm5pZS9zcmMvbGliL3NrZWxldG9uL2JvbmUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFNMUUsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFBNkIsRUFBcUIsRUFDL0IsRUFBdUIsRUFDdkIsbUJBQXdDO1FBRjlCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQy9CLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQ3ZCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDekQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPO2FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2FBQzlCLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxvREFBb0Q7WUFDcEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFRCxJQUFXLElBQUksQ0FBQyxLQUFRO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJO1lBQ2pELE1BQU0sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztRQUU5RixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs4R0E3QlUsYUFBYTtrR0FBYixhQUFhOzsyRkFBYixhQUFhO2tCQUp6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvbmUgfSBmcm9tICcuLi9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgVW5zdWJzY3JpYmVyU2VydmljZSB9IGZyb20gJy4uL2NvcmUvdW5zdWJzY3JpYmUuc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhbGl6ZVNlcnZpY2VCYXNlIH0gZnJvbSAnLi4vbG9jYWxpemF0aW9uL0xvY2FsaXplU2VydmljZUJhc2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYm9uQm9uZURpcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJvbmVEaXJlY3RpdmU8VCBleHRlbmRzIEJvbmUgPSBCb25lPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgX2JvbmU/OiBUO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3U6IFVuc3Vic2NyaWJlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25TZXJ2aWNlOiBMb2NhbGl6ZVNlcnZpY2VCYXNlKSB7XG4gICAgdGhpcy5jZC5kZXRhY2goKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UubG9jYWxlJFxuICAgICAgLnBpcGUodGhpcy5fdS50YWtlVW50aWxEZXN0cm95KVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vIG5lZWQgdG8gZGV0ZWN0IGNoYW5nZXMgaW4gb3VyIGRldGFjaGVkIGNvbXBvbmVudHNcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KVxuICB9XG5cbiAgcHVibGljIHNldCBib25lKHZhbHVlOiBUKSB7XG4gICAgdGhpcy5fYm9uZSA9IHZhbHVlO1xuXG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGJvbmUoKTogVCB7XG4gICAgaWYgKHRoaXMuX2JvbmUgPT09IHVuZGVmaW5lZCB8fCB0aGlzLl9ib25lID09PSBudWxsKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvcGVydHkgXCJib25lXCIgc2hvdWxkIGJlIHNldCBhdCBsZWFzdCBvbmNlLiBGb3IgZXhhbXBsZSBpbiBza2VsZXRvbicpO1xuXG4gICAgcmV0dXJuIHRoaXMuX2JvbmU7XG4gIH1cbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9uZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Jvbm5pZS9zcmMvbGliL3NrZWxldG9uL2JvbmUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFNMUUsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFBNkIsRUFBcUIsRUFDL0IsRUFBdUIsRUFDdkIsbUJBQXdDO1FBRjlCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQy9CLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQ3ZCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDekQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPO2FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2FBQzlCLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxvREFBb0Q7WUFDcEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFRCxJQUFXLElBQUksQ0FBQyxLQUFRO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJO1lBQ2pELE1BQU0sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztRQUU5RixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs4R0E3QlUsYUFBYTtrR0FBYixhQUFhOzsyRkFBYixhQUFhO2tCQUp6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQm9uZSB9IGZyb20gJy4uL2dlbmVyYXRlZCc7XHJcbmltcG9ydCB7IFVuc3Vic2NyaWJlclNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3Vuc3Vic2NyaWJlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZVNlcnZpY2VCYXNlIH0gZnJvbSAnLi4vbG9jYWxpemF0aW9uL0xvY2FsaXplU2VydmljZUJhc2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYm9uQm9uZURpcl0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEJvbmVEaXJlY3RpdmU8VCBleHRlbmRzIEJvbmUgPSBCb25lPiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHJpdmF0ZSBfYm9uZT86IFQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBfdTogVW5zdWJzY3JpYmVyU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbG9jYWxpemF0aW9uU2VydmljZTogTG9jYWxpemVTZXJ2aWNlQmFzZSkge1xyXG4gICAgdGhpcy5jZC5kZXRhY2goKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5sb2NhbGUkXHJcbiAgICAgIC5waXBlKHRoaXMuX3UudGFrZVVudGlsRGVzdHJveSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgLy8gbmVlZCB0byBkZXRlY3QgY2hhbmdlcyBpbiBvdXIgZGV0YWNoZWQgY29tcG9uZW50c1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBib25lKHZhbHVlOiBUKSB7XHJcbiAgICB0aGlzLl9ib25lID0gdmFsdWU7XHJcblxyXG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGJvbmUoKTogVCB7XHJcbiAgICBpZiAodGhpcy5fYm9uZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuX2JvbmUgPT09IG51bGwpXHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIHByb3BlcnR5IFwiYm9uZVwiIHNob3VsZCBiZSBzZXQgYXQgbGVhc3Qgb25jZS4gRm9yIGV4YW1wbGUgaW4gc2tlbGV0b24nKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5fYm9uZTtcclxuICB9XHJcbn1cclxuIl19
@@ -3,4 +3,5 @@ export * from './IBoneComponent';
3
3
  export * from './skeleton-anchor.directive';
4
4
  export * from './skeleton.component';
5
5
  export * from './unknown-bone.component';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Jvbm5pZS9zcmMvbGliL3NrZWxldG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYm9uZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9JQm9uZUNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NrZWxldG9uLWFuY2hvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9za2VsZXRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91bmtub3duLWJvbmUuY29tcG9uZW50JztcbiJdfQ==
6
+ export * from './BoneMap';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Jvbm5pZS9zcmMvbGliL3NrZWxldG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYm9uZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0lCb25lQ29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9za2VsZXRvbi1hbmNob3IuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9za2VsZXRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Vua25vd24tYm9uZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL0JvbmVNYXAnO1xyXG5cclxuXHJcblxyXG4iXX0=
@@ -14,4 +14,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
14
14
  standalone: true
15
15
  }]
16
16
  }], ctorParameters: () => [{ type: i0.ViewContainerRef }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tlbGV0b24tYW5jaG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYm9ubmllL3NyYy9saWIvc2tlbGV0b24vc2tlbGV0b24tYW5jaG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU01RCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFlBQW1CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUksQ0FBQzs4R0FEL0MsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tib25Ta2VsZXRvbkFuY2hvcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNrZWxldG9uQW5jaG9yRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpIHsgfVxufVxuIl19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tlbGV0b24tYW5jaG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYm9ubmllL3NyYy9saWIvc2tlbGV0b24vc2tlbGV0b24tYW5jaG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU01RCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFlBQW1CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUksQ0FBQzs4R0FEL0MsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tib25Ta2VsZXRvbkFuY2hvcl0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFNrZWxldG9uQW5jaG9yRGlyZWN0aXZlIHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZikgeyB9XHJcbn1cclxuIl19
@@ -36,11 +36,11 @@ export class SkeletonComponent {
36
36
  }
37
37
  }
38
38
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SkeletonComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: SkeletonComponent, selector: "bon-skeleton", inputs: { map: "map", bones: "bones" }, viewQueries: [{ propertyName: "skeletonAnchor", first: true, predicate: SkeletonAnchorDirective, descendants: true, static: true }], ngImport: i0, template: "<ng-template bonSkeletonAnchor></ng-template>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.SkeletonAnchorDirective, selector: "[bonSkeletonAnchor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
39
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: SkeletonComponent, selector: "bon-skeleton", inputs: { map: "map", bones: "bones" }, viewQueries: [{ propertyName: "skeletonAnchor", first: true, predicate: SkeletonAnchorDirective, descendants: true, static: true }], ngImport: i0, template: "<ng-template bonSkeletonAnchor></ng-template>\r\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.SkeletonAnchorDirective, selector: "[bonSkeletonAnchor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
40
40
  }
41
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SkeletonComponent, decorators: [{
42
42
  type: Component,
43
- args: [{ selector: 'bon-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template bonSkeletonAnchor></ng-template>\n", styles: [":host{display:block}\n"] }]
43
+ args: [{ selector: 'bon-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template bonSkeletonAnchor></ng-template>\r\n", styles: [":host{display:block}\n"] }]
44
44
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { skeletonAnchor: [{
45
45
  type: ViewChild,
46
46
  args: [SkeletonAnchorDirective, { static: true }]
@@ -50,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
50
50
  }], bones: [{
51
51
  type: Input
52
52
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tlbGV0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ib25uaWUvc3JjL2xpYi9za2VsZXRvbi9za2VsZXRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Jvbm5pZS9zcmMvbGliL3NrZWxldG9uL3NrZWxldG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFnQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQVFoRSxNQUFNLE9BQU8saUJBQWlCO0lBVzVCLFlBQW9CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBSnhCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFFN0IsZUFBVSxHQUFHLEtBQUssQ0FBQztJQUczQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNXLEtBQUssQ0FBQyxRQUE0QjtRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sc0JBQXNCO1FBQzVCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLO1lBQzNCLE9BQU87UUFFVCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUM7UUFDOUQsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLElBQUk7WUFDN0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBRTFELEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUM5QixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFNUMsSUFBSSxhQUFhLEtBQUssU0FBUyxJQUFJLGFBQWEsS0FBSyxJQUFJLEVBQUU7Z0JBQ3pELE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDO2dCQUN4RCxhQUFhLEdBQUcsb0JBQW9CLENBQUM7YUFDdEM7WUFFRCxNQUFNLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUV6RSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7U0FDMUM7SUFDSCxDQUFDOzhHQWpEVSxpQkFBaUI7a0dBQWpCLGlCQUFpQiw0SUFDakIsdUJBQXVCLDhEQ2JwQyxpREFDQTs7MkZEV2EsaUJBQWlCO2tCQU43QixTQUFTOytCQUNFLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTTtzRkFJeEMsY0FBYztzQkFEcEIsU0FBUzt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTdDLEdBQUc7c0JBRFQsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBZ0JkLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBUeXBlLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNrZWxldG9uQW5jaG9yRGlyZWN0aXZlIH0gZnJvbSAnLi9za2VsZXRvbi1hbmNob3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IElCb25lQ29tcG9uZW50IH0gZnJvbSBcIi4vSUJvbmVDb21wb25lbnRcIjtcbmltcG9ydCB7IEJvbmUgfSBmcm9tICcuLi9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgVW5rbm93bkJvbmVDb21wb25lbnQgfSBmcm9tICcuL3Vua25vd24tYm9uZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdib24tc2tlbGV0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2tlbGV0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9za2VsZXRvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTa2VsZXRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoU2tlbGV0b25BbmNob3JEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBza2VsZXRvbkFuY2hvciE6IFNrZWxldG9uQW5jaG9yRGlyZWN0aXZlO1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBtYXA/OiBNYXA8c3RyaW5nLCBUeXBlPElCb25lQ29tcG9uZW50Pj47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYm9uZXM6IEJvbmVbXSA9IFtdO1xuXG4gIHByaXZhdGUgaW5pYWlsaXplZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaWFpbGl6ZWQgPSB0cnVlO1xuICAgIHRoaXMuZmlsbENvbXBvbmVudEZyb21Cb25lcygpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBib25lcyhuZXdWYWx1ZTogQm9uZVtdIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fYm9uZXMuc3BsaWNlKDAsIHRoaXMuX2JvbmVzLmxlbmd0aCk7XG4gICAgdGhpcy5fYm9uZXMucHVzaCguLi5uZXdWYWx1ZSA/PyBbXSk7XG5cbiAgICB0aGlzLmZpbGxDb21wb25lbnRGcm9tQm9uZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsbENvbXBvbmVudEZyb21Cb25lcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbmlhaWxpemVkID09PSBmYWxzZSlcbiAgICAgIHJldHVybjtcblxuICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWYgPSB0aGlzLnNrZWxldG9uQW5jaG9yLnZpZXdDb250YWluZXJSZWY7XG4gICAgdmlld0NvbnRhaW5lclJlZi5jbGVhcigpO1xuXG4gICAgaWYgKHRoaXMubWFwID09PSB1bmRlZmluZWQgfHwgdGhpcy5tYXAgPT09IG51bGwpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCB0eXBlIG1hcCB3aXRoIGlucHV0OiBbbWFwXT1cIi4uLlwiJyk7XG5cbiAgICBmb3IgKGNvbnN0IGJvbmUgb2YgdGhpcy5fYm9uZXMpIHtcbiAgICAgIGxldCBjb21wb25lbnRUeXBlID0gdGhpcy5tYXAuZ2V0KGJvbmUudHlwZSk7XG5cbiAgICAgIGlmIChjb21wb25lbnRUeXBlID09PSB1bmRlZmluZWQgfHwgY29tcG9uZW50VHlwZSA9PT0gbnVsbCkge1xuICAgICAgICBjb25zb2xlLndhcm4oYE1hcHBpbmcgdHlwZSBmb3IgJHtib25lLnR5cGV9IG5vdCBmb3VuZGApO1xuICAgICAgICBjb21wb25lbnRUeXBlID0gVW5rbm93bkJvbmVDb21wb25lbnQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGJvbmVDb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRUeXBlKTtcblxuICAgICAgYm9uZUNvbXBvbmVudFJlZi5pbnN0YW5jZS5iZC5ib25lID0gYm9uZTtcbiAgICB9XG4gIH1cblxufVxuIiwiPG5nLXRlbXBsYXRlIGJvblNrZWxldG9uQW5jaG9yPjwvbmctdGVtcGxhdGU+XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tlbGV0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ib25uaWUvc3JjL2xpYi9za2VsZXRvbi9za2VsZXRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Jvbm5pZS9zcmMvbGliL3NrZWxldG9uL3NrZWxldG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFnQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQVFoRSxNQUFNLE9BQU8saUJBQWlCO0lBVzVCLFlBQW9CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBSnhCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFFN0IsZUFBVSxHQUFHLEtBQUssQ0FBQztJQUczQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNXLEtBQUssQ0FBQyxRQUE0QjtRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sc0JBQXNCO1FBQzVCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLO1lBQzNCLE9BQU87UUFFVCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUM7UUFDOUQsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLElBQUk7WUFDN0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBRTFELEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUM5QixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFNUMsSUFBSSxhQUFhLEtBQUssU0FBUyxJQUFJLGFBQWEsS0FBSyxJQUFJLEVBQUU7Z0JBQ3pELE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDO2dCQUN4RCxhQUFhLEdBQUcsb0JBQW9CLENBQUM7YUFDdEM7WUFFRCxNQUFNLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUV6RSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7U0FDMUM7SUFDSCxDQUFDOzhHQWpEVSxpQkFBaUI7a0dBQWpCLGlCQUFpQiw0SUFDakIsdUJBQXVCLDhEQ2JwQyxtREFDQTs7MkZEV2EsaUJBQWlCO2tCQU43QixTQUFTOytCQUNFLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTTtzRkFJeEMsY0FBYztzQkFEcEIsU0FBUzt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTdDLEdBQUc7c0JBRFQsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBZ0JkLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBUeXBlLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2tlbGV0b25BbmNob3JEaXJlY3RpdmUgfSBmcm9tICcuL3NrZWxldG9uLWFuY2hvci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBJQm9uZUNvbXBvbmVudCB9IGZyb20gXCIuL0lCb25lQ29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEJvbmUgfSBmcm9tICcuLi9nZW5lcmF0ZWQnO1xyXG5pbXBvcnQgeyBVbmtub3duQm9uZUNvbXBvbmVudCB9IGZyb20gJy4vdW5rbm93bi1ib25lLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Jvbi1za2VsZXRvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NrZWxldG9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9za2VsZXRvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTa2VsZXRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQFZpZXdDaGlsZChTa2VsZXRvbkFuY2hvckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcclxuICBwdWJsaWMgc2tlbGV0b25BbmNob3IhOiBTa2VsZXRvbkFuY2hvckRpcmVjdGl2ZTtcclxuXHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICBwdWJsaWMgbWFwPzogTWFwPHN0cmluZywgVHlwZTxJQm9uZUNvbXBvbmVudD4+O1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9ib25lczogQm9uZVtdID0gW107XHJcblxyXG4gIHByaXZhdGUgaW5pYWlsaXplZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaWFpbGl6ZWQgPSB0cnVlO1xyXG4gICAgdGhpcy5maWxsQ29tcG9uZW50RnJvbUJvbmVzKCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYm9uZXMobmV3VmFsdWU6IEJvbmVbXSB8IHVuZGVmaW5lZCkge1xyXG4gICAgdGhpcy5fYm9uZXMuc3BsaWNlKDAsIHRoaXMuX2JvbmVzLmxlbmd0aCk7XHJcbiAgICB0aGlzLl9ib25lcy5wdXNoKC4uLm5ld1ZhbHVlID8/IFtdKTtcclxuXHJcbiAgICB0aGlzLmZpbGxDb21wb25lbnRGcm9tQm9uZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmlsbENvbXBvbmVudEZyb21Cb25lcygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmluaWFpbGl6ZWQgPT09IGZhbHNlKVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgY29uc3Qgdmlld0NvbnRhaW5lclJlZiA9IHRoaXMuc2tlbGV0b25BbmNob3Iudmlld0NvbnRhaW5lclJlZjtcclxuICAgIHZpZXdDb250YWluZXJSZWYuY2xlYXIoKTtcclxuXHJcbiAgICBpZiAodGhpcy5tYXAgPT09IHVuZGVmaW5lZCB8fCB0aGlzLm1hcCA9PT0gbnVsbClcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdhZGQgdHlwZSBtYXAgd2l0aCBpbnB1dDogW21hcF09XCIuLi5cIicpO1xyXG5cclxuICAgIGZvciAoY29uc3QgYm9uZSBvZiB0aGlzLl9ib25lcykge1xyXG4gICAgICBsZXQgY29tcG9uZW50VHlwZSA9IHRoaXMubWFwLmdldChib25lLnR5cGUpO1xyXG5cclxuICAgICAgaWYgKGNvbXBvbmVudFR5cGUgPT09IHVuZGVmaW5lZCB8fCBjb21wb25lbnRUeXBlID09PSBudWxsKSB7XHJcbiAgICAgICAgY29uc29sZS53YXJuKGBNYXBwaW5nIHR5cGUgZm9yICR7Ym9uZS50eXBlfSBub3QgZm91bmRgKTtcclxuICAgICAgICBjb21wb25lbnRUeXBlID0gVW5rbm93bkJvbmVDb21wb25lbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGJvbmVDb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRUeXBlKTtcclxuXHJcbiAgICAgIGJvbmVDb21wb25lbnRSZWYuaW5zdGFuY2UuYmQuYm9uZSA9IGJvbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgYm9uU2tlbGV0b25BbmNob3I+PC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -14,12 +14,12 @@ export class UnknownBoneComponent {
14
14
  this.cd.detectChanges();
15
15
  }
16
16
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: UnknownBoneComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.BoneDirective }], target: i0.ɵɵFactoryTarget.Component }); }
17
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: UnknownBoneComponent, selector: "bon-unknown-bone", hostDirectives: [{ directive: i1.BoneDirective }], ngImport: i0, template: `<h2>unknown bone {{bd.bone.type}}</h2>
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: UnknownBoneComponent, selector: "bon-unknown-bone", hostDirectives: [{ directive: i1.BoneDirective }], ngImport: i0, template: `<h2>unknown bone {{bd.bone.type}}</h2>
18
18
  <div>{{bd.bone | json}}</div>`, isInline: true, styles: [":host{display:block;border:2px solid red;box-sizing:border-box}\n"], dependencies: [{ kind: "pipe", type: i2.JsonPipe, name: "json" }] }); }
19
19
  }
20
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: UnknownBoneComponent, decorators: [{
21
21
  type: Component,
22
- args: [{ selector: 'bon-unknown-bone', hostDirectives: [BoneDirective], template: `<h2>unknown bone {{bd.bone.type}}</h2>
22
+ args: [{ selector: 'bon-unknown-bone', hostDirectives: [BoneDirective], template: `<h2>unknown bone {{bd.bone.type}}</h2>
23
23
  <div>{{bd.bone | json}}</div>`, styles: [":host{display:block;border:2px solid red;box-sizing:border-box}\n"] }]
24
24
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.BoneDirective }] });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5rbm93bi1ib25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYm9ubmllL3NyYy9saWIvc2tlbGV0b24vdW5rbm93bi1ib25lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQWVqRCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFlBQTZCLEVBQXFCLEVBQWtCLEVBQXVCO1FBQTlELE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQWtCLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQ3pGLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMxQixDQUFDOzhHQVJVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLDJHQVZyQjsyQ0FDK0I7OzJGQVM5QixvQkFBb0I7a0JBYmhDLFNBQVM7K0JBQ0Usa0JBQWtCLGtCQUNaLENBQUMsYUFBYSxDQUFDLFlBQ3JCOzJDQUMrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElCb25lQ29tcG9uZW50IH0gZnJvbSBcIi4vSUJvbmVDb21wb25lbnRcIjtcbmltcG9ydCB7IEJvbmUgfSBmcm9tICcuLi9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgQm9uZURpcmVjdGl2ZSB9IGZyb20gJy4vYm9uZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdib24tdW5rbm93bi1ib25lJyxcbiAgaG9zdERpcmVjdGl2ZXM6IFtCb25lRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGU6IGA8aDI+dW5rbm93biBib25lIHt7YmQuYm9uZS50eXBlfX08L2gyPlxuICAgICAgICAgICAgIDxkaXY+e3tiZC5ib25lIHwganNvbn19PC9kaXY+YCxcbiAgc3R5bGVzOiBbXG4gICAgYDpob3N0e1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgcmVkO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1gXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVW5rbm93bkJvbmVDb21wb25lbnQgaW1wbGVtZW50cyBJQm9uZUNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLCBwdWJsaWMgcmVhZG9ubHkgYmQ6IEJvbmVEaXJlY3RpdmU8Qm9uZT4pIHtcbiAgICBjb25zb2xlLmxvZygnQm9uZURpcmVjdGl2ZScsIGJkKTtcbiAgICBjZC5kZXRhY2goKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5rbm93bi1ib25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYm9ubmllL3NyYy9saWIvc2tlbGV0b24vdW5rbm93bi1ib25lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQWVqRCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFlBQTZCLEVBQXFCLEVBQWtCLEVBQXVCO1FBQTlELE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQWtCLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQ3pGLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMxQixDQUFDOzhHQVJVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLDJHQVZyQjsyQ0FDK0I7OzJGQVM5QixvQkFBb0I7a0JBYmhDLFNBQVM7K0JBQ0Usa0JBQWtCLGtCQUNaLENBQUMsYUFBYSxDQUFDLFlBQ3JCOzJDQUMrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSUJvbmVDb21wb25lbnQgfSBmcm9tIFwiLi9JQm9uZUNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBCb25lIH0gZnJvbSAnLi4vZ2VuZXJhdGVkJztcclxuaW1wb3J0IHsgQm9uZURpcmVjdGl2ZSB9IGZyb20gJy4vYm9uZS5kaXJlY3RpdmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdib24tdW5rbm93bi1ib25lJyxcclxuICBob3N0RGlyZWN0aXZlczogW0JvbmVEaXJlY3RpdmVdLFxyXG4gIHRlbXBsYXRlOiBgPGgyPnVua25vd24gYm9uZSB7e2JkLmJvbmUudHlwZX19PC9oMj5cclxuICAgICAgICAgICAgIDxkaXY+e3tiZC5ib25lIHwganNvbn19PC9kaXY+YCxcclxuICBzdHlsZXM6IFtcclxuICAgIGA6aG9zdHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCByZWQ7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIH1gXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5rbm93bkJvbmVDb21wb25lbnQgaW1wbGVtZW50cyBJQm9uZUNvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyByZWFkb25seSBiZDogQm9uZURpcmVjdGl2ZTxCb25lPikge1xyXG4gICAgY29uc29sZS5sb2coJ0JvbmVEaXJlY3RpdmUnLCBiZCk7XHJcbiAgICBjZC5kZXRhY2goKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -448,6 +448,47 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
448
448
  type: Input
449
449
  }] } });
450
450
 
451
+ class EncodeURIComponentPipe {
452
+ transform(value) {
453
+ return encodeURIComponent(value);
454
+ }
455
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: EncodeURIComponentPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
456
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: EncodeURIComponentPipe, name: "encodeURIComponent" }); }
457
+ }
458
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: EncodeURIComponentPipe, decorators: [{
459
+ type: Pipe,
460
+ args: [{ name: 'encodeURIComponent', pure: true }]
461
+ }] });
462
+
463
+ function emptyImage() {
464
+ return {
465
+ $type: 'image',
466
+ type: 'image',
467
+ sources: [],
468
+ };
469
+ }
470
+
471
+ function emptyVideo() {
472
+ return {
473
+ $type: 'video',
474
+ type: 'video',
475
+ sources: [],
476
+ };
477
+ }
478
+
479
+ function emptyBone() {
480
+ return {
481
+ style: '',
482
+ mediaQuery: '',
483
+ enabled: true,
484
+ type: ''
485
+ };
486
+ }
487
+
488
+ function emptyLocalizedString() {
489
+ return {};
490
+ }
491
+
451
492
  class LocalizeServiceBase {
452
493
  getLocalized(value, defaultValue, locale) {
453
494
  if (value === undefined)
@@ -691,11 +732,11 @@ class MarcyImageComponent {
691
732
  this.$status.next(MediaStatus.Loaded);
692
733
  }
693
734
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyImageComponent, deps: [{ token: DeviceServiceBase }, { token: i0.ChangeDetectorRef }, { token: UnsubscriberService }, { token: ImageSrcDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
694
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MarcyImageComponent, selector: "bon-image", inputs: { objectFit: "objectFit" }, outputs: { isLoaded: "isLoaded" }, providers: [UnsubscriberService], ngImport: i0, template: "<div *ngIf=\"sources.length > 0\"\n [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\n class=\"picture-container\">\n\n <ng-template #pictureTemplate>\n <picture>\n <source *ngFor=\"let source of sources\"\n [srcset]=\"source.srcSet\"\n [attr.media]=\"source.media.length > 0 ? source.media : undefined\"\n [attr.type]=\"source.mime.length > 0 ? source.mime : undefined\"\n [attr.sizes]=\"source.sizes.length > 0 ? source.sizes : undefined\" />\n\n <img [src]=\"defaultSrc\" (load)=\"onLoad()\" />\n </picture>\n </ng-template>\n\n <noscript *ngIf=\"device.isSSR\">\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\n </noscript>\n\n <bon-intersection #intersectionZone *ngIf=\"!device.isSSR\" [session]=\"src\" (intersected)=\"cd.detectChanges()\">\n\n <ng-container *ngIf=\"intersectionZone.intersectedOnce\">\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\n </ng-container>\n\n </bon-intersection>\n\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\n</div>\n", styles: [":host{display:block}.picture-container{overflow:hidden}.picture-container.cover picture,.picture-container.cover bon-intersection,.picture-container.contain picture,.picture-container.contain bon-intersection,.picture-container.knownRatio picture,.picture-container.knownRatio bon-intersection{width:100%;height:100%}.picture-container.cover picture>img,.picture-container.cover bon-intersection>img,.picture-container.contain picture>img,.picture-container.contain bon-intersection>img,.picture-container.knownRatio picture>img,.picture-container.knownRatio bon-intersection>img{height:100%}.picture-container.cover{height:100%}.picture-container.cover picture>img{object-fit:cover}.picture-container.contain{height:100%}.picture-container.contain picture>img{object-fit:contain}.picture-container.knownRatio{position:relative}.picture-container.knownRatio picture{position:absolute}.picture-container.knownRatio picture>img{object-fit:fill}picture{display:block;backface-visibility:hidden}picture>img{display:block;width:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IntersectionComponent, selector: "bon-intersection", inputs: ["session"], outputs: ["intersected"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
735
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MarcyImageComponent, selector: "bon-image", inputs: { objectFit: "objectFit" }, outputs: { isLoaded: "isLoaded" }, providers: [UnsubscriberService], ngImport: i0, template: "<div *ngIf=\"sources.length > 0\"\r\n [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\r\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\r\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\r\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\r\n class=\"picture-container\">\r\n\r\n <ng-template #pictureTemplate>\r\n <picture>\r\n <source *ngFor=\"let source of sources\"\r\n [srcset]=\"source.srcSet\"\r\n [attr.media]=\"source.media.length > 0 ? source.media : undefined\"\r\n [attr.type]=\"source.mime.length > 0 ? source.mime : undefined\"\r\n [attr.sizes]=\"source.sizes.length > 0 ? source.sizes : undefined\" />\r\n\r\n <img [src]=\"defaultSrc\" (load)=\"onLoad()\" />\r\n </picture>\r\n </ng-template>\r\n\r\n <noscript *ngIf=\"device.isSSR\">\r\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\r\n </noscript>\r\n\r\n <bon-intersection #intersectionZone *ngIf=\"!device.isSSR\" [session]=\"src\" (intersected)=\"cd.detectChanges()\">\r\n\r\n <ng-container *ngIf=\"intersectionZone.intersectedOnce\">\r\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\r\n </ng-container>\r\n\r\n </bon-intersection>\r\n\r\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\r\n</div>\r\n", styles: [":host{display:block}.picture-container{overflow:hidden}.picture-container.cover picture,.picture-container.cover bon-intersection,.picture-container.contain picture,.picture-container.contain bon-intersection,.picture-container.knownRatio picture,.picture-container.knownRatio bon-intersection{width:100%;height:100%}.picture-container.cover picture>img,.picture-container.cover bon-intersection>img,.picture-container.contain picture>img,.picture-container.contain bon-intersection>img,.picture-container.knownRatio picture>img,.picture-container.knownRatio bon-intersection>img{height:100%}.picture-container.cover{height:100%}.picture-container.cover picture>img{object-fit:cover}.picture-container.contain{height:100%}.picture-container.contain picture>img{object-fit:contain}.picture-container.knownRatio{position:relative}.picture-container.knownRatio picture{position:absolute}.picture-container.knownRatio picture>img{object-fit:fill}picture{display:block;backface-visibility:hidden}picture>img{display:block;width:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IntersectionComponent, selector: "bon-intersection", inputs: ["session"], outputs: ["intersected"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
695
736
  }
696
737
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyImageComponent, decorators: [{
697
738
  type: Component,
698
- args: [{ selector: 'bon-image', providers: [UnsubscriberService], template: "<div *ngIf=\"sources.length > 0\"\n [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\n class=\"picture-container\">\n\n <ng-template #pictureTemplate>\n <picture>\n <source *ngFor=\"let source of sources\"\n [srcset]=\"source.srcSet\"\n [attr.media]=\"source.media.length > 0 ? source.media : undefined\"\n [attr.type]=\"source.mime.length > 0 ? source.mime : undefined\"\n [attr.sizes]=\"source.sizes.length > 0 ? source.sizes : undefined\" />\n\n <img [src]=\"defaultSrc\" (load)=\"onLoad()\" />\n </picture>\n </ng-template>\n\n <noscript *ngIf=\"device.isSSR\">\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\n </noscript>\n\n <bon-intersection #intersectionZone *ngIf=\"!device.isSSR\" [session]=\"src\" (intersected)=\"cd.detectChanges()\">\n\n <ng-container *ngIf=\"intersectionZone.intersectedOnce\">\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\n </ng-container>\n\n </bon-intersection>\n\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\n</div>\n", styles: [":host{display:block}.picture-container{overflow:hidden}.picture-container.cover picture,.picture-container.cover bon-intersection,.picture-container.contain picture,.picture-container.contain bon-intersection,.picture-container.knownRatio picture,.picture-container.knownRatio bon-intersection{width:100%;height:100%}.picture-container.cover picture>img,.picture-container.cover bon-intersection>img,.picture-container.contain picture>img,.picture-container.contain bon-intersection>img,.picture-container.knownRatio picture>img,.picture-container.knownRatio bon-intersection>img{height:100%}.picture-container.cover{height:100%}.picture-container.cover picture>img{object-fit:cover}.picture-container.contain{height:100%}.picture-container.contain picture>img{object-fit:contain}.picture-container.knownRatio{position:relative}.picture-container.knownRatio picture{position:absolute}.picture-container.knownRatio picture>img{object-fit:fill}picture{display:block;backface-visibility:hidden}picture>img{display:block;width:100%}\n"] }]
739
+ args: [{ selector: 'bon-image', providers: [UnsubscriberService], template: "<div *ngIf=\"sources.length > 0\"\r\n [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\r\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\r\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\r\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\r\n class=\"picture-container\">\r\n\r\n <ng-template #pictureTemplate>\r\n <picture>\r\n <source *ngFor=\"let source of sources\"\r\n [srcset]=\"source.srcSet\"\r\n [attr.media]=\"source.media.length > 0 ? source.media : undefined\"\r\n [attr.type]=\"source.mime.length > 0 ? source.mime : undefined\"\r\n [attr.sizes]=\"source.sizes.length > 0 ? source.sizes : undefined\" />\r\n\r\n <img [src]=\"defaultSrc\" (load)=\"onLoad()\" />\r\n </picture>\r\n </ng-template>\r\n\r\n <noscript *ngIf=\"device.isSSR\">\r\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\r\n </noscript>\r\n\r\n <bon-intersection #intersectionZone *ngIf=\"!device.isSSR\" [session]=\"src\" (intersected)=\"cd.detectChanges()\">\r\n\r\n <ng-container *ngIf=\"intersectionZone.intersectedOnce\">\r\n <ng-container *ngTemplateOutlet=\"pictureTemplate\"></ng-container>\r\n </ng-container>\r\n\r\n </bon-intersection>\r\n\r\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\r\n</div>\r\n", styles: [":host{display:block}.picture-container{overflow:hidden}.picture-container.cover picture,.picture-container.cover bon-intersection,.picture-container.contain picture,.picture-container.contain bon-intersection,.picture-container.knownRatio picture,.picture-container.knownRatio bon-intersection{width:100%;height:100%}.picture-container.cover picture>img,.picture-container.cover bon-intersection>img,.picture-container.contain picture>img,.picture-container.contain bon-intersection>img,.picture-container.knownRatio picture>img,.picture-container.knownRatio bon-intersection>img{height:100%}.picture-container.cover{height:100%}.picture-container.cover picture>img{object-fit:cover}.picture-container.contain{height:100%}.picture-container.contain picture>img{object-fit:contain}.picture-container.knownRatio{position:relative}.picture-container.knownRatio picture{position:absolute}.picture-container.knownRatio picture>img{object-fit:fill}picture{display:block;backface-visibility:hidden}picture>img{display:block;width:100%}\n"] }]
699
740
  }], ctorParameters: () => [{ type: DeviceServiceBase }, { type: i0.ChangeDetectorRef }, { type: UnsubscriberService }, { type: ImageSrcDirective, decorators: [{
700
741
  type: Optional
701
742
  }] }], propDecorators: { isLoaded: [{
@@ -838,11 +879,11 @@ class MarcyVideoComponent {
838
879
  return undefined;
839
880
  }
840
881
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyVideoComponent, deps: [{ token: DeviceServiceBase }, { token: i0.ChangeDetectorRef }, { token: UnsubscriberService }, { token: VideoSrcDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
841
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MarcyVideoComponent, selector: "bon-video", inputs: { objectFit: "objectFit" }, outputs: { isLoaded: "isLoaded" }, providers: [UnsubscriberService], viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }], ngImport: i0, template: "<div [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\n class=\"video-container\">\n\n <ng-container *ngIf=\"device.isSSR ; then ssrTemplate else browserTemplate\"></ng-container>\n\n <ng-template #videoTemplate>\n <video #video\n [src]=\"source !== undefined ? source.url :'' \"\n (load)=\"onLoad()\"\n (canplay)=\"video.muted=true;video.play();\"\n autoplay\n loop\n muted> </video>\n </ng-template>\n\n <ng-template #ssrTemplate>\n <noscript *ngIf=\"device.isSSR\">\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\n </noscript>\n </ng-template>\n\n <ng-template #browserTemplate>\n <bon-intersection #intersectionZone [session]=\"src\" (intersected)=\"cd.detectChanges()\">\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\n </bon-intersection>\n </ng-template>\n\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\n</div>\n", styles: [":host{display:block}.video-container{background-color:#000;overflow:hidden}.video-container.cover video,.video-container.cover bon-intersection,.video-container.contain video,.video-container.contain bon-intersection,.video-container.knownRatio video,.video-container.knownRatio bon-intersection{width:100%;height:100%}.video-container.cover{height:100%}.video-container.cover video{object-fit:cover}.video-container.contain{height:100%}.video-container.contain video{object-fit:contain}.video-container.knownRatio{position:relative}.video-container.knownRatio video{position:absolute;object-fit:fill}video{display:block;width:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IntersectionComponent, selector: "bon-intersection", inputs: ["session"], outputs: ["intersected"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
882
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MarcyVideoComponent, selector: "bon-video", inputs: { objectFit: "objectFit" }, outputs: { isLoaded: "isLoaded" }, providers: [UnsubscriberService], viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }], ngImport: i0, template: "<div [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\r\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\r\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\r\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\r\n class=\"video-container\">\r\n\r\n <ng-container *ngIf=\"device.isSSR ; then ssrTemplate else browserTemplate\"></ng-container>\r\n\r\n <ng-template #videoTemplate>\r\n <video #video\r\n [src]=\"source !== undefined ? source.url :'' \"\r\n (load)=\"onLoad()\"\r\n (canplay)=\"video.muted=true;video.play();\"\r\n autoplay\r\n loop\r\n muted> </video>\r\n </ng-template>\r\n\r\n <ng-template #ssrTemplate>\r\n <noscript *ngIf=\"device.isSSR\">\r\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\r\n </noscript>\r\n </ng-template>\r\n\r\n <ng-template #browserTemplate>\r\n <bon-intersection #intersectionZone [session]=\"src\" (intersected)=\"cd.detectChanges()\">\r\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\r\n </bon-intersection>\r\n </ng-template>\r\n\r\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\r\n</div>\r\n", styles: [":host{display:block}.video-container{background-color:#000;overflow:hidden}.video-container.cover video,.video-container.cover bon-intersection,.video-container.contain video,.video-container.contain bon-intersection,.video-container.knownRatio video,.video-container.knownRatio bon-intersection{width:100%;height:100%}.video-container.cover{height:100%}.video-container.cover video{object-fit:cover}.video-container.contain{height:100%}.video-container.contain video{object-fit:contain}.video-container.knownRatio{position:relative}.video-container.knownRatio video{position:absolute;object-fit:fill}video{display:block;width:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IntersectionComponent, selector: "bon-intersection", inputs: ["session"], outputs: ["intersected"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
842
883
  }
843
884
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyVideoComponent, decorators: [{
844
885
  type: Component,
845
- args: [{ selector: 'bon-video', providers: [UnsubscriberService], template: "<div [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\n class=\"video-container\">\n\n <ng-container *ngIf=\"device.isSSR ; then ssrTemplate else browserTemplate\"></ng-container>\n\n <ng-template #videoTemplate>\n <video #video\n [src]=\"source !== undefined ? source.url :'' \"\n (load)=\"onLoad()\"\n (canplay)=\"video.muted=true;video.play();\"\n autoplay\n loop\n muted> </video>\n </ng-template>\n\n <ng-template #ssrTemplate>\n <noscript *ngIf=\"device.isSSR\">\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\n </noscript>\n </ng-template>\n\n <ng-template #browserTemplate>\n <bon-intersection #intersectionZone [session]=\"src\" (intersected)=\"cd.detectChanges()\">\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\n </bon-intersection>\n </ng-template>\n\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\n</div>\n", styles: [":host{display:block}.video-container{background-color:#000;overflow:hidden}.video-container.cover video,.video-container.cover bon-intersection,.video-container.contain video,.video-container.contain bon-intersection,.video-container.knownRatio video,.video-container.knownRatio bon-intersection{width:100%;height:100%}.video-container.cover{height:100%}.video-container.cover video{object-fit:cover}.video-container.contain{height:100%}.video-container.contain video{object-fit:contain}.video-container.knownRatio{position:relative}.video-container.knownRatio video{position:absolute;object-fit:fill}video{display:block;width:100%}\n"] }]
886
+ args: [{ selector: 'bon-video', providers: [UnsubscriberService], template: "<div [class.knownRatio]=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\"\r\n [class.cover]=\"objectFit === MarcyObjectFit.Cover\"\r\n [class.contain]=\"objectFit === MarcyObjectFit.Contain\"\r\n [class.loaded]=\"($status | async) === MediaStatus.Loaded\"\r\n class=\"video-container\">\r\n\r\n <ng-container *ngIf=\"device.isSSR ; then ssrTemplate else browserTemplate\"></ng-container>\r\n\r\n <ng-template #videoTemplate>\r\n <video #video\r\n [src]=\"source !== undefined ? source.url :'' \"\r\n (load)=\"onLoad()\"\r\n (canplay)=\"video.muted=true;video.play();\"\r\n autoplay\r\n loop\r\n muted> </video>\r\n </ng-template>\r\n\r\n <ng-template #ssrTemplate>\r\n <noscript *ngIf=\"device.isSSR\">\r\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\r\n </noscript>\r\n </ng-template>\r\n\r\n <ng-template #browserTemplate>\r\n <bon-intersection #intersectionZone [session]=\"src\" (intersected)=\"cd.detectChanges()\">\r\n <ng-container *ngTemplateOutlet=\"videoTemplate\"></ng-container>\r\n </bon-intersection>\r\n </ng-template>\r\n\r\n <div *ngIf=\"src.ratio > 0 && objectFit === MarcyObjectFit.Original\" [style.padding-top]=\"100 / src.ratio +'%'\"></div>\r\n</div>\r\n", styles: [":host{display:block}.video-container{background-color:#000;overflow:hidden}.video-container.cover video,.video-container.cover bon-intersection,.video-container.contain video,.video-container.contain bon-intersection,.video-container.knownRatio video,.video-container.knownRatio bon-intersection{width:100%;height:100%}.video-container.cover{height:100%}.video-container.cover video{object-fit:cover}.video-container.contain{height:100%}.video-container.contain video{object-fit:contain}.video-container.knownRatio{position:relative}.video-container.knownRatio video{position:absolute;object-fit:fill}video{display:block;width:100%}\n"] }]
846
887
  }], ctorParameters: () => [{ type: DeviceServiceBase }, { type: i0.ChangeDetectorRef }, { type: UnsubscriberService }, { type: VideoSrcDirective, decorators: [{
847
888
  type: Optional
848
889
  }] }], propDecorators: { videoRef: [{
@@ -888,11 +929,11 @@ class MarcyMediaComponent {
888
929
  this.isLoaded.next();
889
930
  }
890
931
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyMediaComponent, deps: [{ token: DeviceServiceBase }, { token: i0.ChangeDetectorRef }, { token: UnsubscriberService }], target: i0.ɵɵFactoryTarget.Component }); }
891
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MarcyMediaComponent, selector: "bon-media", inputs: { src: "src", objectFit: "objectFit" }, outputs: { isLoaded: "isLoaded" }, providers: [UnsubscriberService], ngImport: i0, template: "<bon-image *ngIf=\"src && src.type==='image'\"\n [imgsrc]=\"src\"\n [objectFit]=\"objectFit\"\n (isLoaded)=\"onLoad()\"></bon-image>\n\n<bon-video *ngIf=\"src && src.type==='video'\"\n [vidsrc]=\"src\"\n [objectFit]=\"objectFit\"\n (isLoaded)=\"onLoad()\"></bon-video>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarcyImageComponent, selector: "bon-image", inputs: ["objectFit"], outputs: ["isLoaded"] }, { kind: "component", type: MarcyVideoComponent, selector: "bon-video", inputs: ["objectFit"], outputs: ["isLoaded"] }, { kind: "directive", type: ImageSrcDirective, selector: "[imgsrc]", inputs: ["imgsrc"] }, { kind: "directive", type: VideoSrcDirective, selector: "[vidsrc]", inputs: ["vidsrc"] }] }); }
932
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MarcyMediaComponent, selector: "bon-media", inputs: { src: "src", objectFit: "objectFit" }, outputs: { isLoaded: "isLoaded" }, providers: [UnsubscriberService], ngImport: i0, template: "<bon-image *ngIf=\"src && src.type==='image'\"\r\n [imgsrc]=\"src\"\r\n [objectFit]=\"objectFit\"\r\n (isLoaded)=\"onLoad()\"></bon-image>\r\n\r\n<bon-video *ngIf=\"src && src.type==='video'\"\r\n [vidsrc]=\"src\"\r\n [objectFit]=\"objectFit\"\r\n (isLoaded)=\"onLoad()\"></bon-video>\r\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarcyImageComponent, selector: "bon-image", inputs: ["objectFit"], outputs: ["isLoaded"] }, { kind: "component", type: MarcyVideoComponent, selector: "bon-video", inputs: ["objectFit"], outputs: ["isLoaded"] }, { kind: "directive", type: ImageSrcDirective, selector: "[imgsrc]", inputs: ["imgsrc"] }, { kind: "directive", type: VideoSrcDirective, selector: "[vidsrc]", inputs: ["vidsrc"] }] }); }
892
933
  }
893
934
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyMediaComponent, decorators: [{
894
935
  type: Component,
895
- args: [{ selector: 'bon-media', providers: [UnsubscriberService], template: "<bon-image *ngIf=\"src && src.type==='image'\"\n [imgsrc]=\"src\"\n [objectFit]=\"objectFit\"\n (isLoaded)=\"onLoad()\"></bon-image>\n\n<bon-video *ngIf=\"src && src.type==='video'\"\n [vidsrc]=\"src\"\n [objectFit]=\"objectFit\"\n (isLoaded)=\"onLoad()\"></bon-video>\n", styles: [":host{display:block}\n"] }]
936
+ args: [{ selector: 'bon-media', providers: [UnsubscriberService], template: "<bon-image *ngIf=\"src && src.type==='image'\"\r\n [imgsrc]=\"src\"\r\n [objectFit]=\"objectFit\"\r\n (isLoaded)=\"onLoad()\"></bon-image>\r\n\r\n<bon-video *ngIf=\"src && src.type==='video'\"\r\n [vidsrc]=\"src\"\r\n [objectFit]=\"objectFit\"\r\n (isLoaded)=\"onLoad()\"></bon-video>\r\n", styles: [":host{display:block}\n"] }]
896
937
  }], ctorParameters: () => [{ type: DeviceServiceBase }, { type: i0.ChangeDetectorRef }, { type: UnsubscriberService }], propDecorators: { isLoaded: [{
897
938
  type: Output
898
939
  }], src: [{
@@ -962,12 +1003,12 @@ class UnknownBoneComponent {
962
1003
  this.cd.detectChanges();
963
1004
  }
964
1005
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: UnknownBoneComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: BoneDirective }], target: i0.ɵɵFactoryTarget.Component }); }
965
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: UnknownBoneComponent, selector: "bon-unknown-bone", hostDirectives: [{ directive: BoneDirective }], ngImport: i0, template: `<h2>unknown bone {{bd.bone.type}}</h2>
1006
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: UnknownBoneComponent, selector: "bon-unknown-bone", hostDirectives: [{ directive: BoneDirective }], ngImport: i0, template: `<h2>unknown bone {{bd.bone.type}}</h2>
966
1007
  <div>{{bd.bone | json}}</div>`, isInline: true, styles: [":host{display:block;border:2px solid red;box-sizing:border-box}\n"], dependencies: [{ kind: "pipe", type: i4.JsonPipe, name: "json" }] }); }
967
1008
  }
968
1009
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: UnknownBoneComponent, decorators: [{
969
1010
  type: Component,
970
- args: [{ selector: 'bon-unknown-bone', hostDirectives: [BoneDirective], template: `<h2>unknown bone {{bd.bone.type}}</h2>
1011
+ args: [{ selector: 'bon-unknown-bone', hostDirectives: [BoneDirective], template: `<h2>unknown bone {{bd.bone.type}}</h2>
971
1012
  <div>{{bd.bone | json}}</div>`, styles: [":host{display:block;border:2px solid red;box-sizing:border-box}\n"] }]
972
1013
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: BoneDirective }] });
973
1014
 
@@ -1004,11 +1045,11 @@ class SkeletonComponent {
1004
1045
  }
1005
1046
  }
1006
1047
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SkeletonComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
1007
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: SkeletonComponent, selector: "bon-skeleton", inputs: { map: "map", bones: "bones" }, viewQueries: [{ propertyName: "skeletonAnchor", first: true, predicate: SkeletonAnchorDirective, descendants: true, static: true }], ngImport: i0, template: "<ng-template bonSkeletonAnchor></ng-template>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: SkeletonAnchorDirective, selector: "[bonSkeletonAnchor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1048
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: SkeletonComponent, selector: "bon-skeleton", inputs: { map: "map", bones: "bones" }, viewQueries: [{ propertyName: "skeletonAnchor", first: true, predicate: SkeletonAnchorDirective, descendants: true, static: true }], ngImport: i0, template: "<ng-template bonSkeletonAnchor></ng-template>\r\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: SkeletonAnchorDirective, selector: "[bonSkeletonAnchor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1008
1049
  }
1009
1050
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SkeletonComponent, decorators: [{
1010
1051
  type: Component,
1011
- args: [{ selector: 'bon-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template bonSkeletonAnchor></ng-template>\n", styles: [":host{display:block}\n"] }]
1052
+ args: [{ selector: 'bon-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template bonSkeletonAnchor></ng-template>\r\n", styles: [":host{display:block}\n"] }]
1012
1053
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { skeletonAnchor: [{
1013
1054
  type: ViewChild,
1014
1055
  args: [SkeletonAnchorDirective, { static: true }]
@@ -1019,6 +1060,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
1019
1060
  type: Input
1020
1061
  }] } });
1021
1062
 
1063
+ class BoneMap extends Map {
1064
+ getRequired(key) {
1065
+ const value = this.get(key);
1066
+ if (value === undefined || value === null) {
1067
+ throw Error(`BoneMap doesn't contain type for key = ${key}`);
1068
+ }
1069
+ return value;
1070
+ }
1071
+ }
1072
+
1022
1073
  const components = [
1023
1074
  MarcyImageComponent,
1024
1075
  MarcyVideoComponent,
@@ -1038,12 +1089,13 @@ const standAloneDirectives = [
1038
1089
  BoneDirective
1039
1090
  ];
1040
1091
  const pipes = [
1092
+ EncodeURIComponentPipe,
1041
1093
  LocalizePipe,
1042
1094
  LocalizationIsNotEmptyPipe
1043
1095
  ];
1044
- class MarcyElementsModule {
1045
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyElementsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1046
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: MarcyElementsModule, declarations: [MarcyImageComponent,
1096
+ class BonnieModule {
1097
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: BonnieModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1098
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: BonnieModule, declarations: [MarcyImageComponent,
1047
1099
  MarcyVideoComponent,
1048
1100
  MarcyMediaComponent,
1049
1101
  IntersectionComponent,
@@ -1051,9 +1103,11 @@ class MarcyElementsModule {
1051
1103
  SkeletonComponent,
1052
1104
  UnknownBoneComponent, SrcBaseDirective,
1053
1105
  ImageSrcDirective,
1054
- VideoSrcDirective, LocalizePipe,
1106
+ VideoSrcDirective, EncodeURIComponentPipe,
1107
+ LocalizePipe,
1055
1108
  LocalizationIsNotEmptyPipe], imports: [CommonModule, SkeletonAnchorDirective,
1056
- BoneDirective], exports: [CommonModule, LocalizePipe,
1109
+ BoneDirective], exports: [CommonModule, EncodeURIComponentPipe,
1110
+ LocalizePipe,
1057
1111
  LocalizationIsNotEmptyPipe, MarcyImageComponent,
1058
1112
  MarcyVideoComponent,
1059
1113
  MarcyMediaComponent,
@@ -1064,14 +1118,14 @@ class MarcyElementsModule {
1064
1118
  ImageSrcDirective,
1065
1119
  VideoSrcDirective, SkeletonAnchorDirective,
1066
1120
  BoneDirective] }); }
1067
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyElementsModule, providers: [
1121
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: BonnieModule, providers: [
1068
1122
  ...pipes,
1069
1123
  UnsubscriberService,
1070
1124
  DeviceService,
1071
1125
  { provide: DeviceServiceBase, useExisting: DeviceService },
1072
1126
  ], imports: [CommonModule, CommonModule] }); }
1073
- }
1074
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MarcyElementsModule, decorators: [{
1127
+ } // todo: move to standalone
1128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: BonnieModule, decorators: [{
1075
1129
  type: NgModule,
1076
1130
  args: [{
1077
1131
  declarations: [
@@ -1103,5 +1157,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
1103
1157
  * Generated bundle index. Do not edit.
1104
1158
  */
1105
1159
 
1106
- export { BoneDirective, DeviceService, DeviceServiceBase, ImageSrcDirective, IntersectionComponent, IsLocalUrlPipe, IsNotLocalUrlPipe, LocalizationIsEmptyPipe, LocalizationIsNotEmptyPipe, LocalizeObjectPipe, LocalizePipe, LocalizeServiceBase, LocalizeUrlPipe, MarcyElementsModule, MarcyImageComponent, MarcyMediaComponent, MarcyVideoComponent, MediaObjectFit, MediaStatus, PublishStatus, SizesWidthUnit, SkeletonAnchorDirective, SkeletonComponent, SrcBaseDirective, UnknownBoneComponent, UnsubscriberService, VideoSrcDirective, getDefaultSrc, toHtmlPictureSources };
1160
+ export { BoneDirective, BoneMap, BonnieModule, DeviceService, DeviceServiceBase, EncodeURIComponentPipe, ImageSrcDirective, IntersectionComponent, IsLocalUrlPipe, IsNotLocalUrlPipe, LocalizationIsEmptyPipe, LocalizationIsNotEmptyPipe, LocalizeObjectPipe, LocalizePipe, LocalizeServiceBase, LocalizeUrlPipe, MarcyImageComponent, MarcyMediaComponent, MarcyVideoComponent, MediaObjectFit, MediaStatus, PublishStatus, SizesWidthUnit, SkeletonAnchorDirective, SkeletonComponent, SrcBaseDirective, UnknownBoneComponent, UnsubscriberService, VideoSrcDirective, emptyBone, emptyImage, emptyLocalizedString, emptyVideo, getDefaultSrc, toHtmlPictureSources };
1107
1161
  //# sourceMappingURL=candy-kingdom-bonnie.mjs.map