@sumaris-net/ngx-components 18.14.12 → 18.14.14

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.
@@ -170,6 +170,29 @@ export const CORE_CONFIG_OPTIONS = Object.freeze({
170
170
  label: 'CONFIGURATION.OPTIONS.HOME.BACKGROUND_IMAGES',
171
171
  type: 'string',
172
172
  },
173
+ HOME_FEED_ENABLE: {
174
+ key: 'sumaris.home.feed.enable',
175
+ label: 'CONFIGURATION.OPTIONS.HOME.FEED_ENABLE',
176
+ type: 'boolean',
177
+ defaultValue: false,
178
+ },
179
+ HOME_FEED_URLS: {
180
+ key: 'sumaris.home.feed.urls',
181
+ label: 'CONFIGURATION.OPTIONS.HOME.FEED_URLS',
182
+ type: 'string',
183
+ },
184
+ HOME_FEED_MAX_AGE_IN_MONTHS: {
185
+ key: 'sumaris.home.feed.maxAgeInMonths',
186
+ label: 'CONFIGURATION.OPTIONS.HOME.FEED_MAX_AGE_IN_MONTHS',
187
+ type: 'integer',
188
+ defaultValue: -1,
189
+ },
190
+ HOME_FEED_MAX_CONTENT_LENGTH: {
191
+ key: 'sumaris.home.feed.maxContentLength',
192
+ label: 'CONFIGURATION.OPTIONS.HOME.FEED_MAX_CONTENT_LENGTH',
193
+ type: 'integer',
194
+ defaultValue: -1,
195
+ },
173
196
  COLOR_PRIMARY: {
174
197
  key: 'sumaris.color.primary',
175
198
  label: 'CONFIGURATION.OPTIONS.COLORS.PRIMARY',
@@ -255,4 +278,4 @@ export const CORE_CONFIG_OPTIONS = Object.freeze({
255
278
  isTransient: true,
256
279
  },
257
280
  });
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvY29uZmlnL2NvcmUuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd0RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLElBQUksRUFBdUI7UUFDekIsR0FBRyxFQUFFLGNBQWM7UUFDbkIsS0FBSyxFQUFFLDRCQUE0QjtRQUNuQyxJQUFJLEVBQUUsUUFBUTtLQUNmO0lBQ0QsT0FBTyxFQUF1QjtRQUM1QixHQUFHLEVBQUUsaUJBQWlCO1FBQ3RCLEtBQUssRUFBRSwrQkFBK0I7UUFDdEMsSUFBSSxFQUFFLFFBQVE7S0FDZjtJQUNELGNBQWMsRUFBdUI7UUFDbkMsR0FBRyxFQUFFLHVCQUF1QjtRQUM1QixLQUFLLEVBQUUsc0NBQXNDO1FBQzdDLElBQUksRUFBRSxNQUFNO1FBQ1osTUFBTSxFQUFFLFdBQVc7S0FDcEI7SUFDRCx1QkFBdUIsRUFBdUI7UUFDNUMsR0FBRyxFQUFFLDhCQUE4QjtRQUNuQyxLQUFLLEVBQUUsOENBQThDO1FBQ3JELElBQUksRUFBRSxNQUFNO1FBQ1osTUFBTSxFQUFFO1lBQ047Z0JBQ0UsR0FBRyxFQUFFLFFBQVE7Z0JBQ2IsS0FBSyxFQUFFLDZCQUE2QjthQUNyQztZQUNEO2dCQUNFLEdBQUcsRUFBRSxNQUFNO2dCQUNYLEtBQUssRUFBRSwyQkFBMkI7YUFDbkM7WUFDRDtnQkFDRSxHQUFHLEVBQUUsSUFBSTtnQkFDVCxLQUFLLEVBQUUseUJBQXlCO2FBQ2pDO1NBQ0Y7S0FDRjtJQUNEOztPQUVHO0lBQ0gsYUFBYTtJQUNiLCtCQUErQixFQUF1QjtRQUNwRCxHQUFHLEVBQUUsc0NBQXNDO1FBQzNDLEtBQUssRUFBRSxxREFBcUQ7UUFDNUQs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QUNyQyxHQUFHLEVBQUUsMEJBQTBCO1FBQy9CLEtBQUssRUFBRSx3Q0FBd0M7UUFDL0MsSUFBSSxFQUFFLFNBQVM7UUFDZixZQUFZLEVBQUUsS0FBSztRQUNuQixXQUFXLEVBQUUsSUFBSTtLQUNsQjtDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IHJlbmFtZSB0byBDT05GSUdfT1BUSU9OU19NQVBcbi8vIHRoZW4gZGVjbGFyZSBhIHR5cGUgbGlrZSB0aGlzIDpcbi8vID4gZXhwb3J0IGRlY2xhcmUgdHlwZSBDb25maWdPcHRpb25zID0ga2V5IG9mIENPTkZJR19PUFRJT05TX01BUFxuaW1wb3J0IHsgRm9ybUZpZWxkRGVmaW5pdGlvbiB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9mb3JtL2ZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEFQUF9MT0NBTEVTIH0gZnJvbSAnLi4vbW9kZWwvc2V0dGluZ3MubW9kZWwnO1xuaW1wb3J0IHsgQXV0aFRva2VuVHlwZSB9IGZyb20gJy4uL25ldHdvcmsudHlwZXMnO1xuXG5leHBvcnQgY29uc3QgQ09SRV9DT05GSUdfT1BUSU9OUyA9IE9iamVjdC5mcmVlemUoe1xuICBMT0dPOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5sb2dvJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5MT0dPJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgRkFWSUNPTjogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuZmF2aWNvbicsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuRkFWSUNPTicsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIERFRkFVTFRfTE9DQUxFOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5kZWZhdWx0TG9jYWxlJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5ERUZBVUxUX0xPQ0FMRScsXG4gICAgdHlwZTogJ2VudW0nLFxuICAgIHZhbHVlczogQVBQX0xPQ0FMRVMsXG4gIH0sXG4gIERFRkFVTFRfTEFUX0xPTkdfRk9STUFUOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5kZWZhdWx0TGF0TG9uZ0Zvcm1hdCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuREVGQVVMVF9MQVRMT05HX0ZPUk1BVCcsXG4gICAgdHlwZTogJ2VudW0nLFxuICAgIHZhbHVlczogW1xuICAgICAge1xuICAgICAgICBrZXk6ICdERE1NU1MnLFxuICAgICAgICB2YWx1ZTogJ0NPTU1PTi5MQVRfTE9ORy5FTlVNLkRETU1TUycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdERE1NJyxcbiAgICAgICAgdmFsdWU6ICdDT01NT04uTEFUX0xPTkcuRU5VTS5ERE1NJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0REJyxcbiAgICAgICAgdmFsdWU6ICdDT01NT04uTEFUX0xPTkcuRU5VTS5ERCcsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYEFDQ09VTlRfTEFUX0xPTkdfRk9STUFUX0VOQUJMRWAgaW5zdGVhZFxuICAgKi9cbiAgLy9AZGVwcmVjYXRlZFxuICBERUZBVUxUX0xBVF9MT05HX0ZPUk1BVF9FTkFCTEVEOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5kZWZhdWx0TGF0TG9uZ0Zvcm1hdC5lbmFibGVkJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5FTkFCTEVfREVGQVVMVF9MQVRMT05HX0ZPUk1BVCcsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogdHJ1ZSwgLy8gSW1wb3J0YW50LCBmb3IgY29tcGF0aWJpbGl0eSByZWFzb24gYWZ0ZXIgZGVwcmVjYXRpb25cbiAgfSxcbiAgUkVHSVNUUkFUSU9OX0VOQUJMRTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMucmVnaXN0cmF0aW9uLmVuYWJsZScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuSE9NRS5FTkFCTEVfUkVHSVNUUkFUSU9OJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICB9LFxuICBBVVRIX1RPS0VOX1RZUEU6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmF1dGgudG9rZW4udHlwZScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQVVUSF9UT0tFTl9UWVBFX1BMQUNFSE9MREVSJyxcbiAgICB0eXBlOiAnZW51bScsXG4gICAgdmFsdWVzOiBbXG4gICAgICB7XG4gICAgICAgIGtleTogPEF1dGhUb2tlblR5cGU+J3Rva2VuJyxcbiAgICAgICAgdmFsdWU6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQVVUSF9UT0tFTl9UWVBFLlRPS0VOJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogPEF1dGhUb2tlblR5cGU+J2Jhc2ljJyxcbiAgICAgICAgdmFsdWU6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQVVUSF9UT0tFTl9UWVBFLkJBU0lDJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogPEF1dGhUb2tlblR5cGU+J2Jhc2ljLWFuZC10b2tlbicsXG4gICAgICAgIHZhbHVlOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkFVVEhfVE9LRU5fVFlQRS5CQVNJQ19BTkRfVE9LRU4nLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGRlZmF1bHRWYWx1ZTogPEF1dGhUb2tlblR5cGU+J3Rva2VuJyxcbiAgfSxcbiAgQVVUSF9SRVNFVF9QQVNTV09SRF9FTkFCTEU6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmF1dGgucmVzZXQuZW5hYmxlJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5IT01FLkNIQU5HRV9QQVNTV09SRCcsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogdHJ1ZSxcbiAgfSxcbiAgQVVUSF9BUElfVE9LRU5fRU5BQkxFRDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuYXV0aC5hcGkudG9rZW4uZW5hYmxlZCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuRU5BQkxFX0FVVEhfQVBJX1RPS0VOUycsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgaXNUcmFuc2llbnQ6IHRydWUsXG4gIH0sXG4gIEFVVEhfQVBJX1RPS0VOX1NDT1BFX0VOQUJMRUQ6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmF1dGguYXBpLnRva2VuLnNjb3BlLmVuYWJsZWQnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkVOQUJMRV9BVVRIX0FQSV9UT0tFTlNfU0NPUEUnLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgIGlzVHJhbnNpZW50OiB0cnVlLFxuICB9LFxuICBERUZBVUxUX0FVVEhfQVBJX1RPS0VOX1NDT1BFOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5hdXRoLmFwaS50b2tlbi5zY29wZS5kZWZhdWx0JyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5ERUZBVUxUX0FVVEhfQVBJX1RPS0VOX1NDT1BFJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICBkZWZhdWx0VmFsdWU6ICdyZWFkX2FwaScsXG4gICAgaXNUcmFuc2llbnQ6IHRydWUsXG4gIH0sXG4gIEdSQVZBVEFSX0VOQUJMRTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuZ3JhdmF0YXIuZW5hYmxlJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5FTkFCTEVfR1JBVkFUQVInLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICB9LFxuICBHUkFWQVRBUl9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmdyYXZhdGFyLnVybCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuR1JBVkFUQVJfVVJMJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICBkZWZhdWx0VmFsdWU6ICdodHRwczovL3d3dy5ncmF2YXRhci5jb20vYXZhdGFyL3ttZDV9JyxcbiAgfSxcbiAgVEVTVElORzogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMudGVzdGluZy5lbmFibGUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLlRFU1RJTkcnLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgfSxcbiAgQVBQX01JTl9WRVJTSU9OOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5hcHAudmVyc2lvbi5taW4nLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkFQUF9NSU5fVkVSU0lPTicsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIEhFTFBfVVJMOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5oZWxwLnVybCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuSEVMUF9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBGT1JVTV9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmZvcnVtLnVybCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuRk9SVU1fVVJMJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgUkVQT1JUX0lTU1VFX1VSTDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMucmVwb3J0SXNzdWUudXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5SRVBPUlRfSVNTVUVfVVJMJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgUFJJVkFDWV9QT0xJQ1lfVVJMOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5wb2xpY3kudXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5QUklWQUNZX1BPTElDWV9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBURVJNU19PRl9VU0VfVVJMOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy50ZXJtc09mVXNlLnVybCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuVEVSTVNfT0ZfVVNFX1VSTCcsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIExPR09fTEFSR0U6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmxvZ28ubGFyZ2UnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuTE9HT19MQVJHRScsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIE1FTlVfSVRFTVM6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLm1lbnUuaXRlbXMnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLk1FTlUuSVRFTVMnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIC8vIC0tIEZPUiBERVZcbiAgICAvKixkZWZhdWx0VmFsdWU6IEpTT04uc3RyaW5naWZ5KFtcbiAgICAgICAge3RpdGxlOiBcIkl0ZW0gIzFcIiwgcGF0aDogXCIvc2V0dGluZ3NcIiwgaWNvbjogXCJwZW9wbGVcIiwgYWZ0ZXI6IFwiTUVOVS5IT01FXCJ9LFxuICAgICAgICB7dGl0bGU6IFwiSXRlbSAjMlwiLCBwYXRoOiBcIi9zZXR0aW5nc1wiLCBpY29uOiBcInBlb3BsZVwiLCBiZWZvcmU6IFwiTUVOVS5MT0dPVVRcIn1cbiAgICBdKSovXG4gIH0sXG4gIEhPTUVfUEFSVE5FUlNfREVQQVJUTUVOVFM6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLnBhcnRuZXIuZGVwYXJ0bWVudHMnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuUEFSVE5FUl9ERVBBUlRNRU5UUycsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIEhPTUVfQkFDS0dST1VORF9JTUFHRTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuYmFja2dyb3VuZC5pbWFnZXMnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuQkFDS0dST1VORF9JTUFHRVMnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBDT0xPUl9QUklNQVJZOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5jb2xvci5wcmltYXJ5JyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5DT0xPUlMuUFJJTUFSWScsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgQ09MT1JfU0VDT05EQVJZOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5jb2xvci5zZWNvbmRhcnknLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkNPTE9SUy5TRUNPTkRBUlknLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIENPTE9SX1RFUlRJQVJZOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5jb2xvci50ZXJ0aWFyeScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQ09MT1JTLlRFUlRJQVJZJyxcbiAgICB0eXBlOiAnY29sb3InLFxuICB9LFxuICBDT0xPUl9TVUNDRVNTOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5jb2xvci5zdWNjZXNzJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5DT0xPUlMuU1VDQ0VTUycsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgQ09MT1JfV0FSTklORzogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuY29sb3Iud2FybmluZycsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQ09MT1JTLldBUk5JTkcnLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIENPTE9SX0FDQ0VOVDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuY29sb3IuYWNjZW50JyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5DT0xPUlMuQUNDRU5UJyxcbiAgICB0eXBlOiAnY29sb3InLFxuICB9LFxuICBDT0xPUl9EQU5HRVI6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmNvbG9yLmRhbmdlcicsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQ09MT1JTLkRBTkdFUicsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgRk9STV9GSUVMRF9CQUNLR1JPVU5EX0NPTE9SOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy50aGVtZS5maWVsZEJhY2tncm91bmRDb2xvcicsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuRk9STV9GSUVMRF9CQUNLR1JPVU5EX0NPTE9SJyxcbiAgICB0eXBlOiAnY29sb3InLFxuICB9LFxuICBGT1JNX0ZJRUxEX0ZPQ1VTX0JBQ0tHUk9VTkRfQ09MT1I6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLnRoZW1lLmZpZWxkRm9jdXNCYWNrZ3JvdW5kQ29sb3InLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkZPUk1fRklFTERfRk9DVVNfQkFDS0dST1VORF9DT0xPUicsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgRk9STV9GSUVMRF9ESVNBQkxFRF9CQUNLR1JPVU5EX0NPTE9SOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy50aGVtZS5maWVsZERpc2FibGVkQmFja2dyb3VuZENvbG9yJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5GT1JNX0ZJRUxEX0RJU0FCTEVEX0JBQ0tHUk9VTkRfQ09MT1InLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIEFORFJPSURfSU5TVEFMTF9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmFuZHJvaWQuaW5zdGFsbC51cmwnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkFORFJPSURfSU5TVEFMTF9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBJT1NfSU5TVEFMTF9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmlvcy5pbnN0YWxsLnVybCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuSU9TX0lOU1RBTExfVVJMJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgREVTS1RPUF9JTlNUQUxMX1VSTDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuZGVza3RvcC5pbnN0YWxsLnVybCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuREVTS1RPUF9JTlNUQUxMX1VSTCcsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIERCX1RJTUVaT05FOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5wZXJzaXN0ZW5jZS5kYi50aW1lem9uZScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuREJfVElNRVpPTkUnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGlzVHJhbnNpZW50OiB0cnVlLCAvLyBPbmx5IG9uIHNlcnZlciwgY2Fubm90IGJlIHNldFxuICB9LFxuICBBQ0NPVU5UX0xBVF9MT05HX0ZPUk1BVF9FTkFCTEU6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmFjY291bnQubGF0TG9uZ0Zvcm1hdC5lbmFibGUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkFDQ09VTlQuRU5BQkxFX0xBVExPTkdfRk9STUFUJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICB9LFxuICBBQ0NPVU5UX1JFQURPTkxZOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5hY2NvdW50LnJlYWRPbmx5JyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5BQ0NPVU5ULlJFQURPTkxZJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICBpc1RyYW5zaWVudDogdHJ1ZSxcbiAgfSxcbn0pO1xuIl19
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvY29uZmlnL2NvcmUuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd0RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLElBQUksRUFBdUI7UUFDekIsR0FBRyxFQUFFLGNBQWM7UUFDbkIsS0FBSyxFQUFFLDRCQUE0QjtRQUNuQyxJQUFJLEVBQUUsUUFBUTtLQUNmO0lBQ0QsT0FBTyxFQUF1QjtRQUM1QixHQUFHLEVBQUUsaUJBQWlCO1FBQ3RCLEtBQUssRUFBRSwrQkFBK0I7UUFDdEMsSUFBSSxFQUFFLFFBQVE7S0FDZjtJQUNELGNBQWMsRUFBdUI7UUFDbkMsR0FBRyxFQUFFLHVCQUF1QjtRQUM1QixLQUFLLEVBQUUsc0NBQXNDO1FBQzdDLElBQUksRUFBRSxNQUFNO1FBQ1osTUFBTSxFQUFFLFdBQVc7S0FDcEI7SUFDRCx1QkFBdUIsRUFBdUI7UUFDNUMsR0FBRyxFQUFFLDhCQUE4QjtRQUNuQyxLQUFLLEVBQUUsOENBQThDO1FBQ3JELElBQUksRUFBRSxNQUFNO1FBQ1osTUFBTSxFQUFFO1lBQ047Z0JBQ0UsR0FBRyxFQUFFLFFBQVE7Z0JBQ2IsS0FBSyxFQUFFLDZCQUE2QjthQUNyQztZQUNEO2dCQUNFLEdBQUcsRUFBRSxNQUFNO2dCQUNYLEtBQUssRUFBRSwyQkFBMkI7YUFDbkM7WUFDRDtnQkFDRSxHQUFHLEVBQUUsSUFBSTtnQkFDVCxLQUFLLEVBQUUseUJBQXlCO2FBQ2pDO1NBQ0Y7S0FDRjtJQUNEOztPQUVHO0lBQ0gsYUFBYTtJQUNiLCtCQUErQixFQUF1QjtRQUNwRCxHQUFHLEVBQUUsc0NBQXNDO1FBQzNDLEtBQUssRUFBRSxxREFBcUQ7UUFDNUQs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ZjtJQUNELGVBQWUsRUFBdUI7UUFDcEMsR0FBRyxFQUFFLHlCQUF5QjtRQUM5QixLQUFLLEVBQUUsdUNBQXVDO1FBQzlDLElBQUksRUFBRSxRQUFRO0tBQ2Y7SUFDRCxtQkFBbUIsRUFBdUI7UUFDeEMsR0FBRyxFQUFFLDZCQUE2QjtRQUNsQyxLQUFLLEVBQUUsMkNBQTJDO1FBQ2xELElBQUksRUFBRSxRQUFRO0tBQ2Y7SUFDRCxXQUFXLEVBQXVCO1FBQ2hDLEdBQUcsRUFBRSxpQ0FBaUM7UUFDdEMsS0FBSyxFQUFFLG1DQUFtQztRQUMxQyxJQUFJLEVBQUUsUUFBUTtRQUNkLFdBQVcsRUFBRSxJQUFJLEVBQUUsZ0NBQWdDO0tBQ3BEO0lBQ0QsOEJBQThCLEVBQXVCO1FBQ25ELEdBQUcsRUFBRSxzQ0FBc0M7UUFDM0MsS0FBSyxFQUFFLHFEQUFxRDtRQUM1RCxJQUFJLEVBQUUsU0FBUztRQUNmLFlBQVksRUFBRSxJQUFJO0tBQ25CO0lBQ0QsZ0JBQWdCLEVBQXVCO1FBQ3JDLEdBQUcsRUFBRSwwQkFBMEI7UUFDL0IsS0FBSyxFQUFFLHdDQUF3QztRQUMvQyxJQUFJLEVBQUUsU0FBUztRQUNmLFlBQVksRUFBRSxLQUFLO1FBQ25CLFdBQVcsRUFBRSxJQUFJO0tBQ2xCO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogcmVuYW1lIHRvIENPTkZJR19PUFRJT05TX01BUFxuLy8gdGhlbiBkZWNsYXJlIGEgdHlwZSBsaWtlIHRoaXMgOlxuLy8gPiBleHBvcnQgZGVjbGFyZSB0eXBlIENvbmZpZ09wdGlvbnMgPSBrZXkgb2YgQ09ORklHX09QVElPTlNfTUFQXG5pbXBvcnQgeyBGb3JtRmllbGREZWZpbml0aW9uIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Zvcm0vZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgQVBQX0xPQ0FMRVMgfSBmcm9tICcuLi9tb2RlbC9zZXR0aW5ncy5tb2RlbCc7XG5pbXBvcnQgeyBBdXRoVG9rZW5UeXBlIH0gZnJvbSAnLi4vbmV0d29yay50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBDT1JFX0NPTkZJR19PUFRJT05TID0gT2JqZWN0LmZyZWV6ZSh7XG4gIExPR086IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmxvZ28nLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkxPR08nLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBGQVZJQ09OOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5mYXZpY29uJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5GQVZJQ09OJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgREVGQVVMVF9MT0NBTEU6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmRlZmF1bHRMb2NhbGUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkRFRkFVTFRfTE9DQUxFJyxcbiAgICB0eXBlOiAnZW51bScsXG4gICAgdmFsdWVzOiBBUFBfTE9DQUxFUyxcbiAgfSxcbiAgREVGQVVMVF9MQVRfTE9OR19GT1JNQVQ6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmRlZmF1bHRMYXRMb25nRm9ybWF0JyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5ERUZBVUxUX0xBVExPTkdfRk9STUFUJyxcbiAgICB0eXBlOiAnZW51bScsXG4gICAgdmFsdWVzOiBbXG4gICAgICB7XG4gICAgICAgIGtleTogJ0RETU1TUycsXG4gICAgICAgIHZhbHVlOiAnQ09NTU9OLkxBVF9MT05HLkVOVU0uRERNTVNTJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0RETU0nLFxuICAgICAgICB2YWx1ZTogJ0NPTU1PTi5MQVRfTE9ORy5FTlVNLkRETU0nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnREQnLFxuICAgICAgICB2YWx1ZTogJ0NPTU1PTi5MQVRfTE9ORy5FTlVNLkREJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFVzZSBgQUNDT1VOVF9MQVRfTE9OR19GT1JNQVRfRU5BQkxFYCBpbnN0ZWFkXG4gICAqL1xuICAvL0BkZXByZWNhdGVkXG4gIERFRkFVTFRfTEFUX0xPTkdfRk9STUFUX0VOQUJMRUQ6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmRlZmF1bHRMYXRMb25nRm9ybWF0LmVuYWJsZWQnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkVOQUJMRV9ERUZBVUxUX0xBVExPTkdfRk9STUFUJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVmYXVsdFZhbHVlOiB0cnVlLCAvLyBJbXBvcnRhbnQsIGZvciBjb21wYXRpYmlsaXR5IHJlYXNvbiBhZnRlciBkZXByZWNhdGlvblxuICB9LFxuICBSRUdJU1RSQVRJT05fRU5BQkxFOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5yZWdpc3RyYXRpb24uZW5hYmxlJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5IT01FLkVOQUJMRV9SRUdJU1RSQVRJT04nLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZWZhdWx0VmFsdWU6IHRydWUsXG4gIH0sXG4gIEFVVEhfVE9LRU5fVFlQRTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuYXV0aC50b2tlbi50eXBlJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5BVVRIX1RPS0VOX1RZUEVfUExBQ0VIT0xERVInLFxuICAgIHR5cGU6ICdlbnVtJyxcbiAgICB2YWx1ZXM6IFtcbiAgICAgIHtcbiAgICAgICAga2V5OiA8QXV0aFRva2VuVHlwZT4ndG9rZW4nLFxuICAgICAgICB2YWx1ZTogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5BVVRIX1RPS0VOX1RZUEUuVE9LRU4nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiA8QXV0aFRva2VuVHlwZT4nYmFzaWMnLFxuICAgICAgICB2YWx1ZTogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5BVVRIX1RPS0VOX1RZUEUuQkFTSUMnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiA8QXV0aFRva2VuVHlwZT4nYmFzaWMtYW5kLXRva2VuJyxcbiAgICAgICAgdmFsdWU6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQVVUSF9UT0tFTl9UWVBFLkJBU0lDX0FORF9UT0tFTicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgZGVmYXVsdFZhbHVlOiA8QXV0aFRva2VuVHlwZT4ndG9rZW4nLFxuICB9LFxuICBBVVRIX1JFU0VUX1BBU1NXT1JEX0VOQUJMRTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuYXV0aC5yZXNldC5lbmFibGUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuQ0hBTkdFX1BBU1NXT1JEJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICB9LFxuICBBVVRIX0FQSV9UT0tFTl9FTkFCTEVEOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5hdXRoLmFwaS50b2tlbi5lbmFibGVkJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5FTkFCTEVfQVVUSF9BUElfVE9LRU5TJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICBpc1RyYW5zaWVudDogdHJ1ZSxcbiAgfSxcbiAgQVVUSF9BUElfVE9LRU5fU0NPUEVfRU5BQkxFRDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuYXV0aC5hcGkudG9rZW4uc2NvcGUuZW5hYmxlZCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuRU5BQkxFX0FVVEhfQVBJX1RPS0VOU19TQ09QRScsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgaXNUcmFuc2llbnQ6IHRydWUsXG4gIH0sXG4gIERFRkFVTFRfQVVUSF9BUElfVE9LRU5fU0NPUEU6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmF1dGguYXBpLnRva2VuLnNjb3BlLmRlZmF1bHQnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkRFRkFVTFRfQVVUSF9BUElfVE9LRU5fU0NPUEUnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGRlZmF1bHRWYWx1ZTogJ3JlYWRfYXBpJyxcbiAgICBpc1RyYW5zaWVudDogdHJ1ZSxcbiAgfSxcbiAgR1JBVkFUQVJfRU5BQkxFOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5ncmF2YXRhci5lbmFibGUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkVOQUJMRV9HUkFWQVRBUicsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gIH0sXG4gIEdSQVZBVEFSX1VSTDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuZ3JhdmF0YXIudXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5HUkFWQVRBUl9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGRlZmF1bHRWYWx1ZTogJ2h0dHBzOi8vd3d3LmdyYXZhdGFyLmNvbS9hdmF0YXIve21kNX0nLFxuICB9LFxuICBURVNUSU5HOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy50ZXN0aW5nLmVuYWJsZScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuVEVTVElORycsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICB9LFxuICBBUFBfTUlOX1ZFUlNJT046IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmFwcC52ZXJzaW9uLm1pbicsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQVBQX01JTl9WRVJTSU9OJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgSEVMUF9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmhlbHAudXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5IRUxQX1VSTCcsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIEZPUlVNX1VSTDogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuZm9ydW0udXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5GT1JVTV9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBSRVBPUlRfSVNTVUVfVVJMOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5yZXBvcnRJc3N1ZS51cmwnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLlJFUE9SVF9JU1NVRV9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBQUklWQUNZX1BPTElDWV9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLnBvbGljeS51cmwnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLlBSSVZBQ1lfUE9MSUNZX1VSTCcsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIFRFUk1TX09GX1VTRV9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLnRlcm1zT2ZVc2UudXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5URVJNU19PRl9VU0VfVVJMJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgTE9HT19MQVJHRTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMubG9nby5sYXJnZScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuSE9NRS5MT0dPX0xBUkdFJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgTUVOVV9JVEVNUzogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMubWVudS5pdGVtcycsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuTUVOVS5JVEVNUycsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gICAgLy8gLS0gRk9SIERFVlxuICAgIC8qLGRlZmF1bHRWYWx1ZTogSlNPTi5zdHJpbmdpZnkoW1xuICAgICAgICB7dGl0bGU6IFwiSXRlbSAjMVwiLCBwYXRoOiBcIi9zZXR0aW5nc1wiLCBpY29uOiBcInBlb3BsZVwiLCBhZnRlcjogXCJNRU5VLkhPTUVcIn0sXG4gICAgICAgIHt0aXRsZTogXCJJdGVtICMyXCIsIHBhdGg6IFwiL3NldHRpbmdzXCIsIGljb246IFwicGVvcGxlXCIsIGJlZm9yZTogXCJNRU5VLkxPR09VVFwifVxuICAgIF0pKi9cbiAgfSxcbiAgSE9NRV9QQVJUTkVSU19ERVBBUlRNRU5UUzogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMucGFydG5lci5kZXBhcnRtZW50cycsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuSE9NRS5QQVJUTkVSX0RFUEFSVE1FTlRTJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgSE9NRV9CQUNLR1JPVU5EX0lNQUdFOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5iYWNrZ3JvdW5kLmltYWdlcycsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuSE9NRS5CQUNLR1JPVU5EX0lNQUdFUycsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIEhPTUVfRkVFRF9FTkFCTEU6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmhvbWUuZmVlZC5lbmFibGUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuRkVFRF9FTkFCTEUnLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICB9LFxuICBIT01FX0ZFRURfVVJMUzogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuaG9tZS5mZWVkLnVybHMnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuRkVFRF9VUkxTJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgSE9NRV9GRUVEX01BWF9BR0VfSU5fTU9OVEhTOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5ob21lLmZlZWQubWF4QWdlSW5Nb250aHMnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkhPTUUuRkVFRF9NQVhfQUdFX0lOX01PTlRIUycsXG4gICAgdHlwZTogJ2ludGVnZXInLFxuICAgIGRlZmF1bHRWYWx1ZTogLTEsXG4gIH0sXG4gIEhPTUVfRkVFRF9NQVhfQ09OVEVOVF9MRU5HVEg6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmhvbWUuZmVlZC5tYXhDb250ZW50TGVuZ3RoJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5IT01FLkZFRURfTUFYX0NPTlRFTlRfTEVOR1RIJyxcbiAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgZGVmYXVsdFZhbHVlOiAtMSxcbiAgfSxcbiAgQ09MT1JfUFJJTUFSWTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuY29sb3IucHJpbWFyeScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQ09MT1JTLlBSSU1BUlknLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIENPTE9SX1NFQ09OREFSWTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuY29sb3Iuc2Vjb25kYXJ5JyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5DT0xPUlMuU0VDT05EQVJZJyxcbiAgICB0eXBlOiAnY29sb3InLFxuICB9LFxuICBDT0xPUl9URVJUSUFSWTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuY29sb3IudGVydGlhcnknLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkNPTE9SUy5URVJUSUFSWScsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgQ09MT1JfU1VDQ0VTUzogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuY29sb3Iuc3VjY2VzcycsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQ09MT1JTLlNVQ0NFU1MnLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIENPTE9SX1dBUk5JTkc6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmNvbG9yLndhcm5pbmcnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkNPTE9SUy5XQVJOSU5HJyxcbiAgICB0eXBlOiAnY29sb3InLFxuICB9LFxuICBDT0xPUl9BQ0NFTlQ6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmNvbG9yLmFjY2VudCcsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQ09MT1JTLkFDQ0VOVCcsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgQ09MT1JfREFOR0VSOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5jb2xvci5kYW5nZXInLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkNPTE9SUy5EQU5HRVInLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIEZPUk1fRklFTERfQkFDS0dST1VORF9DT0xPUjogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMudGhlbWUuZmllbGRCYWNrZ3JvdW5kQ29sb3InLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkZPUk1fRklFTERfQkFDS0dST1VORF9DT0xPUicsXG4gICAgdHlwZTogJ2NvbG9yJyxcbiAgfSxcbiAgRk9STV9GSUVMRF9GT0NVU19CQUNLR1JPVU5EX0NPTE9SOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy50aGVtZS5maWVsZEZvY3VzQmFja2dyb3VuZENvbG9yJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5GT1JNX0ZJRUxEX0ZPQ1VTX0JBQ0tHUk9VTkRfQ09MT1InLFxuICAgIHR5cGU6ICdjb2xvcicsXG4gIH0sXG4gIEZPUk1fRklFTERfRElTQUJMRURfQkFDS0dST1VORF9DT0xPUjogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMudGhlbWUuZmllbGREaXNhYmxlZEJhY2tncm91bmRDb2xvcicsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuRk9STV9GSUVMRF9ESVNBQkxFRF9CQUNLR1JPVU5EX0NPTE9SJyxcbiAgICB0eXBlOiAnY29sb3InLFxuICB9LFxuICBBTkRST0lEX0lOU1RBTExfVVJMOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5hbmRyb2lkLmluc3RhbGwudXJsJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5BTkRST0lEX0lOU1RBTExfVVJMJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSxcbiAgSU9TX0lOU1RBTExfVVJMOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5pb3MuaW5zdGFsbC51cmwnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLklPU19JTlNUQUxMX1VSTCcsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0sXG4gIERFU0tUT1BfSU5TVEFMTF9VUkw6IDxGb3JtRmllbGREZWZpbml0aW9uPntcbiAgICBrZXk6ICdzdW1hcmlzLmRlc2t0b3AuaW5zdGFsbC51cmwnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkRFU0tUT1BfSU5TVEFMTF9VUkwnLFxuICAgIHR5cGU6ICdzdHJpbmcnLFxuICB9LFxuICBEQl9USU1FWk9ORTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMucGVyc2lzdGVuY2UuZGIudGltZXpvbmUnLFxuICAgIGxhYmVsOiAnQ09ORklHVVJBVElPTi5PUFRJT05TLkRCX1RJTUVaT05FJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICBpc1RyYW5zaWVudDogdHJ1ZSwgLy8gT25seSBvbiBzZXJ2ZXIsIGNhbm5vdCBiZSBzZXRcbiAgfSxcbiAgQUNDT1VOVF9MQVRfTE9OR19GT1JNQVRfRU5BQkxFOiA8Rm9ybUZpZWxkRGVmaW5pdGlvbj57XG4gICAga2V5OiAnc3VtYXJpcy5hY2NvdW50LmxhdExvbmdGb3JtYXQuZW5hYmxlJyxcbiAgICBsYWJlbDogJ0NPTkZJR1VSQVRJT04uT1BUSU9OUy5BQ0NPVU5ULkVOQUJMRV9MQVRMT05HX0ZPUk1BVCcsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogdHJ1ZSxcbiAgfSxcbiAgQUNDT1VOVF9SRUFET05MWTogPEZvcm1GaWVsZERlZmluaXRpb24+e1xuICAgIGtleTogJ3N1bWFyaXMuYWNjb3VudC5yZWFkT25seScsXG4gICAgbGFiZWw6ICdDT05GSUdVUkFUSU9OLk9QVElPTlMuQUNDT1VOVC5SRUFET05MWScsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgaXNUcmFuc2llbnQ6IHRydWUsXG4gIH0sXG59KTtcbiJdfQ==
@@ -31,6 +31,11 @@ export class FeedsComponent {
31
31
  feedUrls$ = this._state.select('feedUrls');
32
32
  hasFeeds$ = this._state.select('hasFeeds');
33
33
  debug = false;
34
+ showHeader = true;
35
+ headerColor = 'secondary';
36
+ cardColor = 'light-transparent';
37
+ shape = 'legacy';
38
+ class = '';
34
39
  set feeds(value) {
35
40
  this._state.set('feeds', () => value);
36
41
  }
@@ -46,11 +51,18 @@ export class FeedsComponent {
46
51
  get hasFeeds() {
47
52
  return this._state.get('hasFeeds');
48
53
  }
49
- showHeader = true;
50
- headerColor = 'secondary';
51
- cardColor = 'light-transparent';
52
- shape = 'legacy';
53
- class = '';
54
+ set maxAgeInMonths(value) {
55
+ this._state.set('maxAgeInMonths', () => value);
56
+ }
57
+ get maxAgeInMonths() {
58
+ return this._state.get('maxAgeInMonths');
59
+ }
60
+ set maxContentLength(value) {
61
+ this._state.set('maxContentLength', () => value);
62
+ }
63
+ get maxContentLength() {
64
+ return this._state.get('maxContentLength');
65
+ }
54
66
  get hostClass() {
55
67
  const classes = [this.class];
56
68
  if (this.shape) {
@@ -58,9 +70,6 @@ export class FeedsComponent {
58
70
  }
59
71
  return classes.filter((cls) => cls).join(' ');
60
72
  }
61
- get borderRadius() {
62
- return this.shape === 'round' ? '12px' : '4px';
63
- }
64
73
  constructor(environment, feedService) {
65
74
  this.environment = environment;
66
75
  this.feedService = feedService;
@@ -75,16 +84,11 @@ export class FeedsComponent {
75
84
  //tap((feeds) => console.debug('[feed-component] feeds', feeds))
76
85
  ));
77
86
  }
78
- // Initial state
79
- this._state.set({
80
- maxAgeInMonths: this.environment.feed?.maxAgeInMonths ?? -1 /* all */,
81
- maxContentLength: this.environment.feed?.maxContentLength ?? -1 /* no max */,
82
- });
83
- // DEBUG
84
- this.debug = !environment.production;
85
87
  }
86
88
  ngOnInit() {
87
89
  this.feedUrls = this.feedUrls ?? null; // Should set the feedUrls, in order to trigger the select in constructor
90
+ this.maxAgeInMonths = this.maxAgeInMonths ?? this.environment.feed?.maxAgeInMonths ?? -1;
91
+ this.maxContentLength = this.maxContentLength ?? this.environment.feed?.maxContentLength ?? -1;
88
92
  }
89
93
  ngOnDestroy() {
90
94
  this._state.ngOnDestroy();
@@ -122,11 +126,11 @@ export class FeedsComponent {
122
126
  return [];
123
127
  }
124
128
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeedsComponent, deps: [{ token: ENVIRONMENT }, { token: APP_FEED_SERVICE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
125
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FeedsComponent, selector: "app-feed", inputs: { debug: "debug", feeds: "feeds", feedUrls: "feedUrls", showHeader: "showHeader", headerColor: "headerColor", cardColor: "cardColor", shape: "shape", class: "class" }, host: { properties: { "class": "this.hostClass", "class.round": "this.borderRadius" } }, providers: [RxState], ngImport: i0, template: "@let feeds = feeds$ | async;\n\n@if (debug) {\n <app-debug [title]=\"'Feed'\">\n <p>\n hasFeeds?: {{ hasFeeds$ | async }}\n <br />\n feedUrls: {{ feedUrls$ | async | json }}\n <br />\n shape: {{ shape }}\n </p>\n </app-debug>\n}\n\n@if (feeds | isNotEmptyArray) {\n <!-- top header -->\n @if (showHeader && (feeds | arrayFirst); as feed) {\n <ion-item lines=\"none\" [color]=\"headerColor\" class=\"feed-header shape-{{ shape }}\">\n <ion-icon slot=\"start\" name=\"megaphone\"></ion-icon>\n <ion-label>\n <b>{{ feed.title || ('SOCIAL.FEED.NEWS' | translate) }}</b>\n </ion-label>\n <ion-button slot=\"end\" fill=\"clear\" (click)=\"openFeedHome()\" shape=\"\">\n <ion-label translate>SOCIAL.FEED.SHOW_ALL_FEED</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-item>\n }\n\n <div class=\"feed-content shape-{{ shape }} ion-no-padding\" [class.has-header]=\"showHeader\">\n <!-- feeds -->\n @for (feed of feeds; track feed.feed_url; let firstFeed = $first; let lastFeed = $last) {\n <!-- items -->\n @for (item of feed.items; track item.id; let firstItem = $first; let lastItem = $last) {\n <ion-card\n [class.first]=\"firstFeed && firstItem\"\n [class.last]=\"lastFeed && lastItem\"\n [color]=\"cardColor !== 'light-transparent' ? cardColor : undefined\"\n >\n <ion-card-header>\n <ion-card-subtitle style=\"vertical-align: middle\">\n <!-- Authors -->\n @for (author of item.authors || feed.authors; track author) {\n @if (author.name || author.avatar) {\n <ion-chip (click)=\"openUrl(author.url)\" tappable>\n @if (author.avatar) {\n <ion-avatar>\n <ion-img [src]=\"author.avatar\" [alt]=\"author.name\"></ion-img>\n </ion-avatar>\n }\n @if (author.name) {\n <ion-label class=\"author\">{{ author.name }}</ion-label>\n }\n </ion-chip>\n }\n }\n <ion-note class=\"ion-float-end\">\n <small>{{ item.date_published | dateFromNow }}</small>\n </ion-note>\n </ion-card-subtitle>\n\n <!-- title -->\n <ion-card-title (click)=\"openUrl(item.url || feed.feed_url)\" tappable>{{ item?.title }}</ion-card-title>\n\n <!-- tags -->\n @let tags = item | map: getTags;\n @if (tags | isNotEmptyArray) {\n <ion-text class=\"tags\">\n @for (tag of tags; track tag; let last = $last) {\n <a (click)=\"openTag(feed, tag)\" tappable>\n <ion-text>#{{ tag }}</ion-text>\n </a>\n @if (!last) {\n &nbsp;\n }\n }\n </ion-text>\n }\n </ion-card-header>\n\n <!-- Feed content -->\n <ion-card-content>\n <ion-text [feed]=\"item.url || feed.feed_url\">\n @if (item.content_html) {\n <p [innerHTML]=\"item.content_html\"></p>\n } @else if (item.content_text) {\n <p [innerText]=\"item.content_text\"></p>\n }\n </ion-text>\n </ion-card-content>\n\n <ion-button (click)=\"openUrl(item.url)\" class=\"ion-float-end\" fill=\"clear\">\n <ion-label>{{ (item.truncated ? 'SOCIAL.FEED.READ_MORE' : 'COMMON.BTN_SHOW') | translate }}</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-card>\n }\n }\n </div>\n}\n", styles: [":host{display:block;height:calc(100% - 10px);--feed-header-height: 48px;--feed-border-radius: 4px;--ion-card-background: rgba(var(--ion-background-color-rgb), .6);-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:10px;margin-inline-end:10px;margin-top:0;margin-bottom:10px;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 1px 5px rgba(0,0,0,.12);border-radius:var(--feed-border-radius);overflow:hidden}:host.shape-round{--feed-border-radius: 12px}ion-button{text-transform:unset;--color: rgba(var(--ion-color-contrast-rgb), .7)}ion-item.feed-header{height:var(--feed-header-height);margin:0;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:var(--feed-border-radius) var(--feed-border-radius) 0 0}ion-item.feed-header ion-icon[slot=start]{-webkit-margin-end:8px;margin-inline-end:8px}.feed-content{height:100%;overflow-y:auto;--margin-bottom: 8px}.feed-content.has-header{height:calc(100% - var(--feed-header-height, 0))}.feed-content ion-card{--top-radius: 4px;--bottom-radius: 4px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);margin:0 0 var(--margin-bottom) 0;border-radius:var(--top-radius) var(--top-radius) var(--bottom-radius) var(--bottom-radius);--ion-card-color-contrast-rgb: var(--ion-color-contrast-rgb, var(--ion-color-dark-rgb, 0, 0, 0));--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card.first{--top-radius: 0}.feed-content ion-card.last{--margin-bottom: 0;--bottom-radius: 0}.feed-content ion-card ion-card-header ion-card-title{--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip{--background: transparent;--border-color: transparent;--border-width: 0}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-avatar{--color: rgba(var(--ion-card-color-contrast-rgb), .6);border:1px solid var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-label{--color: rgba(var(--ion-card-color-contrast-rgb), .8);color:var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-note{--color: rgba(var(--ion-card-color-contrast-rgb), .6);color:var(--color)}.feed-content ion-card ion-card-header .tags{display:inline}.feed-content ion-card ion-card-header .tags a{color:rgba(var(--ion-card-color-contrast-rgb),.6)!important}\n"], dependencies: [{ kind: "component", type: i1.IonAvatar, selector: "ion-avatar" }, { kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i1.IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: i1.IonCardSubtitle, selector: "ion-card-subtitle", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonChip, selector: "ion-chip", inputs: ["color", "disabled", "mode", "outline"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i1.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i1.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i1.IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i3.DebugComponent, selector: "app-debug", inputs: ["titlePrefix", "title", "enable", "expanded"] }, { kind: "directive", type: i4.FeedDirective, selector: "feed,[feed]", inputs: ["feed"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.JsonPipe, name: "json" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.DateFromNowPipe, name: "dateFromNow" }, { kind: "pipe", type: i7.NotEmptyArrayPipe, name: "isNotEmptyArray" }, { kind: "pipe", type: i7.ArrayFirstPipe, name: "arrayFirst" }, { kind: "pipe", type: i8.MapPipe, name: "map" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
129
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FeedsComponent, selector: "app-feed", inputs: { debug: "debug", showHeader: "showHeader", headerColor: "headerColor", cardColor: "cardColor", shape: "shape", class: "class", feeds: "feeds", feedUrls: "feedUrls", maxAgeInMonths: "maxAgeInMonths", maxContentLength: "maxContentLength" }, host: { properties: { "class": "this.hostClass" } }, providers: [RxState], ngImport: i0, template: "@let feeds = feeds$ | async;\n\n@if (debug) {\n <app-debug [title]=\"'Feed'\">\n <p>\n hasFeeds?: {{ hasFeeds$ | async }}\n <br />\n feedUrls: {{ feedUrls$ | async | json }}\n <br />\n shape: {{ shape }}\n </p>\n </app-debug>\n}\n\n@if (feeds | isNotEmptyArray) {\n <!-- top header -->\n @if (showHeader && (feeds | arrayFirst); as feed) {\n <ion-item lines=\"none\" [color]=\"headerColor\" class=\"feed-header shape-{{ shape }}\">\n <ion-icon slot=\"start\" name=\"megaphone\"></ion-icon>\n <ion-label>\n <b>{{ feed.title || ('SOCIAL.FEED.NEWS' | translate) }}</b>\n </ion-label>\n <ion-button slot=\"end\" fill=\"clear\" (click)=\"openFeedHome()\" shape=\"\">\n <ion-label translate>SOCIAL.FEED.SHOW_ALL_FEED</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-item>\n }\n\n <div class=\"feed-content shape-{{ shape }} ion-no-padding\" [class.has-header]=\"showHeader\">\n <!-- feeds -->\n @for (feed of feeds; track feed.feed_url; let firstFeed = $first; let lastFeed = $last) {\n <!-- items -->\n @for (item of feed.items; track item.id; let firstItem = $first; let lastItem = $last) {\n <ion-card\n [class.first]=\"firstFeed && firstItem\"\n [class.last]=\"lastFeed && lastItem\"\n [color]=\"cardColor !== 'light-transparent' ? cardColor : undefined\"\n >\n <ion-card-header>\n <ion-card-subtitle style=\"vertical-align: middle\">\n <!-- Authors -->\n @for (author of item.authors || feed.authors; track author) {\n @if (author.name || author.avatar) {\n <ion-chip (click)=\"openUrl(author.url)\" tappable>\n @if (author.avatar) {\n <ion-avatar>\n <ion-img [src]=\"author.avatar\" [alt]=\"author.name\"></ion-img>\n </ion-avatar>\n }\n @if (author.name) {\n <ion-label class=\"author\">{{ author.name }}</ion-label>\n }\n </ion-chip>\n }\n }\n <ion-note class=\"ion-float-end\">\n <small>{{ item.date_published | dateFromNow }}</small>\n </ion-note>\n </ion-card-subtitle>\n\n <!-- title -->\n <ion-card-title (click)=\"openUrl(item.url || feed.feed_url)\" tappable>{{ item?.title }}</ion-card-title>\n\n <!-- tags -->\n @let tags = item | map: getTags;\n @if (tags | isNotEmptyArray) {\n <ion-text class=\"tags\">\n @for (tag of tags; track tag; let last = $last) {\n <a (click)=\"openTag(feed, tag)\" tappable>\n <ion-text>#{{ tag }}</ion-text>\n </a>\n @if (!last) {\n &nbsp;\n }\n }\n </ion-text>\n }\n </ion-card-header>\n\n <!-- Feed content -->\n <ion-card-content>\n <ion-text [feed]=\"item.url || feed.feed_url\">\n @if (item.content_html) {\n <p [innerHTML]=\"item.content_html\"></p>\n } @else if (item.content_text) {\n <p [innerText]=\"item.content_text\"></p>\n }\n </ion-text>\n </ion-card-content>\n\n <ion-button (click)=\"openUrl(item.url)\" class=\"ion-float-end\" fill=\"clear\">\n <ion-label>{{ (item.truncated ? 'SOCIAL.FEED.READ_MORE' : 'COMMON.BTN_SHOW') | translate }}</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-card>\n }\n }\n </div>\n}\n", styles: [":host{display:block;height:calc(100% - 10px);--feed-header-height: 48px;--feed-border-radius: 4px;--ion-card-background: rgba(var(--ion-background-color-rgb), .6);-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:10px;margin-inline-end:10px;margin-top:0;margin-bottom:10px;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 1px 5px rgba(0,0,0,.12);border-radius:var(--feed-border-radius);overflow:hidden}:host.shape-round{--feed-border-radius: 12px}ion-button{text-transform:unset;--color: rgba(var(--ion-color-contrast-rgb), .7)}ion-item.feed-header{height:var(--feed-header-height);margin:0;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:var(--feed-border-radius) var(--feed-border-radius) 0 0}ion-item.feed-header ion-icon[slot=start]{-webkit-margin-end:8px;margin-inline-end:8px}.feed-content{height:100%;overflow-y:auto;--margin-bottom: 8px}.feed-content.has-header{height:calc(100% - var(--feed-header-height, 0))}.feed-content ion-card{--top-radius: 4px;--bottom-radius: 4px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);margin:0 0 var(--margin-bottom) 0;border-radius:var(--top-radius) var(--top-radius) var(--bottom-radius) var(--bottom-radius);--ion-card-color-contrast-rgb: var(--ion-color-contrast-rgb, var(--ion-color-dark-rgb, 0, 0, 0));--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card.first{--top-radius: 0}.feed-content ion-card.last{--margin-bottom: 0;--bottom-radius: 0}.feed-content ion-card ion-card-header ion-card-title{--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip{--background: transparent;--border-color: transparent;--border-width: 0}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-avatar{--color: rgba(var(--ion-card-color-contrast-rgb), .6);border:1px solid var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-label{--color: rgba(var(--ion-card-color-contrast-rgb), .8);color:var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-note{--color: rgba(var(--ion-card-color-contrast-rgb), .6);color:var(--color)}.feed-content ion-card ion-card-header .tags{display:inline}.feed-content ion-card ion-card-header .tags a{color:rgba(var(--ion-card-color-contrast-rgb),.6)!important}.feed-content ion-card ion-card-content ion-text ::ng-deep img{max-width:100%;height:auto!important}\n"], dependencies: [{ kind: "component", type: i1.IonAvatar, selector: "ion-avatar" }, { kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i1.IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: i1.IonCardSubtitle, selector: "ion-card-subtitle", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonChip, selector: "ion-chip", inputs: ["color", "disabled", "mode", "outline"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i1.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i1.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i1.IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i3.DebugComponent, selector: "app-debug", inputs: ["titlePrefix", "title", "enable", "expanded"] }, { kind: "directive", type: i4.FeedDirective, selector: "feed,[feed]", inputs: ["feed"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.JsonPipe, name: "json" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.DateFromNowPipe, name: "dateFromNow" }, { kind: "pipe", type: i7.NotEmptyArrayPipe, name: "isNotEmptyArray" }, { kind: "pipe", type: i7.ArrayFirstPipe, name: "arrayFirst" }, { kind: "pipe", type: i8.MapPipe, name: "map" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
126
130
  }
127
131
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeedsComponent, decorators: [{
128
132
  type: Component,
129
- args: [{ selector: 'app-feed', providers: [RxState], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let feeds = feeds$ | async;\n\n@if (debug) {\n <app-debug [title]=\"'Feed'\">\n <p>\n hasFeeds?: {{ hasFeeds$ | async }}\n <br />\n feedUrls: {{ feedUrls$ | async | json }}\n <br />\n shape: {{ shape }}\n </p>\n </app-debug>\n}\n\n@if (feeds | isNotEmptyArray) {\n <!-- top header -->\n @if (showHeader && (feeds | arrayFirst); as feed) {\n <ion-item lines=\"none\" [color]=\"headerColor\" class=\"feed-header shape-{{ shape }}\">\n <ion-icon slot=\"start\" name=\"megaphone\"></ion-icon>\n <ion-label>\n <b>{{ feed.title || ('SOCIAL.FEED.NEWS' | translate) }}</b>\n </ion-label>\n <ion-button slot=\"end\" fill=\"clear\" (click)=\"openFeedHome()\" shape=\"\">\n <ion-label translate>SOCIAL.FEED.SHOW_ALL_FEED</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-item>\n }\n\n <div class=\"feed-content shape-{{ shape }} ion-no-padding\" [class.has-header]=\"showHeader\">\n <!-- feeds -->\n @for (feed of feeds; track feed.feed_url; let firstFeed = $first; let lastFeed = $last) {\n <!-- items -->\n @for (item of feed.items; track item.id; let firstItem = $first; let lastItem = $last) {\n <ion-card\n [class.first]=\"firstFeed && firstItem\"\n [class.last]=\"lastFeed && lastItem\"\n [color]=\"cardColor !== 'light-transparent' ? cardColor : undefined\"\n >\n <ion-card-header>\n <ion-card-subtitle style=\"vertical-align: middle\">\n <!-- Authors -->\n @for (author of item.authors || feed.authors; track author) {\n @if (author.name || author.avatar) {\n <ion-chip (click)=\"openUrl(author.url)\" tappable>\n @if (author.avatar) {\n <ion-avatar>\n <ion-img [src]=\"author.avatar\" [alt]=\"author.name\"></ion-img>\n </ion-avatar>\n }\n @if (author.name) {\n <ion-label class=\"author\">{{ author.name }}</ion-label>\n }\n </ion-chip>\n }\n }\n <ion-note class=\"ion-float-end\">\n <small>{{ item.date_published | dateFromNow }}</small>\n </ion-note>\n </ion-card-subtitle>\n\n <!-- title -->\n <ion-card-title (click)=\"openUrl(item.url || feed.feed_url)\" tappable>{{ item?.title }}</ion-card-title>\n\n <!-- tags -->\n @let tags = item | map: getTags;\n @if (tags | isNotEmptyArray) {\n <ion-text class=\"tags\">\n @for (tag of tags; track tag; let last = $last) {\n <a (click)=\"openTag(feed, tag)\" tappable>\n <ion-text>#{{ tag }}</ion-text>\n </a>\n @if (!last) {\n &nbsp;\n }\n }\n </ion-text>\n }\n </ion-card-header>\n\n <!-- Feed content -->\n <ion-card-content>\n <ion-text [feed]=\"item.url || feed.feed_url\">\n @if (item.content_html) {\n <p [innerHTML]=\"item.content_html\"></p>\n } @else if (item.content_text) {\n <p [innerText]=\"item.content_text\"></p>\n }\n </ion-text>\n </ion-card-content>\n\n <ion-button (click)=\"openUrl(item.url)\" class=\"ion-float-end\" fill=\"clear\">\n <ion-label>{{ (item.truncated ? 'SOCIAL.FEED.READ_MORE' : 'COMMON.BTN_SHOW') | translate }}</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-card>\n }\n }\n </div>\n}\n", styles: [":host{display:block;height:calc(100% - 10px);--feed-header-height: 48px;--feed-border-radius: 4px;--ion-card-background: rgba(var(--ion-background-color-rgb), .6);-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:10px;margin-inline-end:10px;margin-top:0;margin-bottom:10px;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 1px 5px rgba(0,0,0,.12);border-radius:var(--feed-border-radius);overflow:hidden}:host.shape-round{--feed-border-radius: 12px}ion-button{text-transform:unset;--color: rgba(var(--ion-color-contrast-rgb), .7)}ion-item.feed-header{height:var(--feed-header-height);margin:0;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:var(--feed-border-radius) var(--feed-border-radius) 0 0}ion-item.feed-header ion-icon[slot=start]{-webkit-margin-end:8px;margin-inline-end:8px}.feed-content{height:100%;overflow-y:auto;--margin-bottom: 8px}.feed-content.has-header{height:calc(100% - var(--feed-header-height, 0))}.feed-content ion-card{--top-radius: 4px;--bottom-radius: 4px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);margin:0 0 var(--margin-bottom) 0;border-radius:var(--top-radius) var(--top-radius) var(--bottom-radius) var(--bottom-radius);--ion-card-color-contrast-rgb: var(--ion-color-contrast-rgb, var(--ion-color-dark-rgb, 0, 0, 0));--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card.first{--top-radius: 0}.feed-content ion-card.last{--margin-bottom: 0;--bottom-radius: 0}.feed-content ion-card ion-card-header ion-card-title{--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip{--background: transparent;--border-color: transparent;--border-width: 0}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-avatar{--color: rgba(var(--ion-card-color-contrast-rgb), .6);border:1px solid var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-label{--color: rgba(var(--ion-card-color-contrast-rgb), .8);color:var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-note{--color: rgba(var(--ion-card-color-contrast-rgb), .6);color:var(--color)}.feed-content ion-card ion-card-header .tags{display:inline}.feed-content ion-card ion-card-header .tags a{color:rgba(var(--ion-card-color-contrast-rgb),.6)!important}\n"] }]
133
+ args: [{ selector: 'app-feed', providers: [RxState], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let feeds = feeds$ | async;\n\n@if (debug) {\n <app-debug [title]=\"'Feed'\">\n <p>\n hasFeeds?: {{ hasFeeds$ | async }}\n <br />\n feedUrls: {{ feedUrls$ | async | json }}\n <br />\n shape: {{ shape }}\n </p>\n </app-debug>\n}\n\n@if (feeds | isNotEmptyArray) {\n <!-- top header -->\n @if (showHeader && (feeds | arrayFirst); as feed) {\n <ion-item lines=\"none\" [color]=\"headerColor\" class=\"feed-header shape-{{ shape }}\">\n <ion-icon slot=\"start\" name=\"megaphone\"></ion-icon>\n <ion-label>\n <b>{{ feed.title || ('SOCIAL.FEED.NEWS' | translate) }}</b>\n </ion-label>\n <ion-button slot=\"end\" fill=\"clear\" (click)=\"openFeedHome()\" shape=\"\">\n <ion-label translate>SOCIAL.FEED.SHOW_ALL_FEED</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-item>\n }\n\n <div class=\"feed-content shape-{{ shape }} ion-no-padding\" [class.has-header]=\"showHeader\">\n <!-- feeds -->\n @for (feed of feeds; track feed.feed_url; let firstFeed = $first; let lastFeed = $last) {\n <!-- items -->\n @for (item of feed.items; track item.id; let firstItem = $first; let lastItem = $last) {\n <ion-card\n [class.first]=\"firstFeed && firstItem\"\n [class.last]=\"lastFeed && lastItem\"\n [color]=\"cardColor !== 'light-transparent' ? cardColor : undefined\"\n >\n <ion-card-header>\n <ion-card-subtitle style=\"vertical-align: middle\">\n <!-- Authors -->\n @for (author of item.authors || feed.authors; track author) {\n @if (author.name || author.avatar) {\n <ion-chip (click)=\"openUrl(author.url)\" tappable>\n @if (author.avatar) {\n <ion-avatar>\n <ion-img [src]=\"author.avatar\" [alt]=\"author.name\"></ion-img>\n </ion-avatar>\n }\n @if (author.name) {\n <ion-label class=\"author\">{{ author.name }}</ion-label>\n }\n </ion-chip>\n }\n }\n <ion-note class=\"ion-float-end\">\n <small>{{ item.date_published | dateFromNow }}</small>\n </ion-note>\n </ion-card-subtitle>\n\n <!-- title -->\n <ion-card-title (click)=\"openUrl(item.url || feed.feed_url)\" tappable>{{ item?.title }}</ion-card-title>\n\n <!-- tags -->\n @let tags = item | map: getTags;\n @if (tags | isNotEmptyArray) {\n <ion-text class=\"tags\">\n @for (tag of tags; track tag; let last = $last) {\n <a (click)=\"openTag(feed, tag)\" tappable>\n <ion-text>#{{ tag }}</ion-text>\n </a>\n @if (!last) {\n &nbsp;\n }\n }\n </ion-text>\n }\n </ion-card-header>\n\n <!-- Feed content -->\n <ion-card-content>\n <ion-text [feed]=\"item.url || feed.feed_url\">\n @if (item.content_html) {\n <p [innerHTML]=\"item.content_html\"></p>\n } @else if (item.content_text) {\n <p [innerText]=\"item.content_text\"></p>\n }\n </ion-text>\n </ion-card-content>\n\n <ion-button (click)=\"openUrl(item.url)\" class=\"ion-float-end\" fill=\"clear\">\n <ion-label>{{ (item.truncated ? 'SOCIAL.FEED.READ_MORE' : 'COMMON.BTN_SHOW') | translate }}</ion-label>\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n </ion-button>\n </ion-card>\n }\n }\n </div>\n}\n", styles: [":host{display:block;height:calc(100% - 10px);--feed-header-height: 48px;--feed-border-radius: 4px;--ion-card-background: rgba(var(--ion-background-color-rgb), .6);-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:10px;margin-inline-end:10px;margin-top:0;margin-bottom:10px;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 1px 5px rgba(0,0,0,.12);border-radius:var(--feed-border-radius);overflow:hidden}:host.shape-round{--feed-border-radius: 12px}ion-button{text-transform:unset;--color: rgba(var(--ion-color-contrast-rgb), .7)}ion-item.feed-header{height:var(--feed-header-height);margin:0;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:var(--feed-border-radius) var(--feed-border-radius) 0 0}ion-item.feed-header ion-icon[slot=start]{-webkit-margin-end:8px;margin-inline-end:8px}.feed-content{height:100%;overflow-y:auto;--margin-bottom: 8px}.feed-content.has-header{height:calc(100% - var(--feed-header-height, 0))}.feed-content ion-card{--top-radius: 4px;--bottom-radius: 4px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);margin:0 0 var(--margin-bottom) 0;border-radius:var(--top-radius) var(--top-radius) var(--bottom-radius) var(--bottom-radius);--ion-card-color-contrast-rgb: var(--ion-color-contrast-rgb, var(--ion-color-dark-rgb, 0, 0, 0));--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card.first{--top-radius: 0}.feed-content ion-card.last{--margin-bottom: 0;--bottom-radius: 0}.feed-content ion-card ion-card-header ion-card-title{--color: rgba(var(--ion-card-color-contrast-rgb), .87)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip{--background: transparent;--border-color: transparent;--border-width: 0}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-avatar{--color: rgba(var(--ion-card-color-contrast-rgb), .6);border:1px solid var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-chip ion-label{--color: rgba(var(--ion-card-color-contrast-rgb), .8);color:var(--color)}.feed-content ion-card ion-card-header ion-card-subtitle ion-note{--color: rgba(var(--ion-card-color-contrast-rgb), .6);color:var(--color)}.feed-content ion-card ion-card-header .tags{display:inline}.feed-content ion-card ion-card-header .tags a{color:rgba(var(--ion-card-color-contrast-rgb),.6)!important}.feed-content ion-card ion-card-content ion-text ::ng-deep img{max-width:100%;height:auto!important}\n"] }]
130
134
  }], ctorParameters: () => [{ type: i9.Environment, decorators: [{
131
135
  type: Inject,
132
136
  args: [ENVIRONMENT]
@@ -137,10 +141,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
137
141
  args: [APP_FEED_SERVICE]
138
142
  }] }], propDecorators: { debug: [{
139
143
  type: Input
140
- }], feeds: [{
141
- type: Input
142
- }], feedUrls: [{
143
- type: Input
144
144
  }], showHeader: [{
145
145
  type: Input
146
146
  }], headerColor: [{
@@ -151,11 +151,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
151
151
  type: Input
152
152
  }], class: [{
153
153
  type: Input
154
+ }], feeds: [{
155
+ type: Input
156
+ }], feedUrls: [{
157
+ type: Input
158
+ }], maxAgeInMonths: [{
159
+ type: Input
160
+ }], maxContentLength: [{
161
+ type: Input
154
162
  }], hostClass: [{
155
163
  type: HostBinding,
156
164
  args: ['class']
157
- }], borderRadius: [{
158
- type: HostBinding,
159
- args: ['class.round']
160
165
  }] } });
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC9mZWVkL2ZlZWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zb2NpYWwvZmVlZC9mZWVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEksT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hFLE9BQU8sRUFBWSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBZSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQWdCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBaUJoRSxNQUFNLE9BQU8sY0FBYztJQXdEUTtJQUNjO0lBeERyQyxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQWdCLENBQUM7SUFDckMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3JDLFFBQVEs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OzRGRHhFYSxjQUFjO2tCQVAxQixTQUFTOytCQUNFLFVBQVUsYUFHVCxDQUFDLE9BQU8sQ0FBQyxtQkFDSCx1QkFBdUIsQ0FBQyxNQUFNOzswQkEwRDVDLE1BQU07MkJBQUMsV0FBVzs7MEJBQ2xCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsZ0JBQWdCO3lDQTlDN0IsS0FBSztzQkFBYixLQUFLO2dCQUVPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBUU8sUUFBUTtzQkFBcEIsS0FBSztnQkFZRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUdGLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxPQUFPO2dCQVloQixZQUFZO3NCQURmLFdBQVc7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbmplY3QsIGluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUnhTdGF0ZSB9IGZyb20gJ0ByeC1hbmd1bGFyL3N0YXRlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBhcnJheURpc3RpbmN0LCBpc05vdEVtcHR5QXJyYXkgfSBmcm9tICcuLi8uLi9zaGFyZWQvZnVuY3Rpb25zJztcbmltcG9ydCB7IEpzb25GZWVkLCBKc29uRmVlZFV0aWxzIH0gZnJvbSAnLi9mZWVkLm1vZGVsJztcbmltcG9ydCB7IERpc2NvdXJzZVV0aWxzIH0gZnJvbSAnLi9kaXNjb3Vyc2UvZGlzY291cnNlLnV0aWxzJztcbmltcG9ydCB7IG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUGxhdGZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9wbGF0Zm9ybS5zZXJ2aWNlJztcbmltcG9ydCB7IEVudmlyb25tZW50LCBFTlZJUk9OTUVOVCB9IGZyb20gJy4uLy4uLy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudC5jbGFzcyc7XG5pbXBvcnQgeyBBcHBDb2xvcnMgfSBmcm9tICcuLi8uLi9zaGFyZWQvdHlwZXMnO1xuaW1wb3J0IHsgQVBQX0ZFRURfU0VSVklDRSwgSUZlZWRTZXJ2aWNlIH0gZnJvbSAnLi9mZWVkLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZlZWRTdGF0ZTxUPiB7XG4gIG1heEFnZUluTW9udGhzOiBudW1iZXI7XG4gIG1heENvbnRlbnRMZW5ndGg6IG51bWJlcjtcbiAgZmVlZFVybHM6IHN0cmluZ1tdO1xuICBmZWVkczogVFtdO1xuICBoYXNGZWVkczogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZlZWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmVlZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZlZWQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbUnhTdGF0ZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGZWVkc0NvbXBvbmVudDxUIGV4dGVuZHMgSnNvbkZlZWQgPSBKc29uRmVlZD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCBfc3RhdGUgPSBuZXcgUnhTdGF0ZTxGZWVkU3RhdGU8VD4+KCk7XG4gIHByb3RlY3RlZCB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG4gIHByb3RlY3RlZCBwbGF0Zm9ybSA9IGluamVjdChQbGF0Zm9ybVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByb3RlY3RlZCB2ZXJzaW9uOiBzdHJpbmc7XG4gIGZlZWRzJCA9IHRoaXMuX3N0YXRlLnNlbGVjdCgnZmVlZHMnKTtcblxuICBmZWVkVXJscyQgPSB0aGlzLl9zdGF0ZS5zZWxlY3QoJ2ZlZWRVcmxzJyk7XG4gIGhhc0ZlZWRzJCA9IHRoaXMuX3N0YXRlLnNlbGVjdCgnaGFzRmVlZHMnKTtcblxuICBASW5wdXQoKSBkZWJ1ZyA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHNldCBmZWVkcyh2YWx1ZTogVFtdKSB7XG4gICAgdGhpcy5fc3RhdGUuc2V0KCdmZWVkcycsICgpID0+IHZhbHVlKTtcbiAgfVxuXG4gIGdldCBmZWVkcygpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGUuZ2V0KCdmZWVkcycpO1xuICB9XG5cbiAgQElucHV0KCkgc2V0IGZlZWRVcmxzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgIHRoaXMuX3N0YXRlLnNldCgnZmVlZFVybHMnLCAoKSA9PiB2YWx1ZSk7XG4gIH1cblxuICBnZXQgZmVlZFVybHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlLmdldCgnZmVlZFVybHMnKTtcbiAgfVxuXG4gIGdldCBoYXNGZWVkcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGUuZ2V0KCdoYXNGZWVkcycpO1xuICB9XG5cbiAgQElucHV0KCkgc2hvd0hlYWRlciA9IHRydWU7XG4gIEBJbnB1dCgpIGhlYWRlckNvbG9yOiBBcHBDb2xvcnMgPSAnc2Vjb25kYXJ5JztcbiAgQElucHV0KCkgY2FyZENvbG9yOiBBcHBDb2xvcnMgfCAnbGlnaHQtdHJhbnNwYXJlbnQnID0gJ2xpZ2h0LXRyYW5zcGFyZW50JztcbiAgQElucHV0KCkgc2hhcGU6ICdyb3VuZCcgfCAnbGVnYWN5JyA9ICdsZWdhY3knO1xuICBASW5wdXQoKSBjbGFzczogc3RyaW5nID0gJyc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc2VzID0gW3RoaXMuY2xhc3NdO1xuXG4gICAgaWYgKHRoaXMuc2hhcGUpIHtcbiAgICAgIGNsYXNzZXMucHVzaChgc2hhcGUtJHt0aGlzLnNoYXBlfWApO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzLmZpbHRlcigoY2xzKSA9PiBjbHMpLmpvaW4oJyAnKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3Mucm91bmQnKVxuICBnZXQgYm9yZGVyUmFkaXVzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcGUgPT09ICdyb3VuZCcgPyAnMTJweCcgOiAnNHB4JztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRU5WSVJPTk1FTlQpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogRW52aXJvbm1lbnQsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChBUFBfRkVFRF9TRVJWSUNFKSBwdWJsaWMgZmVlZFNlcnZpY2U6IElGZWVkU2VydmljZTxUPlxuICApIHtcbiAgICB0aGlzLl9zdGF0ZS5jb25uZWN0KCdoYXNGZWVkcycsIHRoaXMuZmVlZHMkLnBpcGUobWFwKGlzTm90RW1wdHlBcnJheSkpKTtcblxuICAgIGlmICh0aGlzLmZlZWRTZXJ2aWNlKSB7XG4gICAgICB0aGlzLl9zdGF0ZS5jb25uZWN0KFxuICAgICAgICAnZmVlZHMnLFxuICAgICAgICB0aGlzLl9zdGF0ZS5zZWxlY3QoWydmZWVkVXJscycsICdtYXhBZ2VJbk1vbnRocycsICdtYXhDb250ZW50TGVuZ3RoJ10pLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKCh7IGZlZWRVcmxzLCBtYXhBZ2VJbk1vbnRocywgbWF4Q29udGVudExlbmd0aCB9KSA9PlxuICAgICAgICAgICAgdGhpcy5mZWVkU2VydmljZS53YXRjaEFsbCh7XG4gICAgICAgICAgICAgIHVybHM6IGZlZWRVcmxzLFxuICAgICAgICAgICAgICBtYXhBZ2VJbk1vbnRocyxcbiAgICAgICAgICAgICAgbWF4Q29udGVudExlbmd0aCxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKSxcbiAgICAgICAgICBtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKVxuXG4gICAgICAgICAgLy8gREVCVUdcbiAgICAgICAgICAvL3RhcCgoZmVlZHMpID0+IGNvbnNvbGUuZGVidWcoJ1tmZWVkLWNvbXBvbmVudF0gZmVlZHMnLCBmZWVkcykpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gSW5pdGlhbCBzdGF0ZVxuICAgIHRoaXMuX3N0YXRlLnNldCh7XG4gICAgICBtYXhBZ2VJbk1vbnRoczogdGhpcy5lbnZpcm9ubWVudC5mZWVkPy5tYXhBZ2VJbk1vbnRocyA/PyAtMSAvKiBhbGwgKi8sXG4gICAgICBtYXhDb250ZW50TGVuZ3RoOiB0aGlzLmVudmlyb25tZW50LmZlZWQ/Lm1heENvbnRlbnRMZW5ndGggPz8gLTEgLyogbm8gbWF4ICovLFxuICAgIH0pO1xuXG4gICAgLy8gREVCVUdcbiAgICB0aGlzLmRlYnVnID0gIWVudmlyb25tZW50LnByb2R1Y3Rpb247XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZlZWRVcmxzID0gdGhpcy5mZWVkVXJscyA/PyBudWxsOyAvLyBTaG91bGQgc2V0IHRoZSBmZWVkVXJscywgaW4gb3JkZXIgdG8gdHJpZ2dlciB0aGUgc2VsZWN0IGluIGNvbnN0cnVjdG9yXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdGF0ZS5uZ09uRGVzdHJveSgpO1xuICB9XG5cbiAgb3BlbkZlZWRIb21lKGZlZWQ/OiBUKSB7XG4gICAgaWYgKCFmZWVkKSB7XG4gICAgICB0aGlzLmZlZWRzPy5mb3JFYWNoKChmKSA9PiB0aGlzLm9wZW5GZWVkSG9tZShmKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gZmVlZC5ob21lX3BhZ2VfdXJsID8/IERpc2NvdXJzZVV0aWxzLnJlbW92ZUpzb25FeHRlbnNpb24oZmVlZC5mZWVkX3VybCkgPz8gdGhpcy5mZWVkU2VydmljZS5nZXRIb21lVXJsKCk7XG4gICAgaWYgKCF1cmwpIHJldHVybjtcbiAgICByZXR1cm4gdGhpcy5wbGF0Zm9ybS5vcGVuKHVybCk7XG4gIH1cblxuICBvcGVuVXJsKHVybDogc3RyaW5nKSB7XG4gICAgaWYgKCF1cmwpIHJldHVybjtcbiAgICBjb25zdCBmaXhlZFVybCA9IERpc2NvdXJzZVV0aWxzLnJlbW92ZUpzb25FeHRlbnNpb24odXJsKTtcbiAgICByZXR1cm4gdGhpcy5wbGF0Zm9ybS5vcGVuKGZpeGVkVXJsKTtcbiAgfVxuXG4gIG9wZW5UYWcoZmVlZDogVCwgdGFnOiBzdHJpbmcpIHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLmZlZWRTZXJ2aWNlLmdldFRhZ1VybChmZWVkLCB0YWcpO1xuICAgIHJldHVybiB0aGlzLm9wZW5VcmwodXJsKTtcbiAgfVxuXG4gIGdldFRhZ3MoZmVlZE9ySXRlbT86IFQgfCBUWydpdGVtcyddWzBdKSB7XG4gICAgaWYgKEpzb25GZWVkVXRpbHMuaXNKc29uRmVlZChmZWVkT3JJdGVtKSkge1xuICAgICAgcmV0dXJuIGFycmF5RGlzdGluY3QoXG4gICAgICAgIChmZWVkT3JJdGVtLml0ZW1zIHx8IFtdKVxuICAgICAgICAgIC5tYXAoKGl0ZW0pID0+IGl0ZW0udGFncylcbiAgICAgICAgICAuZmlsdGVyKGlzTm90RW1wdHlBcnJheSlcbiAgICAgICAgICAuZmxhdCgpXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoSnNvbkZlZWRVdGlscy5pc0pzb25GZWVkSXRlbShmZWVkT3JJdGVtKSkge1xuICAgICAgcmV0dXJuIGFycmF5RGlzdGluY3QoKGZlZWRPckl0ZW0udGFncyB8fCBbXSkuZmxhdCgpKTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG59XG4iLCJAbGV0IGZlZWRzID0gZmVlZHMkIHwgYXN5bmM7XG5cbkBpZiAoZGVidWcpIHtcbiAgPGFwcC1kZWJ1ZyBbdGl0bGVdPVwiJ0ZlZWQnXCI+XG4gICAgPHA+XG4gICAgICBoYXNGZWVkcz86IHt7IGhhc0ZlZWRzJCB8IGFzeW5jIH19XG4gICAgICA8YnIgLz5cbiAgICAgIGZlZWRVcmxzOiB7eyBmZWVkVXJscyQgfCBhc3luYyB8IGpzb24gfX1cbiAgICAgIDxiciAvPlxuICAgICAgc2hhcGU6IHt7IHNoYXBlIH19XG4gICAgPC9wPlxuICA8L2FwcC1kZWJ1Zz5cbn1cblxuQGlmIChmZWVkcyB8IGlzTm90RW1wdHlBcnJheSkge1xuICA8IS0tIHRvcCBoZWFkZXIgLS0+XG4gIEBpZiAoc2hvd0hlYWRlciAmJiAoZmVlZHMgfCBhcnJheUZpcnN0KTsgYXMgZmVlZCkge1xuICAgIDxpb24taXRlbSBsaW5lcz1cIm5vbmVcIiBbY29sb3JdPVwiaGVhZGVyQ29sb3JcIiBjbGFzcz1cImZlZWQtaGVhZGVyIHNoYXBlLXt7IHNoYXBlIH19XCI+XG4gICAgICA8aW9uLWljb24gc2xvdD1cInN0YXJ0XCIgbmFtZT1cIm1lZ2FwaG9uZVwiPjwvaW9uLWljb24+XG4gICAgICA8aW9uLWxhYmVsPlxuICAgICAgICA8Yj57eyBmZWVkLnRpdGxlIHx8ICgnU09DSUFMLkZFRUQuTkVXUycgfCB0cmFuc2xhdGUpIH19PC9iPlxuICAgICAgPC9pb24tbGFiZWw+XG4gICAgICA8aW9uLWJ1dHRvbiBzbG90PVwiZW5kXCIgZmlsbD1cImNsZWFyXCIgKGNsaWNrKT1cIm9wZW5GZWVkSG9tZSgpXCIgc2hhcGU9XCJcIj5cbiAgICAgICAgPGlvbi1sYWJlbCB0cmFuc2xhdGU+U09DSUFMLkZFRUQuU0hPV19BTExfRkVFRDwvaW9uLWxhYmVsPlxuICAgICAgICA8aW9uLWljb24gc2xvdD1cImVuZFwiIG5hbWU9XCJjaGV2cm9uLWZvcndhcmQtb3V0bGluZVwiPjwvaW9uLWljb24+XG4gICAgICA8L2lvbi1idXR0b24+XG4gICAgPC9pb24taXRlbT5cbiAgfVxuXG4gIDxkaXYgY2xhc3M9XCJmZWVkLWNvbnRlbnQgc2hhcGUte3sgc2hhcGUgfX0gaW9uLW5vLXBhZGRpbmdcIiBbY2xhc3MuaGFzLWhlYWRlcl09XCJzaG93SGVhZGVyXCI+XG4gICAgPCEtLSBmZWVkcyAtLT5cbiAgICBAZm9yIChmZWVkIG9mIGZlZWRzOyB0cmFjayBmZWVkLmZlZWRfdXJsOyBsZXQgZmlyc3RGZWVkID0gJGZpcnN0OyBsZXQgbGFzdEZlZWQgPSAkbGFzdCkge1xuICAgICAgPCEtLSBpdGVtcyAtLT5cbiAgICAgIEBmb3IgKGl0ZW0gb2YgZmVlZC5pdGVtczsgdHJhY2sgaXRlbS5pZDsgbGV0IGZpcnN0SXRlbSA9ICRmaXJzdDsgbGV0IGxhc3RJdGVtID0gJGxhc3QpIHtcbiAgICAgICAgPGlvbi1jYXJkXG4gICAgICAgICAgW2NsYXNzLmZpcnN0XT1cImZpcnN0RmVlZCAmJiBmaXJzdEl0ZW1cIlxuICAgICAgICAgIFtjbGFzcy5sYXN0XT1cImxhc3RGZWVkICYmIGxhc3RJdGVtXCJcbiAgICAgICAgICBbY29sb3JdPVwiY2FyZENvbG9yICE9PSAnbGlnaHQtdHJhbnNwYXJlbnQnID8gY2FyZENvbG9yIDogdW5kZWZpbmVkXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpb24tY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8aW9uLWNhcmQtc3VidGl0bGUgc3R5bGU9XCJ2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlXCI+XG4gICAgICAgICAgICAgIDwhLS0gQXV0aG9ycyAtLT5cbiAgICAgICAgICAgICAgQGZvciAoYXV0aG9yIG9mIGl0ZW0uYXV0aG9ycyB8fCBmZWVkLmF1dGhvcnM7IHRyYWNrIGF1dGhvcikge1xuICAgICAgICAgICAgICAgIEBpZiAoYXV0aG9yLm5hbWUgfHwgYXV0aG9yLmF2YXRhcikge1xuICAgICAgICAgICAgICAgICAgPGlvbi1jaGlwIChjbGljayk9XCJvcGVuVXJsKGF1dGhvci51cmwpXCIgdGFwcGFibGU+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoYXV0aG9yLmF2YXRhcikge1xuICAgICAgICAgICAgICAgICAgICAgIDxpb24tYXZhdGFyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1pbWcgW3NyY109XCJhdXRob3IuYXZhdGFyXCIgW2FsdF09XCJhdXRob3IubmFtZVwiPjwvaW9uLWltZz5cbiAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1hdmF0YXI+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChhdXRob3IubmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxpb24tbGFiZWwgY2xhc3M9XCJhdXRob3JcIj57eyBhdXRob3IubmFtZSB9fTwvaW9uLWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L2lvbi1jaGlwPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8aW9uLW5vdGUgY2xhc3M9XCJpb24tZmxvYXQtZW5kXCI+XG4gICAgICAgICAgICAgICAgPHNtYWxsPnt7IGl0ZW0uZGF0ZV9wdWJsaXNoZWQgfCBkYXRlRnJvbU5vdyB9fTwvc21hbGw+XG4gICAgICAgICAgICAgIDwvaW9uLW5vdGU+XG4gICAgICAgICAgICA8L2lvbi1jYXJkLXN1YnRpdGxlPlxuXG4gICAgICAgICAgICA8IS0tIHRpdGxlIC0tPlxuICAgICAgICAgICAgPGlvbi1jYXJkLXRpdGxlIChjbGljayk9XCJvcGVuVXJsKGl0ZW0udXJsIHx8IGZlZWQuZmVlZF91cmwpXCIgdGFwcGFibGU+e3sgaXRlbT8udGl0bGUgfX08L2lvbi1jYXJkLXRpdGxlPlxuXG4gICAgICAgICAgICA8IS0tIHRhZ3MgLS0+XG4gICAgICAgICAgICBAbGV0IHRhZ3MgPSBpdGVtIHwgbWFwOiBnZXRUYWdzO1xuICAgICAgICAgICAgQGlmICh0YWdzIHwgaXNOb3RFbXB0eUFycmF5KSB7XG4gICAgICAgICAgICAgIDxpb24tdGV4dCBjbGFzcz1cInRhZ3NcIj5cbiAgICAgICAgICAgICAgICBAZm9yICh0YWcgb2YgdGFnczsgdHJhY2sgdGFnOyBsZXQgbGFzdCA9ICRsYXN0KSB7XG4gICAgICAgICAgICAgICAgICA8YSAoY2xpY2spPVwib3BlblRhZyhmZWVkLCB0YWcpXCIgdGFwcGFibGU+XG4gICAgICAgICAgICAgICAgICAgIDxpb24tdGV4dD4je3sgdGFnIH19PC9pb24tdGV4dD5cbiAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgIEBpZiAoIWxhc3QpIHtcbiAgICAgICAgICAgICAgICAgICAgJm5ic3A7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2lvbi10ZXh0PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvaW9uLWNhcmQtaGVhZGVyPlxuXG4gICAgICAgICAgPCEtLSBGZWVkIGNvbnRlbnQgLS0+XG4gICAgICAgICAgPGlvbi1jYXJkLWNvbnRlbnQ+XG4gICAgICAgICAgICA8aW9uLXRleHQgW2ZlZWRdPVwiaXRlbS51cmwgfHwgZmVlZC5mZWVkX3VybFwiPlxuICAgICAgICAgICAgICBAaWYgKGl0ZW0uY29udGVudF9odG1sKSB7XG4gICAgICAgICAgICAgICAgPHAgW2lubmVySFRNTF09XCJpdGVtLmNvbnRlbnRfaHRtbFwiPjwvcD5cbiAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoaXRlbS5jb250ZW50X3RleHQpIHtcbiAgICAgICAgICAgICAgICA8cCBbaW5uZXJUZXh0XT1cIml0ZW0uY29udGVudF90ZXh0XCI+PC9wPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2lvbi10ZXh0PlxuICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cblxuICAgICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJvcGVuVXJsKGl0ZW0udXJsKVwiIGNsYXNzPVwiaW9uLWZsb2F0LWVuZFwiIGZpbGw9XCJjbGVhclwiPlxuICAgICAgICAgICAgPGlvbi1sYWJlbD57eyAoaXRlbS50cnVuY2F0ZWQgPyAnU09DSUFMLkZFRUQuUkVBRF9NT1JFJyA6ICdDT01NT04uQlROX1NIT1cnKSB8IHRyYW5zbGF0ZSB9fTwvaW9uLWxhYmVsPlxuICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJlbmRcIiBuYW1lPVwiY2hldnJvbi1mb3J3YXJkLW91dGxpbmVcIj48L2lvbi1pY29uPlxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgPC9pb24tY2FyZD5cbiAgICAgIH1cbiAgICB9XG4gIDwvZGl2PlxufVxuIl19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC9mZWVkL2ZlZWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zb2NpYWwvZmVlZC9mZWVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEksT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hFLE9BQU8sRUFBWSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBZSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQWdCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBaUJoRSxNQUFNLE9BQU8sY0FBYztJQWtFUTtJQUNjO0lBbEVyQyxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQWdCLENBQUM7SUFDckMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3JDLFFBQVEs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QUMsRUFBRSxDQUFDO1lBQzdDLE9BQU8sYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7d0dBeElVLGNBQWMsa0JBa0VmLFdBQVcsYUFDQyxnQkFBZ0I7NEZBbkUzQixjQUFjLGdWQUhkLENBQUMsT0FBTyxDQUFDLDBCQ3pCdEIsMHlIQW9HQTs7NEZEeEVhLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsVUFBVSxhQUdULENBQUMsT0FBTyxDQUFDLG1CQUNILHVCQUF1QixDQUFDLE1BQU07OzBCQW9FNUMsTUFBTTsyQkFBQyxXQUFXOzswQkFDbEIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQkFBZ0I7eUNBeEQ3QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFTyxLQUFLO3NCQUFqQixLQUFLO2dCQVFPLFFBQVE7c0JBQXBCLEtBQUs7Z0JBWU8sY0FBYztzQkFBMUIsS0FBSztnQkFRTyxnQkFBZ0I7c0JBQTVCLEtBQUs7Z0JBU0YsU0FBUztzQkFEWixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5qZWN0LCBpbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJ4U3RhdGUgfSBmcm9tICdAcngtYW5ndWxhci9zdGF0ZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYXJyYXlEaXN0aW5jdCwgaXNOb3RFbXB0eUFycmF5IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Z1bmN0aW9ucyc7XG5pbXBvcnQgeyBKc29uRmVlZCwgSnNvbkZlZWRVdGlscyB9IGZyb20gJy4vZmVlZC5tb2RlbCc7XG5pbXBvcnQgeyBEaXNjb3Vyc2VVdGlscyB9IGZyb20gJy4vZGlzY291cnNlL2Rpc2NvdXJzZS51dGlscyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvcGxhdGZvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudCwgRU5WSVJPTk1FTlQgfSBmcm9tICcuLi8uLi8uLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQuY2xhc3MnO1xuaW1wb3J0IHsgQXBwQ29sb3JzIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3R5cGVzJztcbmltcG9ydCB7IEFQUF9GRUVEX1NFUlZJQ0UsIElGZWVkU2VydmljZSB9IGZyb20gJy4vZmVlZC5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBGZWVkU3RhdGU8VD4ge1xuICBtYXhBZ2VJbk1vbnRoczogbnVtYmVyO1xuICBtYXhDb250ZW50TGVuZ3RoOiBudW1iZXI7XG4gIGZlZWRVcmxzOiBzdHJpbmdbXTtcbiAgZmVlZHM6IFRbXTtcbiAgaGFzRmVlZHM6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1mZWVkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZlZWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mZWVkLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1J4U3RhdGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRmVlZHNDb21wb25lbnQ8VCBleHRlbmRzIEpzb25GZWVkID0gSnNvbkZlZWQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcm90ZWN0ZWQgX3N0YXRlID0gbmV3IFJ4U3RhdGU8RmVlZFN0YXRlPFQ+PigpO1xuICBwcm90ZWN0ZWQgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgcGxhdGZvcm0gPSBpbmplY3QoUGxhdGZvcm1TZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcm90ZWN0ZWQgdmVyc2lvbjogc3RyaW5nO1xuXG4gIGZlZWRzJCA9IHRoaXMuX3N0YXRlLnNlbGVjdCgnZmVlZHMnKTtcbiAgZmVlZFVybHMkID0gdGhpcy5fc3RhdGUuc2VsZWN0KCdmZWVkVXJscycpO1xuICBoYXNGZWVkcyQgPSB0aGlzLl9zdGF0ZS5zZWxlY3QoJ2hhc0ZlZWRzJyk7XG5cbiAgQElucHV0KCkgZGVidWcgPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd0hlYWRlciA9IHRydWU7XG4gIEBJbnB1dCgpIGhlYWRlckNvbG9yOiBBcHBDb2xvcnMgPSAnc2Vjb25kYXJ5JztcbiAgQElucHV0KCkgY2FyZENvbG9yOiBBcHBDb2xvcnMgfCAnbGlnaHQtdHJhbnNwYXJlbnQnID0gJ2xpZ2h0LXRyYW5zcGFyZW50JztcbiAgQElucHV0KCkgc2hhcGU6ICdyb3VuZCcgfCAnbGVnYWN5JyA9ICdsZWdhY3knO1xuICBASW5wdXQoKSBjbGFzczogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgc2V0IGZlZWRzKHZhbHVlOiBUW10pIHtcbiAgICB0aGlzLl9zdGF0ZS5zZXQoJ2ZlZWRzJywgKCkgPT4gdmFsdWUpO1xuICB9XG5cbiAgZ2V0IGZlZWRzKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZS5nZXQoJ2ZlZWRzJyk7XG4gIH1cblxuICBASW5wdXQoKSBzZXQgZmVlZFVybHModmFsdWU6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5fc3RhdGUuc2V0KCdmZWVkVXJscycsICgpID0+IHZhbHVlKTtcbiAgfVxuXG4gIGdldCBmZWVkVXJscygpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGUuZ2V0KCdmZWVkVXJscycpO1xuICB9XG5cbiAgZ2V0IGhhc0ZlZWRzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZS5nZXQoJ2hhc0ZlZWRzJyk7XG4gIH1cblxuICBASW5wdXQoKSBzZXQgbWF4QWdlSW5Nb250aHModmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3N0YXRlLnNldCgnbWF4QWdlSW5Nb250aHMnLCAoKSA9PiB2YWx1ZSk7XG4gIH1cblxuICBnZXQgbWF4QWdlSW5Nb250aHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlLmdldCgnbWF4QWdlSW5Nb250aHMnKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCBtYXhDb250ZW50TGVuZ3RoKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9zdGF0ZS5zZXQoJ21heENvbnRlbnRMZW5ndGgnLCAoKSA9PiB2YWx1ZSk7XG4gIH1cblxuICBnZXQgbWF4Q29udGVudExlbmd0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGUuZ2V0KCdtYXhDb250ZW50TGVuZ3RoJyk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsYXNzZXMgPSBbdGhpcy5jbGFzc107XG5cbiAgICBpZiAodGhpcy5zaGFwZSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKGBzaGFwZS0ke3RoaXMuc2hhcGV9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzZXMuZmlsdGVyKChjbHMpID0+IGNscykuam9pbignICcpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChFTlZJUk9OTUVOVCkgcHJvdGVjdGVkIGVudmlyb25tZW50OiBFbnZpcm9ubWVudCxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFQUF9GRUVEX1NFUlZJQ0UpIHB1YmxpYyBmZWVkU2VydmljZTogSUZlZWRTZXJ2aWNlPFQ+XG4gICkge1xuICAgIHRoaXMuX3N0YXRlLmNvbm5lY3QoJ2hhc0ZlZWRzJywgdGhpcy5mZWVkcyQucGlwZShtYXAoaXNOb3RFbXB0eUFycmF5KSkpO1xuXG4gICAgaWYgKHRoaXMuZmVlZFNlcnZpY2UpIHtcbiAgICAgIHRoaXMuX3N0YXRlLmNvbm5lY3QoXG4gICAgICAgICdmZWVkcycsXG4gICAgICAgIHRoaXMuX3N0YXRlLnNlbGVjdChbJ2ZlZWRVcmxzJywgJ21heEFnZUluTW9udGhzJywgJ21heENvbnRlbnRMZW5ndGgnXSkucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoKHsgZmVlZFVybHMsIG1heEFnZUluTW9udGhzLCBtYXhDb250ZW50TGVuZ3RoIH0pID0+XG4gICAgICAgICAgICB0aGlzLmZlZWRTZXJ2aWNlLndhdGNoQWxsKHtcbiAgICAgICAgICAgICAgdXJsczogZmVlZFVybHMsXG4gICAgICAgICAgICAgIG1heEFnZUluTW9udGhzLFxuICAgICAgICAgICAgICBtYXhDb250ZW50TGVuZ3RoLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApLFxuICAgICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpXG5cbiAgICAgICAgICAvLyBERUJVR1xuICAgICAgICAgIC8vdGFwKChmZWVkcykgPT4gY29uc29sZS5kZWJ1ZygnW2ZlZWQtY29tcG9uZW50XSBmZWVkcycsIGZlZWRzKSlcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZlZWRVcmxzID0gdGhpcy5mZWVkVXJscyA/PyBudWxsOyAvLyBTaG91bGQgc2V0IHRoZSBmZWVkVXJscywgaW4gb3JkZXIgdG8gdHJpZ2dlciB0aGUgc2VsZWN0IGluIGNvbnN0cnVjdG9yXG4gICAgdGhpcy5tYXhBZ2VJbk1vbnRocyA9IHRoaXMubWF4QWdlSW5Nb250aHMgPz8gdGhpcy5lbnZpcm9ubWVudC5mZWVkPy5tYXhBZ2VJbk1vbnRocyA/PyAtMTtcbiAgICB0aGlzLm1heENvbnRlbnRMZW5ndGggPSB0aGlzLm1heENvbnRlbnRMZW5ndGggPz8gdGhpcy5lbnZpcm9ubWVudC5mZWVkPy5tYXhDb250ZW50TGVuZ3RoID8/IC0xO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3RhdGUubmdPbkRlc3Ryb3koKTtcbiAgfVxuXG4gIG9wZW5GZWVkSG9tZShmZWVkPzogVCkge1xuICAgIGlmICghZmVlZCkge1xuICAgICAgdGhpcy5mZWVkcz8uZm9yRWFjaCgoZikgPT4gdGhpcy5vcGVuRmVlZEhvbWUoZikpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHVybCA9IGZlZWQuaG9tZV9wYWdlX3VybCA/PyBEaXNjb3Vyc2VVdGlscy5yZW1vdmVKc29uRXh0ZW5zaW9uKGZlZWQuZmVlZF91cmwpID8/IHRoaXMuZmVlZFNlcnZpY2UuZ2V0SG9tZVVybCgpO1xuICAgIGlmICghdXJsKSByZXR1cm47XG4gICAgcmV0dXJuIHRoaXMucGxhdGZvcm0ub3Blbih1cmwpO1xuICB9XG5cbiAgb3BlblVybCh1cmw6IHN0cmluZykge1xuICAgIGlmICghdXJsKSByZXR1cm47XG4gICAgY29uc3QgZml4ZWRVcmwgPSBEaXNjb3Vyc2VVdGlscy5yZW1vdmVKc29uRXh0ZW5zaW9uKHVybCk7XG4gICAgcmV0dXJuIHRoaXMucGxhdGZvcm0ub3BlbihmaXhlZFVybCk7XG4gIH1cblxuICBvcGVuVGFnKGZlZWQ6IFQsIHRhZzogc3RyaW5nKSB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5mZWVkU2VydmljZS5nZXRUYWdVcmwoZmVlZCwgdGFnKTtcbiAgICByZXR1cm4gdGhpcy5vcGVuVXJsKHVybCk7XG4gIH1cblxuICBnZXRUYWdzKGZlZWRPckl0ZW0/OiBUIHwgVFsnaXRlbXMnXVswXSkge1xuICAgIGlmIChKc29uRmVlZFV0aWxzLmlzSnNvbkZlZWQoZmVlZE9ySXRlbSkpIHtcbiAgICAgIHJldHVybiBhcnJheURpc3RpbmN0KFxuICAgICAgICAoZmVlZE9ySXRlbS5pdGVtcyB8fCBbXSlcbiAgICAgICAgICAubWFwKChpdGVtKSA9PiBpdGVtLnRhZ3MpXG4gICAgICAgICAgLmZpbHRlcihpc05vdEVtcHR5QXJyYXkpXG4gICAgICAgICAgLmZsYXQoKVxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKEpzb25GZWVkVXRpbHMuaXNKc29uRmVlZEl0ZW0oZmVlZE9ySXRlbSkpIHtcbiAgICAgIHJldHVybiBhcnJheURpc3RpbmN0KChmZWVkT3JJdGVtLnRhZ3MgfHwgW10pLmZsYXQoKSk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxufVxuIiwiQGxldCBmZWVkcyA9IGZlZWRzJCB8IGFzeW5jO1xuXG5AaWYgKGRlYnVnKSB7XG4gIDxhcHAtZGVidWcgW3RpdGxlXT1cIidGZWVkJ1wiPlxuICAgIDxwPlxuICAgICAgaGFzRmVlZHM/OiB7eyBoYXNGZWVkcyQgfCBhc3luYyB9fVxuICAgICAgPGJyIC8+XG4gICAgICBmZWVkVXJsczoge3sgZmVlZFVybHMkIHwgYXN5bmMgfCBqc29uIH19XG4gICAgICA8YnIgLz5cbiAgICAgIHNoYXBlOiB7eyBzaGFwZSB9fVxuICAgIDwvcD5cbiAgPC9hcHAtZGVidWc+XG59XG5cbkBpZiAoZmVlZHMgfCBpc05vdEVtcHR5QXJyYXkpIHtcbiAgPCEtLSB0b3AgaGVhZGVyIC0tPlxuICBAaWYgKHNob3dIZWFkZXIgJiYgKGZlZWRzIHwgYXJyYXlGaXJzdCk7IGFzIGZlZWQpIHtcbiAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgW2NvbG9yXT1cImhlYWRlckNvbG9yXCIgY2xhc3M9XCJmZWVkLWhlYWRlciBzaGFwZS17eyBzaGFwZSB9fVwiPlxuICAgICAgPGlvbi1pY29uIHNsb3Q9XCJzdGFydFwiIG5hbWU9XCJtZWdhcGhvbmVcIj48L2lvbi1pY29uPlxuICAgICAgPGlvbi1sYWJlbD5cbiAgICAgICAgPGI+e3sgZmVlZC50aXRsZSB8fCAoJ1NPQ0lBTC5GRUVELk5FV1MnIHwgdHJhbnNsYXRlKSB9fTwvYj5cbiAgICAgIDwvaW9uLWxhYmVsPlxuICAgICAgPGlvbi1idXR0b24gc2xvdD1cImVuZFwiIGZpbGw9XCJjbGVhclwiIChjbGljayk9XCJvcGVuRmVlZEhvbWUoKVwiIHNoYXBlPVwiXCI+XG4gICAgICAgIDxpb24tbGFiZWwgdHJhbnNsYXRlPlNPQ0lBTC5GRUVELlNIT1dfQUxMX0ZFRUQ8L2lvbi1sYWJlbD5cbiAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJlbmRcIiBuYW1lPVwiY2hldnJvbi1mb3J3YXJkLW91dGxpbmVcIj48L2lvbi1pY29uPlxuICAgICAgPC9pb24tYnV0dG9uPlxuICAgIDwvaW9uLWl0ZW0+XG4gIH1cblxuICA8ZGl2IGNsYXNzPVwiZmVlZC1jb250ZW50IHNoYXBlLXt7IHNoYXBlIH19IGlvbi1uby1wYWRkaW5nXCIgW2NsYXNzLmhhcy1oZWFkZXJdPVwic2hvd0hlYWRlclwiPlxuICAgIDwhLS0gZmVlZHMgLS0+XG4gICAgQGZvciAoZmVlZCBvZiBmZWVkczsgdHJhY2sgZmVlZC5mZWVkX3VybDsgbGV0IGZpcnN0RmVlZCA9ICRmaXJzdDsgbGV0IGxhc3RGZWVkID0gJGxhc3QpIHtcbiAgICAgIDwhLS0gaXRlbXMgLS0+XG4gICAgICBAZm9yIChpdGVtIG9mIGZlZWQuaXRlbXM7IHRyYWNrIGl0ZW0uaWQ7IGxldCBmaXJzdEl0ZW0gPSAkZmlyc3Q7IGxldCBsYXN0SXRlbSA9ICRsYXN0KSB7XG4gICAgICAgIDxpb24tY2FyZFxuICAgICAgICAgIFtjbGFzcy5maXJzdF09XCJmaXJzdEZlZWQgJiYgZmlyc3RJdGVtXCJcbiAgICAgICAgICBbY2xhc3MubGFzdF09XCJsYXN0RmVlZCAmJiBsYXN0SXRlbVwiXG4gICAgICAgICAgW2NvbG9yXT1cImNhcmRDb2xvciAhPT0gJ2xpZ2h0LXRyYW5zcGFyZW50JyA/IGNhcmRDb2xvciA6IHVuZGVmaW5lZFwiXG4gICAgICAgID5cbiAgICAgICAgICA8aW9uLWNhcmQtaGVhZGVyPlxuICAgICAgICAgICAgPGlvbi1jYXJkLXN1YnRpdGxlIHN0eWxlPVwidmVydGljYWwtYWxpZ246IG1pZGRsZVwiPlxuICAgICAgICAgICAgICA8IS0tIEF1dGhvcnMgLS0+XG4gICAgICAgICAgICAgIEBmb3IgKGF1dGhvciBvZiBpdGVtLmF1dGhvcnMgfHwgZmVlZC5hdXRob3JzOyB0cmFjayBhdXRob3IpIHtcbiAgICAgICAgICAgICAgICBAaWYgKGF1dGhvci5uYW1lIHx8IGF1dGhvci5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgIDxpb24tY2hpcCAoY2xpY2spPVwib3BlblVybChhdXRob3IudXJsKVwiIHRhcHBhYmxlPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKGF1dGhvci5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLWF2YXRhcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24taW1nIFtzcmNdPVwiYXV0aG9yLmF2YXRhclwiIFthbHRdPVwiYXV0aG9yLm5hbWVcIj48L2lvbi1pbWc+XG4gICAgICAgICAgICAgICAgICAgICAgPC9pb24tYXZhdGFyPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoYXV0aG9yLm5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNsYXNzPVwiYXV0aG9yXCI+e3sgYXV0aG9yLm5hbWUgfX08L2lvbi1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9pb24tY2hpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPGlvbi1ub3RlIGNsYXNzPVwiaW9uLWZsb2F0LWVuZFwiPlxuICAgICAgICAgICAgICAgIDxzbWFsbD57eyBpdGVtLmRhdGVfcHVibGlzaGVkIHwgZGF0ZUZyb21Ob3cgfX08L3NtYWxsPlxuICAgICAgICAgICAgICA8L2lvbi1ub3RlPlxuICAgICAgICAgICAgPC9pb24tY2FyZC1zdWJ0aXRsZT5cblxuICAgICAgICAgICAgPCEtLSB0aXRsZSAtLT5cbiAgICAgICAgICAgIDxpb24tY2FyZC10aXRsZSAoY2xpY2spPVwib3BlblVybChpdGVtLnVybCB8fCBmZWVkLmZlZWRfdXJsKVwiIHRhcHBhYmxlPnt7IGl0ZW0/LnRpdGxlIH19PC9pb24tY2FyZC10aXRsZT5cblxuICAgICAgICAgICAgPCEtLSB0YWdzIC0tPlxuICAgICAgICAgICAgQGxldCB0YWdzID0gaXRlbSB8IG1hcDogZ2V0VGFncztcbiAgICAgICAgICAgIEBpZiAodGFncyB8IGlzTm90RW1wdHlBcnJheSkge1xuICAgICAgICAgICAgICA8aW9uLXRleHQgY2xhc3M9XCJ0YWdzXCI+XG4gICAgICAgICAgICAgICAgQGZvciAodGFnIG9mIHRhZ3M7IHRyYWNrIHRhZzsgbGV0IGxhc3QgPSAkbGFzdCkge1xuICAgICAgICAgICAgICAgICAgPGEgKGNsaWNrKT1cIm9wZW5UYWcoZmVlZCwgdGFnKVwiIHRhcHBhYmxlPlxuICAgICAgICAgICAgICAgICAgICA8aW9uLXRleHQ+I3t7IHRhZyB9fTwvaW9uLXRleHQ+XG4gICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICBAaWYgKCFsYXN0KSB7XG4gICAgICAgICAgICAgICAgICAgICZuYnNwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9pb24tdGV4dD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2lvbi1jYXJkLWhlYWRlcj5cblxuICAgICAgICAgIDwhLS0gRmVlZCBjb250ZW50IC0tPlxuICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgPGlvbi10ZXh0IFtmZWVkXT1cIml0ZW0udXJsIHx8IGZlZWQuZmVlZF91cmxcIj5cbiAgICAgICAgICAgICAgQGlmIChpdGVtLmNvbnRlbnRfaHRtbCkge1xuICAgICAgICAgICAgICAgIDxwIFtpbm5lckhUTUxdPVwiaXRlbS5jb250ZW50X2h0bWxcIj48L3A+XG4gICAgICAgICAgICAgIH0gQGVsc2UgaWYgKGl0ZW0uY29udGVudF90ZXh0KSB7XG4gICAgICAgICAgICAgICAgPHAgW2lubmVyVGV4dF09XCJpdGVtLmNvbnRlbnRfdGV4dFwiPjwvcD5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9pb24tdGV4dD5cbiAgICAgICAgICA8L2lvbi1jYXJkLWNvbnRlbnQ+XG5cbiAgICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib3BlblVybChpdGVtLnVybClcIiBjbGFzcz1cImlvbi1mbG9hdC1lbmRcIiBmaWxsPVwiY2xlYXJcIj5cbiAgICAgICAgICAgIDxpb24tbGFiZWw+e3sgKGl0ZW0udHJ1bmNhdGVkID8gJ1NPQ0lBTC5GRUVELlJFQURfTU9SRScgOiAnQ09NTU9OLkJUTl9TSE9XJykgfCB0cmFuc2xhdGUgfX08L2lvbi1sYWJlbD5cbiAgICAgICAgICAgIDxpb24taWNvbiBzbG90PVwiZW5kXCIgbmFtZT1cImNoZXZyb24tZm9yd2FyZC1vdXRsaW5lXCI+PC9pb24taWNvbj5cbiAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgIDwvaW9uLWNhcmQ+XG4gICAgICB9XG4gICAgfVxuICA8L2Rpdj5cbn1cbiJdfQ==
@@ -52,7 +52,7 @@ export class FeedTestingPage {
52
52
  this.cd.markForCheck();
53
53
  }
54
54
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeedTestingPage, deps: [{ token: i1.LocalSettingsService }, { token: i0.ChangeDetectorRef }, { token: ENVIRONMENT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
55
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeedTestingPage, selector: "app-feed-test", ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"primary\">\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Feed test page</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content>\n <ion-grid class=\"form-container ion-padding-top\">\n <ion-row>\n <ion-col size=\"12\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Feed URL(s)</mat-label>\n <mat-select [(value)]=\"feedUrls\" multiple>\n <mat-option *ngFor=\"let feedUrl of availableFeedUrls\" [value]=\"feedUrl\">\n {{ feedUrl }}\n </mat-option>\n <mat-option>(Use environment)</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col size=\"3\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Header color</mat-label>\n <mat-select [(value)]=\"headerColor\">\n <mat-option *ngFor=\"let color of availableColors\" [value]=\"color\">\n {{ color }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"3\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Card color</mat-label>\n <mat-select [(value)]=\"cardColor\">\n <mat-option *ngFor=\"let color of availableColors\" [value]=\"color\">\n {{ color }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"3\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Shape</mat-label>\n <mat-select [(value)]=\"shape\">\n <mat-option *ngFor=\"let shape of availableShapes\" [value]=\"shape\">\n {{ shape }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"3\">\n <mat-checkbox (change)=\"debug = $event.checked\" [checked]=\"debug\">Debug ?</mat-checkbox>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n <div class=\"ion-padding\">\n <app-feed\n [feedUrls]=\"feedUrls\"\n [headerColor]=\"headerColor\"\n [cardColor]=\"cardColor\"\n [shape]=\"shape\"\n [debug]=\"debug\"\n ></app-feed>\n </div>\n</ion-content>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i3.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { kind: "component", type: i3.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i3.IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { kind: "component", type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i3.IonRow, selector: "ion-row" }, { kind: "component", type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: i3.IonBackButton, selector: "ion-back-button" }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i8.FeedsComponent, selector: "app-feed", inputs: ["debug", "feeds", "feedUrls", "showHeader", "headerColor", "cardColor", "shape", "class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeedTestingPage, selector: "app-feed-test", ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"primary\">\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Feed test page</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content>\n <ion-grid class=\"form-container ion-padding-top\">\n <ion-row>\n <ion-col size=\"12\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Feed URL(s)</mat-label>\n <mat-select [(value)]=\"feedUrls\" multiple>\n <mat-option *ngFor=\"let feedUrl of availableFeedUrls\" [value]=\"feedUrl\">\n {{ feedUrl }}\n </mat-option>\n <mat-option>(Use environment)</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col size=\"3\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Header color</mat-label>\n <mat-select [(value)]=\"headerColor\">\n <mat-option *ngFor=\"let color of availableColors\" [value]=\"color\">\n {{ color }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"3\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Card color</mat-label>\n <mat-select [(value)]=\"cardColor\">\n <mat-option *ngFor=\"let color of availableColors\" [value]=\"color\">\n {{ color }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"3\">\n <mat-form-field [subscriptSizing]=\"'dynamic'\">\n <mat-label>Shape</mat-label>\n <mat-select [(value)]=\"shape\">\n <mat-option *ngFor=\"let shape of availableShapes\" [value]=\"shape\">\n {{ shape }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"3\">\n <mat-checkbox (change)=\"debug = $event.checked\" [checked]=\"debug\">Debug ?</mat-checkbox>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n <div class=\"ion-padding\">\n <app-feed\n [feedUrls]=\"feedUrls\"\n [headerColor]=\"headerColor\"\n [cardColor]=\"cardColor\"\n [shape]=\"shape\"\n [debug]=\"debug\"\n ></app-feed>\n </div>\n</ion-content>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i3.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { kind: "component", type: i3.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i3.IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { kind: "component", type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i3.IonRow, selector: "ion-row" }, { kind: "component", type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: i3.IonBackButton, selector: "ion-back-button" }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i8.FeedsComponent, selector: "app-feed", inputs: ["debug", "showHeader", "headerColor", "cardColor", "shape", "class", "feeds", "feedUrls", "maxAgeInMonths", "maxContentLength"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
56
  }
57
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeedTestingPage, decorators: [{
58
58
  type: Component,
@@ -108,10 +108,9 @@ export const environment = Object.freeze({
108
108
  feed: {
109
109
  jsonFeed: {
110
110
  fr: [
111
- 'https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-fr-FR.json',
112
- 'https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/feed-fr.json',
113
- //'https://gitlab.ifremer.fr/sih-public/sumaris/ngx-sumaris-components/-/raw/master/doc/feed/feed-fr.json',
114
- //'https://gitlab.ifremer.fr/sih-public/sumaris/ngx-sumaris-components/-/raw/feature/feeds/doc/feed/feed-fr.json',
111
+ //'https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-fr-FR.json',
112
+ //'https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/feed-fr.json',
113
+ 'https://gitlab.ifremer.fr/sih-public/sumaris/ngx-sumaris-components/-/raw/master/doc/feed/feed-fr.json',
115
114
  ],
116
115
  en: ['https://gitlab.ifremer.fr/sih-public/sumaris/ngx-sumaris-components/-/raw/master/doc/feed/feed-en.json'],
117
116
  },
@@ -120,4 +119,4 @@ export const environment = Object.freeze({
120
119
  maxCount: 3,
121
120
  },
122
121
  });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW52aXJvbm1lbnRzL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdGQUFnRjtBQUNoRiwyRUFBMkU7QUFDM0UsZ0VBQWdFO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUdyRTs7Ozs7R0FLRztBQUNILHNDQUFzQztBQUV0QyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQWdCLE1BQU0sQ0FBQyxNQUFNLENBQWM7SUFDakUsSUFBSSxFQUFFLDZCQUE2QixFQUFFLGtDQUFrQztJQUN2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLGtDQUFrQztJQUVsRCxvRUFBb0U7SUFDcEUsVUFBVSxFQUFFLElBQUk7SUFFaEIsMkRBQTJEO0lBQzNELCtCQUErQjtJQUUvQixPQUFPLEVBQUUsR0FBRztJQUNaLGFBQWEsRUFBRSxJQUFJO0lBQ25CLG9CQUFvQixFQUFFLE1BQU07SUFDNUIsaUJBQWlCLEVBQUUsYUFBYTtJQUNoQyxPQUFPLEVBQUUsS0FBSztJQUNkLGFBQWEsRUFBRSxJQUFJO0lBRW5CLHdCQUF3QjtJQUN4QixtQkFBbUI7SUFFbkIsc0JBQXNCO0lBQ3RCLFlBQVksRUFBRSxLQUFLO0lBRW5CLHdCQUF3QjtJQUN4QixnQkFBZ0I7SUFFaEIsY0FBYyxFQUFFLE9BQU87SUFFdkIseUJBQXlCLEVBQUUsSUFBSTtJQUUvQixXQUFXLEVBQUU7UUFDWCxJQUFJLEVBQUUsV0FBVztRQUNqQixJQUFJLEVBQUUsSUFBSTtLQUNYO0lBRUQsWUFBWSxFQUFFO1FBQ1o7WUFDRSxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsZUFBZTtZQUNyQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsWUFBWTtZQUNsQixJQUFJLEVBQUUsR0FBRztTQUNWO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLElBQUksRUFBRSxHQUFHO1NBQ1Y7UUFDRDtZQUNFLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsSUFBSSxFQUFFLEdBQUc7U0FDVjtRQUNEO1lBQ0UsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixJQUFJLEVBQUUsR0FBRztTQUNWO0tBQ0Y7SUFDRCxjQUFjLEVBQUUsU0FBUztJQUN6Qix3QkFBd0IsRUFBRSwrREFBK0Q7SUFDekYsb0JBQW9CLEVBQUUsb0RBQW9EO0lBQzFFLHdCQUF3QixFQUFFLHFFQUFxRTtJQUUvRixVQUFVO0lBQ1YsT0FBTyxFQUFFO1FBQ1AsV0FBVyxFQUFFLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLFlBQVksQ0FBQztLQUNwSDtJQUVELFFBQVE7SUFDUixTQUFTLEVBQUUscUVBQXFFO0lBQ2hGLGNBQWMsRUFBRSw4RUFBOEU7SUFDOUYsUUFBUSxFQUFFLElBQUksRUFBRSw4QkFBOEI7SUFDOUMsT0FBTyxFQUFFLGdHQUFnRztJQUN6RyxnQkFBZ0IsRUFBRSxnR0FBZ0c7SUFDbEgsYUFBYSxFQUFFLDZHQUE2RztJQUU1SCxjQUFjO0lBQ2QsaUJBQWlCLEVBQUU7UUFDakIsbUNBQW1DO1FBQ25DLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsUUFBUSxFQUFFLE9BQU87S0FDbEI7SUFFRCxPQUFPLEVBQUU7UUFDUCxtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLHVCQUF1QixFQUFFLEVBQUU7S0FDNUI7SUFFRCxZQUFZLEVBQUU7UUFDWixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLHVCQUF1QixFQUFFLEVBQUU7S0FDNUI7SUFFRCxJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUU7WUFDUixFQUFFLEVBQUU7Z0JBQ0Ysc0ZBQXNGO2dCQUN0RiwrRUFBK0U7Z0JBQy9FLDJHQUEyRztnQkFDM0csa0hBQWtIO2FBQ25IO1lBRUQsRUFBRSxFQUFFLENBQUMsd0dBQXdHLENBQUM7U0FDL0c7UUFDRCxnQkFBZ0IsRUFBRSxJQUFJO1FBQ3RCLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDbEIsUUFBUSxFQUFFLENBQUM7S0FDWjtDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRoaXMgZmlsZSBjYW4gYmUgcmVwbGFjZWQgZHVyaW5nIGJ1aWxkIGJ5IHVzaW5nIHRoZSBgZmlsZVJlcGxhY2VtZW50c2AgYXJyYXkuXG4vLyBgbmcgYnVpbGQgLS0tcHJvZGAgcmVwbGFjZXMgYGVudmlyb25tZW50LnRzYCB3aXRoIGBlbnZpcm9ubWVudC5wcm9kLnRzYC5cbi8vIFRoZSBsaXN0IG9mIGZpbGUgcmVwbGFjZW1lbnRzIGNhbiBiZSBmb3VuZCBpbiBgYW5ndWxhci5qc29uYC5cbmltcG9ydCB7IFN0b3JhZ2VEcml2ZXJzIH0gZnJvbSAnLi4vYXBwL3NoYXJlZC9zdG9yYWdlL3N0b3JhZ2UudXRpbHMnO1xuXG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4vZW52aXJvbm1lbnQuY2xhc3MnO1xuLypcbiAqIEluIGRldmVsb3BtZW50IG1vZGUsIHRvIGlnbm9yZSB6b25lIHJlbGF0ZWQgZXJyb3Igc3RhY2sgZnJhbWVzIHN1Y2ggYXNcbiAqIGB6b25lLnJ1bmAsIGB6b25lRGVsZWdhdGUuaW52b2tlVGFza2AgZm9yIGVhc2llciBkZWJ1Z2dpbmcsIHlvdSBjYW5cbiAqIGltcG9ydCB0aGUgZm9sbG93aW5nIGZpbGUsIGJ1dCBwbGVhc2UgY29tbWVudCBpdCBvdXQgaW4gcHJvZHVjdGlvbiBtb2RlXG4gKiBiZWNhdXNlIGl0IHdpbGwgaGF2ZSBwZXJmb3JtYW5jZSBpbXBhY3Qgd2hlbiB0aHJvdyBlcnJvclxuICovXG4vL2ltcG9ydCAnem9uZS5qcy9wbHVnaW5zL3pvbmUtZXJyb3InO1xuXG5leHBvcnQgY29uc3QgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50ID0gT2JqZWN0LmZyZWV6ZSg8RW52aXJvbm1lbnQ+e1xuICBuYW1lOiAnQHN1bWFyaXMtbmV0L25neC1jb21wb25lbnRzJywgLy8gb3ZlcnJpZGRlbiBieSBFTlZJUk9OTUVOVCB0b2tlblxuICB2ZXJzaW9uOiAnMS4wJywgLy8gb3ZlcnJpZGRlbiBieSBFTlZJUk9OTUVOVCB0b2tlblxuXG4gIC8vIERvIE5PVCBzZXQgdG8gZmFsc2UgLSBiZWNhdXNlIHRoaXMgdmFsdWUgd2lsbCBiZSB1c2VkIGJ5IHJlbGVhc2VzXG4gIHByb2R1Y3Rpb246IHRydWUsXG5cbiAgLy8gRG8gTk9UIHNldCAtIGJlY2F1c2UgdGhpcyB2YWx1ZSB3aWxsIGJlIHVzZWQgYnkgcmVsZWFzZXNcbiAgLy9leHRlcm5hbEVudmlyb25tZW50VXJsOiBudWxsLFxuXG4gIGJhc2VVcmw6ICcvJyxcbiAgZGVmYXVsdExvY2FsZTogJ2ZyJyxcbiAgZGVmYXVsdExhdExvbmdGb3JtYXQ6ICdERE1NJyxcbiAgYXBvbGxvRmV0Y2hQb2xpY3k6ICdjYWNoZS1maXJzdCcsXG4gIHVzZUhhc2g6IGZhbHNlLFxuICBhbGxvd0RhcmtNb2RlOiB0cnVlLFxuXG4gIC8vZGVmYXVsdFJvdXRlOiAnL2hvbWUnLFxuICAvL2VuYWJsZU1lbnU6IHRydWUsXG5cbiAgLy8gRklYTUU6IGVuYWJsZSBjYWNoZVxuICBwZXJzaXN0Q2FjaGU6IGZhbHNlLFxuXG4gIC8vIFRPRE86IG1ha2UgdGhpcyB3b3Jrc1xuICAvL29mZmxpbmU6IHRydWUsXG5cbiAgcGVlck1pblZlcnNpb246ICcxLjguMCcsXG5cbiAgZW5hYmxlU2VsZWN0UGVlckJ5RmVhdHVyZTogdHJ1ZSxcblxuICBkZWZhdWx0UGVlcjoge1xuICAgIGhvc3Q6ICdsb2NhbGhvc3QnLFxuICAgIHBvcnQ6IDgwODEsXG4gIH0sXG5cbiAgZGVmYXVsdFBlZXJzOiBbXG4gICAge1xuICAgICAgaG9zdDogJ2xvY2FsaG9zdCcsXG4gICAgICBwb3J0OiA4MDgwLFxuICAgIH0sXG4gICAge1xuICAgICAgaG9zdDogJ2xvY2FsaG9zdCcsXG4gICAgICBwb3J0OiA4MDgxLFxuICAgIH0sXG4gICAge1xuICAgICAgaG9zdDogJzE5Mi4xNjguMC40NScsXG4gICAgICBwb3J0OiA4MDgwLFxuICAgIH0sXG4gICAge1xuICAgICAgaG9zdDogJzE5Mi4xNjguMC4yNCcsXG4gICAgICBwb3J0OiA4MDgwLFxuICAgIH0sXG4gICAge1xuICAgICAgaG9zdDogJzE5Mi4xNjguMC4yOScsXG4gICAgICBwb3J0OiA4MDgwLFxuICAgIH0sXG4gICAge1xuICAgICAgaG9zdDogJzE5Mi4xNjguMC4xMDcnLFxuICAgICAgcG9ydDogODA4MCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICdzaWguc2ZhLnNjJyxcbiAgICAgIHBvcnQ6IDQ0MyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICd0ZXN0LnN1bWFyaXMubmV0JyxcbiAgICAgIHBvcnQ6IDQ0MyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICdvcGVuLnN1bWFyaXMubmV0JyxcbiAgICAgIHBvcnQ6IDQ0MyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICdzZXJ2ZXIuZS1pcy5wcm8nLFxuICAgICAgcG9ydDogNDQzLFxuICAgIH0sXG4gIF0sXG4gIGRlZmF1bHRBcHBOYW1lOiAnU1VNQVJpUycsXG4gIGRlZmF1bHRBbmRyb2lkSW5zdGFsbFVybDogJ2h0dHBzOi8vcGxheS5nb29nbGUuY29tL3N0b3JlL2FwcHMvZGV0YWlscz9pZD1uZXQuc3VtYXJpcy5hcHAnLFxuICBkZWZhdWx0SU9TSW5zdGFsbFVybDogJ2h0dHBzOi8vYXBwcy5hcHBsZS5jb20vdXMvYXBwL3N1bWFyaXMvaWQ2NzM2NzQ3NTIzJyxcbiAgZGVmYXVsdERlc2t0b3BJbnN0YWxsVXJsOiAnaHR0cHM6Ly9naXRsYWIuaWZyZW1lci5mci9zaWgtcHVibGljL3N1bWFyaXMvc3VtYXJpcy1hcHAvLS9yZWxlYXNlcycsXG5cbiAgLy8gU3RvcmFnZVxuICBzdG9yYWdlOiB7XG4gICAgZHJpdmVyT3JkZXI6IFtTdG9yYWdlRHJpdmVycy5TUUxMaXRlLCBTdG9yYWdlRHJpdmVycy5JbmRleGVkREIsIFN0b3JhZ2VEcml2ZXJzLldlYlNRTCwgU3RvcmFnZURyaXZlcnMuTG9jYWxTdG9yYWdlXSxcbiAgfSxcblxuICAvLyBBYm91dFxuICBzb3VyY2VVcmw6ICdodHRwczovL2dpdGxhYi5pZnJlbWVyLmZyL3NpaC1wdWJsaWMvc3VtYXJpcy9uZ3gtc3VtYXJpcy1jb21wb25lbnRzJyxcbiAgcmVwb3J0SXNzdWVVcmw6ICdodHRwczovL2dpdGxhYi5pZnJlbWVyLmZyL3NpaC1wdWJsaWMvc3VtYXJpcy9uZ3gtc3VtYXJpcy1jb21wb25lbnRzLy0vaXNzdWVzJyxcbiAgZm9ydW1Vcmw6IG51bGwsIC8vJ2h0dHBzOi8vZm9ydW0uc3VtYXJpcy5uZXQnLFxuICBoZWxwVXJsOiAnaHR0cHM6Ly9naXRsYWIuaWZyZW1lci5mci9zaWgtcHVibGljL3N1bWFyaXMvc3VtYXJpcy1kb2MvLS9ibG9iL21hc3Rlci91c2VyLW1hbnVhbC9pbmRleF9mci5tZCcsXG4gIHByaXZhY3lQb2xpY3lVcmw6ICdodHRwczovL2dpdGxhYi5pZnJlbWVyLmZyL3NpaC1wdWJsaWMvc3VtYXJpcy9zdW1hcmlzLWFwcC8tL3Jhdy9tYXN0ZXIvZG9jL3ByaXZhY3lfcG9saWN5X2ZyLm1kJyxcbiAgdGVybXNPZlVzZVVybDogJ2h0dHBzOi8vZ2l0bGFiLmlmcmVtZXIuZnIvc2loLXB1YmxpYy9zdW1hcmlzL3N1bWFyaXMtYXBwLy0vcmF3L21hc3Rlci9kb2MvdGVybXNfb2ZfdXNlX2ZyLm1kP3JlZl90eXBlPWhlYWRzJyxcblxuICAvLyBEZXZlbG9wbWVudFxuICBkZWZhdWx0QXV0aFZhbHVlczoge1xuICAgIC8vIFRva2VuIGF1dGggKHVzaW5nIFBlcnNvbi5wdWJrZXkpXG4gICAgdXNlcm5hbWU6ICdhZG1pbkBzdW1hcmlzLm5ldCcsXG4gICAgcGFzc3dvcmQ6ICdhZG1pbicsXG4gIH0sXG5cbiAgYWNjb3VudDoge1xuICAgIGVuYWJsZUxpc3RlbkNoYW5nZXM6IHRydWUsXG4gICAgbGlzdGVuSW50ZXJ2YWxJblNlY29uZHM6IDYwLFxuICB9LFxuXG4gIGVudGl0eUVkaXRvcjoge1xuICAgIGVuYWJsZUxpc3RlbkNoYW5nZXM6IHRydWUsXG4gICAgbGlzdGVuSW50ZXJ2YWxJblNlY29uZHM6IDYwLFxuICB9LFxuXG4gIGZlZWQ6IHtcbiAgICBqc29uRmVlZDoge1xuICAgICAgZnI6IFtcbiAgICAgICAgJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kdW5pdGVyL2Nlc2l1bS9tYXN0ZXIvZG9jL2ZlZWQvMS4xL2ZlZWQtZnItRlIuanNvbicsXG4gICAgICAgICdodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZHVuaXRlci9jZXNpdW0vbWFzdGVyL2RvYy9mZWVkL2ZlZWQtZnIuanNvbicsXG4gICAgICAgIC8vJ2h0dHBzOi8vZ2l0bGFiLmlmcmVtZXIuZnIvc2loLXB1YmxpYy9zdW1hcmlzL25neC1zdW1hcmlzLWNvbXBvbmVudHMvLS9yYXcvbWFzdGVyL2RvYy9mZWVkL2ZlZWQtZnIuanNvbicsXG4gICAgICAgIC8vJ2h0dHBzOi8vZ2l0bGFiLmlmcmVtZXIuZnIvc2loLXB1YmxpYy9zdW1hcmlzL25neC1zdW1hcmlzLWNvbXBvbmVudHMvLS9yYXcvZmVhdHVyZS9mZWVkcy9kb2MvZmVlZC9mZWVkLWZyLmpzb24nLFxuICAgICAgXSxcblxuICAgICAgZW46IFsnaHR0cHM6Ly9naXRsYWIuaWZyZW1lci5mci9zaWgtcHVibGljL3N1bWFyaXMvbmd4LXN1bWFyaXMtY29tcG9uZW50cy8tL3Jhdy9tYXN0ZXIvZG9jL2ZlZWQvZmVlZC1lbi5qc29uJ10sXG4gICAgfSxcbiAgICBtYXhDb250ZW50TGVuZ3RoOiAxMDAwLFxuICAgIG1heEFnZUluTW9udGhzOiAtMSxcbiAgICBtYXhDb3VudDogMyxcbiAgfSxcbn0pO1xuIl19
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW52aXJvbm1lbnRzL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdGQUFnRjtBQUNoRiwyRUFBMkU7QUFDM0UsZ0VBQWdFO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUdyRTs7Ozs7R0FLRztBQUNILHNDQUFzQztBQUV0QyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQWdCLE1BQU0sQ0FBQyxNQUFNLENBQWM7SUFDakUsSUFBSSxFQUFFLDZCQUE2QixFQUFFLGtDQUFrQztJQUN2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLGtDQUFrQztJQUVsRCxvRUFBb0U7SUFDcEUsVUFBVSxFQUFFLElBQUk7SUFFaEIsMkRBQTJEO0lBQzNELCtCQUErQjtJQUUvQixPQUFPLEVBQUUsR0FBRztJQUNaLGFBQWEsRUFBRSxJQUFJO0lBQ25CLG9CQUFvQixFQUFFLE1BQU07SUFDNUIsaUJBQWlCLEVBQUUsYUFBYTtJQUNoQyxPQUFPLEVBQUUsS0FBSztJQUNkLGFBQWEsRUFBRSxJQUFJO0lBRW5CLHdCQUF3QjtJQUN4QixtQkFBbUI7SUFFbkIsc0JBQXNCO0lBQ3RCLFlBQVksRUFBRSxLQUFLO0lBRW5CLHdCQUF3QjtJQUN4QixnQkFBZ0I7SUFFaEIsY0FBYyxFQUFFLE9BQU87SUFFdkIseUJBQXlCLEVBQUUsSUFBSTtJQUUvQixXQUFXLEVBQUU7UUFDWCxJQUFJLEVBQUUsV0FBVztRQUNqQixJQUFJLEVBQUUsSUFBSTtLQUNYO0lBRUQsWUFBWSxFQUFFO1FBQ1o7WUFDRSxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsZUFBZTtZQUNyQixJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsWUFBWTtZQUNsQixJQUFJLEVBQUUsR0FBRztTQUNWO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLElBQUksRUFBRSxHQUFHO1NBQ1Y7UUFDRDtZQUNFLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsSUFBSSxFQUFFLEdBQUc7U0FDVjtRQUNEO1lBQ0UsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixJQUFJLEVBQUUsR0FBRztTQUNWO0tBQ0Y7SUFDRCxjQUFjLEVBQUUsU0FBUztJQUN6Qix3QkFBd0IsRUFBRSwrREFBK0Q7SUFDekYsb0JBQW9CLEVBQUUsb0RBQW9EO0lBQzFFLHdCQUF3QixFQUFFLHFFQUFxRTtJQUUvRixVQUFVO0lBQ1YsT0FBTyxFQUFFO1FBQ1AsV0FBVyxFQUFFLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLFlBQVksQ0FBQztLQUNwSDtJQUVELFFBQVE7SUFDUixTQUFTLEVBQUUscUVBQXFFO0lBQ2hGLGNBQWMsRUFBRSw4RUFBOEU7SUFDOUYsUUFBUSxFQUFFLElBQUksRUFBRSw4QkFBOEI7SUFDOUMsT0FBTyxFQUFFLGdHQUFnRztJQUN6RyxnQkFBZ0IsRUFBRSxnR0FBZ0c7SUFDbEgsYUFBYSxFQUFFLDZHQUE2RztJQUU1SCxjQUFjO0lBQ2QsaUJBQWlCLEVBQUU7UUFDakIsbUNBQW1DO1FBQ25DLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsUUFBUSxFQUFFLE9BQU87S0FDbEI7SUFFRCxPQUFPLEVBQUU7UUFDUCxtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLHVCQUF1QixFQUFFLEVBQUU7S0FDNUI7SUFFRCxZQUFZLEVBQUU7UUFDWixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLHVCQUF1QixFQUFFLEVBQUU7S0FDNUI7SUFFRCxJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUU7WUFDUixFQUFFLEVBQUU7Z0JBQ0YseUZBQXlGO2dCQUN6RixrRkFBa0Y7Z0JBQ2xGLHdHQUF3RzthQUN6RztZQUVELEVBQUUsRUFBRSxDQUFDLHdHQUF3RyxDQUFDO1NBQy9HO1FBQ0QsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLFFBQVEsRUFBRSxDQUFDO0tBQ1o7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGlzIGZpbGUgY2FuIGJlIHJlcGxhY2VkIGR1cmluZyBidWlsZCBieSB1c2luZyB0aGUgYGZpbGVSZXBsYWNlbWVudHNgIGFycmF5LlxuLy8gYG5nIGJ1aWxkIC0tLXByb2RgIHJlcGxhY2VzIGBlbnZpcm9ubWVudC50c2Agd2l0aCBgZW52aXJvbm1lbnQucHJvZC50c2AuXG4vLyBUaGUgbGlzdCBvZiBmaWxlIHJlcGxhY2VtZW50cyBjYW4gYmUgZm91bmQgaW4gYGFuZ3VsYXIuanNvbmAuXG5pbXBvcnQgeyBTdG9yYWdlRHJpdmVycyB9IGZyb20gJy4uL2FwcC9zaGFyZWQvc3RvcmFnZS9zdG9yYWdlLnV0aWxzJztcblxuaW1wb3J0IHsgRW52aXJvbm1lbnQgfSBmcm9tICcuL2Vudmlyb25tZW50LmNsYXNzJztcbi8qXG4gKiBJbiBkZXZlbG9wbWVudCBtb2RlLCB0byBpZ25vcmUgem9uZSByZWxhdGVkIGVycm9yIHN0YWNrIGZyYW1lcyBzdWNoIGFzXG4gKiBgem9uZS5ydW5gLCBgem9uZURlbGVnYXRlLmludm9rZVRhc2tgIGZvciBlYXNpZXIgZGVidWdnaW5nLCB5b3UgY2FuXG4gKiBpbXBvcnQgdGhlIGZvbGxvd2luZyBmaWxlLCBidXQgcGxlYXNlIGNvbW1lbnQgaXQgb3V0IGluIHByb2R1Y3Rpb24gbW9kZVxuICogYmVjYXVzZSBpdCB3aWxsIGhhdmUgcGVyZm9ybWFuY2UgaW1wYWN0IHdoZW4gdGhyb3cgZXJyb3JcbiAqL1xuLy9pbXBvcnQgJ3pvbmUuanMvcGx1Z2lucy96b25lLWVycm9yJztcblxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50OiBFbnZpcm9ubWVudCA9IE9iamVjdC5mcmVlemUoPEVudmlyb25tZW50PntcbiAgbmFtZTogJ0BzdW1hcmlzLW5ldC9uZ3gtY29tcG9uZW50cycsIC8vIG92ZXJyaWRkZW4gYnkgRU5WSVJPTk1FTlQgdG9rZW5cbiAgdmVyc2lvbjogJzEuMCcsIC8vIG92ZXJyaWRkZW4gYnkgRU5WSVJPTk1FTlQgdG9rZW5cblxuICAvLyBEbyBOT1Qgc2V0IHRvIGZhbHNlIC0gYmVjYXVzZSB0aGlzIHZhbHVlIHdpbGwgYmUgdXNlZCBieSByZWxlYXNlc1xuICBwcm9kdWN0aW9uOiB0cnVlLFxuXG4gIC8vIERvIE5PVCBzZXQgLSBiZWNhdXNlIHRoaXMgdmFsdWUgd2lsbCBiZSB1c2VkIGJ5IHJlbGVhc2VzXG4gIC8vZXh0ZXJuYWxFbnZpcm9ubWVudFVybDogbnVsbCxcblxuICBiYXNlVXJsOiAnLycsXG4gIGRlZmF1bHRMb2NhbGU6ICdmcicsXG4gIGRlZmF1bHRMYXRMb25nRm9ybWF0OiAnRERNTScsXG4gIGFwb2xsb0ZldGNoUG9saWN5OiAnY2FjaGUtZmlyc3QnLFxuICB1c2VIYXNoOiBmYWxzZSxcbiAgYWxsb3dEYXJrTW9kZTogdHJ1ZSxcblxuICAvL2RlZmF1bHRSb3V0ZTogJy9ob21lJyxcbiAgLy9lbmFibGVNZW51OiB0cnVlLFxuXG4gIC8vIEZJWE1FOiBlbmFibGUgY2FjaGVcbiAgcGVyc2lzdENhY2hlOiBmYWxzZSxcblxuICAvLyBUT0RPOiBtYWtlIHRoaXMgd29ya3NcbiAgLy9vZmZsaW5lOiB0cnVlLFxuXG4gIHBlZXJNaW5WZXJzaW9uOiAnMS44LjAnLFxuXG4gIGVuYWJsZVNlbGVjdFBlZXJCeUZlYXR1cmU6IHRydWUsXG5cbiAgZGVmYXVsdFBlZXI6IHtcbiAgICBob3N0OiAnbG9jYWxob3N0JyxcbiAgICBwb3J0OiA4MDgxLFxuICB9LFxuXG4gIGRlZmF1bHRQZWVyczogW1xuICAgIHtcbiAgICAgIGhvc3Q6ICdsb2NhbGhvc3QnLFxuICAgICAgcG9ydDogODA4MCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICdsb2NhbGhvc3QnLFxuICAgICAgcG9ydDogODA4MSxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICcxOTIuMTY4LjAuNDUnLFxuICAgICAgcG9ydDogODA4MCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICcxOTIuMTY4LjAuMjQnLFxuICAgICAgcG9ydDogODA4MCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICcxOTIuMTY4LjAuMjknLFxuICAgICAgcG9ydDogODA4MCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGhvc3Q6ICcxOTIuMTY4LjAuMTA3JyxcbiAgICAgIHBvcnQ6IDgwODAsXG4gICAgfSxcbiAgICB7XG4gICAgICBob3N0OiAnc2loLnNmYS5zYycsXG4gICAgICBwb3J0OiA0NDMsXG4gICAgfSxcbiAgICB7XG4gICAgICBob3N0OiAndGVzdC5zdW1hcmlzLm5ldCcsXG4gICAgICBwb3J0OiA0NDMsXG4gICAgfSxcbiAgICB7XG4gICAgICBob3N0OiAnb3Blbi5zdW1hcmlzLm5ldCcsXG4gICAgICBwb3J0OiA0NDMsXG4gICAgfSxcbiAgICB7XG4gICAgICBob3N0OiAnc2VydmVyLmUtaXMucHJvJyxcbiAgICAgIHBvcnQ6IDQ0MyxcbiAgICB9LFxuICBdLFxuICBkZWZhdWx0QXBwTmFtZTogJ1NVTUFSaVMnLFxuICBkZWZhdWx0QW5kcm9pZEluc3RhbGxVcmw6ICdodHRwczovL3BsYXkuZ29vZ2xlLmNvbS9zdG9yZS9hcHBzL2RldGFpbHM/aWQ9bmV0LnN1bWFyaXMuYXBwJyxcbiAgZGVmYXVsdElPU0luc3RhbGxVcmw6ICdodHRwczovL2FwcHMuYXBwbGUuY29tL3VzL2FwcC9zdW1hcmlzL2lkNjczNjc0NzUyMycsXG4gIGRlZmF1bHREZXNrdG9wSW5zdGFsbFVybDogJ2h0dHBzOi8vZ2l0bGFiLmlmcmVtZXIuZnIvc2loLXB1YmxpYy9zdW1hcmlzL3N1bWFyaXMtYXBwLy0vcmVsZWFzZXMnLFxuXG4gIC8vIFN0b3JhZ2VcbiAgc3RvcmFnZToge1xuICAgIGRyaXZlck9yZGVyOiBbU3RvcmFnZURyaXZlcnMuU1FMTGl0ZSwgU3RvcmFnZURyaXZlcnMuSW5kZXhlZERCLCBTdG9yYWdlRHJpdmVycy5XZWJTUUwsIFN0b3JhZ2VEcml2ZXJzLkxvY2FsU3RvcmFnZV0sXG4gIH0sXG5cbiAgLy8gQWJvdXRcbiAgc291cmNlVXJsOiAnaHR0cHM6Ly9naXRsYWIuaWZyZW1lci5mci9zaWgtcHVibGljL3N1bWFyaXMvbmd4LXN1bWFyaXMtY29tcG9uZW50cycsXG4gIHJlcG9ydElzc3VlVXJsOiAnaHR0cHM6Ly9naXRsYWIuaWZyZW1lci5mci9zaWgtcHVibGljL3N1bWFyaXMvbmd4LXN1bWFyaXMtY29tcG9uZW50cy8tL2lzc3VlcycsXG4gIGZvcnVtVXJsOiBudWxsLCAvLydodHRwczovL2ZvcnVtLnN1bWFyaXMubmV0JyxcbiAgaGVscFVybDogJ2h0dHBzOi8vZ2l0bGFiLmlmcmVtZXIuZnIvc2loLXB1YmxpYy9zdW1hcmlzL3N1bWFyaXMtZG9jLy0vYmxvYi9tYXN0ZXIvdXNlci1tYW51YWwvaW5kZXhfZnIubWQnLFxuICBwcml2YWN5UG9saWN5VXJsOiAnaHR0cHM6Ly9naXRsYWIuaWZyZW1lci5mci9zaWgtcHVibGljL3N1bWFyaXMvc3VtYXJpcy1hcHAvLS9yYXcvbWFzdGVyL2RvYy9wcml2YWN5X3BvbGljeV9mci5tZCcsXG4gIHRlcm1zT2ZVc2VVcmw6ICdodHRwczovL2dpdGxhYi5pZnJlbWVyLmZyL3NpaC1wdWJsaWMvc3VtYXJpcy9zdW1hcmlzLWFwcC8tL3Jhdy9tYXN0ZXIvZG9jL3Rlcm1zX29mX3VzZV9mci5tZD9yZWZfdHlwZT1oZWFkcycsXG5cbiAgLy8gRGV2ZWxvcG1lbnRcbiAgZGVmYXVsdEF1dGhWYWx1ZXM6IHtcbiAgICAvLyBUb2tlbiBhdXRoICh1c2luZyBQZXJzb24ucHVia2V5KVxuICAgIHVzZXJuYW1lOiAnYWRtaW5Ac3VtYXJpcy5uZXQnLFxuICAgIHBhc3N3b3JkOiAnYWRtaW4nLFxuICB9LFxuXG4gIGFjY291bnQ6IHtcbiAgICBlbmFibGVMaXN0ZW5DaGFuZ2VzOiB0cnVlLFxuICAgIGxpc3RlbkludGVydmFsSW5TZWNvbmRzOiA2MCxcbiAgfSxcblxuICBlbnRpdHlFZGl0b3I6IHtcbiAgICBlbmFibGVMaXN0ZW5DaGFuZ2VzOiB0cnVlLFxuICAgIGxpc3RlbkludGVydmFsSW5TZWNvbmRzOiA2MCxcbiAgfSxcblxuICBmZWVkOiB7XG4gICAganNvbkZlZWQ6IHtcbiAgICAgIGZyOiBbXG4gICAgICAgIC8vJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kdW5pdGVyL2Nlc2l1bS9tYXN0ZXIvZG9jL2ZlZWQvMS4xL2ZlZWQtZnItRlIuanNvbicsXG4gICAgICAgIC8vJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kdW5pdGVyL2Nlc2l1bS9tYXN0ZXIvZG9jL2ZlZWQvZmVlZC1mci5qc29uJyxcbiAgICAgICAgJ2h0dHBzOi8vZ2l0bGFiLmlmcmVtZXIuZnIvc2loLXB1YmxpYy9zdW1hcmlzL25neC1zdW1hcmlzLWNvbXBvbmVudHMvLS9yYXcvbWFzdGVyL2RvYy9mZWVkL2ZlZWQtZnIuanNvbicsXG4gICAgICBdLFxuXG4gICAgICBlbjogWydodHRwczovL2dpdGxhYi5pZnJlbWVyLmZyL3NpaC1wdWJsaWMvc3VtYXJpcy9uZ3gtc3VtYXJpcy1jb21wb25lbnRzLy0vcmF3L21hc3Rlci9kb2MvZmVlZC9mZWVkLWVuLmpzb24nXSxcbiAgICB9LFxuICAgIG1heENvbnRlbnRMZW5ndGg6IDEwMDAsXG4gICAgbWF4QWdlSW5Nb250aHM6IC0xLFxuICAgIG1heENvdW50OiAzLFxuICB9LFxufSk7XG4iXX0=