@rosettadash/web-components 0.1.0 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/media.js +461 -39
- package/browser/media.js.map +3 -3
- package/package.json +332 -36
- package/src/domain/i18n/app-language-select/index.d.ts +3 -0
- package/src/domain/i18n/app-language-select/index.js +3 -0
- package/src/domain/i18n/app-language-select/index.js.map +1 -0
- package/src/domain/i18n/app-language-select/parse-locale-options.d.ts +7 -0
- package/src/domain/i18n/app-language-select/parse-locale-options.js +39 -0
- package/src/domain/i18n/app-language-select/parse-locale-options.js.map +1 -0
- package/src/domain/i18n/app-language-select/rd-app-language-select.d.ts +38 -0
- package/src/domain/i18n/app-language-select/rd-app-language-select.js +138 -0
- package/src/domain/i18n/app-language-select/rd-app-language-select.js.map +1 -0
- package/src/domain/i18n/index.d.ts +2 -0
- package/src/domain/i18n/index.js +6 -0
- package/src/domain/i18n/index.js.map +1 -0
- package/src/domain/index.d.ts +6 -0
- package/src/domain/index.js +18 -0
- package/src/domain/index.js.map +1 -0
- package/src/domain/person-invite/index.d.ts +2 -0
- package/src/domain/person-invite/index.js +2 -0
- package/src/domain/person-invite/index.js.map +1 -0
- package/src/domain/person-invite/rd-person-invite.d.ts +17 -0
- package/src/domain/person-invite/rd-person-invite.js +33 -0
- package/src/domain/person-invite/rd-person-invite.js.map +1 -0
- package/src/domain/role-assign/index.d.ts +2 -0
- package/src/domain/role-assign/index.js +2 -0
- package/src/domain/role-assign/index.js.map +1 -0
- package/src/domain/role-assign/rd-role-assign.d.ts +21 -0
- package/src/domain/role-assign/rd-role-assign.js +36 -0
- package/src/domain/role-assign/rd-role-assign.js.map +1 -0
- package/src/domain/role-gate/index.d.ts +2 -0
- package/src/domain/role-gate/index.js +2 -0
- package/src/domain/role-gate/index.js.map +1 -0
- package/src/domain/role-gate/rd-role-gate.d.ts +19 -0
- package/src/domain/role-gate/rd-role-gate.js +31 -0
- package/src/domain/role-gate/rd-role-gate.js.map +1 -0
- package/src/domain/time-preset/index.d.ts +2 -0
- package/src/domain/time-preset/index.js +2 -0
- package/src/domain/time-preset/index.js.map +1 -0
- package/src/domain/time-preset/rd-time-preset.d.ts +23 -0
- package/src/domain/time-preset/rd-time-preset.js +34 -0
- package/src/domain/time-preset/rd-time-preset.js.map +1 -0
- package/src/index.d.ts +5 -5
- package/src/index.js +13 -13
- package/src/index.js.map +1 -1
- package/src/layout/collapsible/index.d.ts +2 -0
- package/src/layout/collapsible/index.js +2 -0
- package/src/layout/collapsible/index.js.map +1 -0
- package/src/layout/collapsible/rd-collapsible.d.ts +21 -0
- package/src/layout/collapsible/rd-collapsible.js +50 -0
- package/src/layout/collapsible/rd-collapsible.js.map +1 -0
- package/src/layout/flex/index.d.ts +2 -0
- package/src/layout/flex/index.js +2 -0
- package/src/layout/flex/index.js.map +1 -0
- package/src/layout/flex/rd-flex-layout.d.ts +17 -0
- package/src/layout/flex/rd-flex-layout.js +24 -0
- package/src/layout/flex/rd-flex-layout.js.map +1 -0
- package/src/layout/grid/index.d.ts +2 -0
- package/src/layout/grid/index.js +2 -0
- package/src/layout/grid/index.js.map +1 -0
- package/src/layout/grid/rd-grid-layout.d.ts +17 -0
- package/src/layout/grid/rd-grid-layout.js +24 -0
- package/src/layout/grid/rd-grid-layout.js.map +1 -0
- package/src/layout/index.d.ts +9 -0
- package/src/layout/index.js +27 -0
- package/src/layout/index.js.map +1 -0
- package/src/layout/modal/index.d.ts +2 -0
- package/src/layout/modal/index.js +2 -0
- package/src/layout/modal/index.js.map +1 -0
- package/src/layout/modal/rd-modal-layout.d.ts +20 -0
- package/src/layout/modal/rd-modal-layout.js +40 -0
- package/src/layout/modal/rd-modal-layout.js.map +1 -0
- package/src/layout/scroll-region/index.d.ts +2 -0
- package/src/layout/scroll-region/index.js +2 -0
- package/src/layout/scroll-region/index.js.map +1 -0
- package/src/layout/scroll-region/rd-scroll-region.d.ts +17 -0
- package/src/layout/scroll-region/rd-scroll-region.js +26 -0
- package/src/layout/scroll-region/rd-scroll-region.js.map +1 -0
- package/src/layout/tabs/index.d.ts +2 -0
- package/src/layout/tabs/index.js +2 -0
- package/src/layout/tabs/index.js.map +1 -0
- package/src/layout/tabs/rd-tabs-layout.d.ts +23 -0
- package/src/layout/tabs/rd-tabs-layout.js +34 -0
- package/src/layout/tabs/rd-tabs-layout.js.map +1 -0
- package/src/lib/element-utils.js +3 -0
- package/src/lib/element-utils.js.map +1 -1
- package/src/lib/rosetta-atom-element.d.ts +23 -0
- package/src/lib/rosetta-atom-element.js +104 -0
- package/src/lib/rosetta-atom-element.js.map +1 -0
- package/src/lib/shadow-base.js +3 -0
- package/src/lib/shadow-base.js.map +1 -1
- package/src/lib/shadow-resources.js +7 -2
- package/src/lib/shadow-resources.js.map +1 -1
- package/src/logic/index.d.ts +2 -0
- package/src/logic/index.js +6 -0
- package/src/logic/index.js.map +1 -0
- package/src/logic/timer/index.d.ts +2 -0
- package/src/logic/timer/index.js +2 -0
- package/src/logic/timer/index.js.map +1 -0
- package/src/logic/timer/rd-timer.d.ts +18 -0
- package/src/logic/timer/rd-timer.js +24 -0
- package/src/logic/timer/rd-timer.js.map +1 -0
- package/src/visual/chart/bar/index.d.ts +2 -0
- package/src/visual/chart/bar/index.js +2 -0
- package/src/visual/chart/bar/index.js.map +1 -0
- package/src/visual/chart/bar/rd-bar-chart.d.ts +21 -0
- package/src/visual/chart/bar/rd-bar-chart.js +83 -0
- package/src/visual/chart/bar/rd-bar-chart.js.map +1 -0
- package/src/visual/chart/line/index.d.ts +2 -0
- package/src/visual/chart/line/index.js +2 -0
- package/src/visual/chart/line/index.js.map +1 -0
- package/src/visual/chart/line/rd-line-chart.d.ts +22 -0
- package/src/visual/chart/line/rd-line-chart.js +105 -0
- package/src/visual/chart/line/rd-line-chart.js.map +1 -0
- package/src/visual/chart/pie/index.d.ts +2 -0
- package/src/visual/chart/pie/index.js +2 -0
- package/src/visual/chart/pie/index.js.map +1 -0
- package/src/visual/chart/pie/rd-pie-chart.d.ts +15 -0
- package/src/visual/chart/pie/rd-pie-chart.js +23 -0
- package/src/visual/chart/pie/rd-pie-chart.js.map +1 -0
- package/src/visual/detail/index.d.ts +2 -0
- package/src/visual/detail/index.js +2 -0
- package/src/visual/detail/index.js.map +1 -0
- package/src/visual/detail/rd-detail-panel.d.ts +16 -0
- package/src/visual/detail/rd-detail-panel.js +24 -0
- package/src/visual/detail/rd-detail-panel.js.map +1 -0
- package/src/visual/display/3d-bar-chart/index.d.ts +2 -0
- package/src/visual/display/3d-bar-chart/index.js +2 -0
- package/src/visual/display/3d-bar-chart/index.js.map +1 -0
- package/src/visual/display/3d-bar-chart/rd-three-bar-chart.d.ts +16 -0
- package/src/visual/display/3d-bar-chart/rd-three-bar-chart.js +24 -0
- package/src/visual/display/3d-bar-chart/rd-three-bar-chart.js.map +1 -0
- package/src/visual/display/3d-geo-globe/globe-view.d.ts +86 -0
- package/src/visual/display/3d-geo-globe/globe-view.js +235 -0
- package/src/visual/display/3d-geo-globe/globe-view.js.map +1 -0
- package/src/visual/display/3d-geo-globe/index.d.ts +3 -0
- package/src/visual/display/3d-geo-globe/index.js +3 -0
- package/src/visual/display/3d-geo-globe/index.js.map +1 -0
- package/src/visual/display/3d-geo-globe/rd-three-geo-globe.d.ts +36 -0
- package/src/visual/display/3d-geo-globe/rd-three-geo-globe.js +330 -0
- package/src/visual/display/3d-geo-globe/rd-three-geo-globe.js.map +1 -0
- package/src/visual/display/3d-gltf-model/index.d.ts +2 -0
- package/src/visual/display/3d-gltf-model/index.js +2 -0
- package/src/visual/display/3d-gltf-model/index.js.map +1 -0
- package/src/visual/display/3d-gltf-model/rd-three-gltf-model.d.ts +16 -0
- package/src/visual/display/3d-gltf-model/rd-three-gltf-model.js +24 -0
- package/src/visual/display/3d-gltf-model/rd-three-gltf-model.js.map +1 -0
- package/src/visual/display/3d-scatter/index.d.ts +2 -0
- package/src/visual/display/3d-scatter/index.js +2 -0
- package/src/visual/display/3d-scatter/index.js.map +1 -0
- package/src/visual/display/3d-scatter/rd-three-scatter-plot.d.ts +16 -0
- package/src/visual/display/3d-scatter/rd-three-scatter-plot.js +24 -0
- package/src/visual/display/3d-scatter/rd-three-scatter-plot.js.map +1 -0
- package/src/visual/display/3d-scene/index.d.ts +2 -0
- package/src/visual/display/3d-scene/index.js +2 -0
- package/src/visual/display/3d-scene/index.js.map +1 -0
- package/src/visual/display/3d-scene/rd-three-scene-point-cloud.d.ts +16 -0
- package/src/visual/display/3d-scene/rd-three-scene-point-cloud.js +24 -0
- package/src/visual/display/3d-scene/rd-three-scene-point-cloud.js.map +1 -0
- package/src/visual/display/geo-map/geo-map-types.d.ts +32 -0
- package/src/visual/display/geo-map/geo-map-types.js +10 -0
- package/src/visual/display/geo-map/geo-map-types.js.map +1 -0
- package/src/visual/display/geo-map/index.d.ts +5 -0
- package/src/visual/display/geo-map/index.js +5 -0
- package/src/visual/display/geo-map/index.js.map +1 -0
- package/src/visual/display/geo-map/parse-center.d.ts +5 -0
- package/src/visual/display/geo-map/parse-center.js +28 -0
- package/src/visual/display/geo-map/parse-center.js.map +1 -0
- package/src/visual/display/geo-map/parse-markers.d.ts +2 -0
- package/src/visual/display/geo-map/parse-markers.js +32 -0
- package/src/visual/display/geo-map/parse-markers.js.map +1 -0
- package/src/visual/display/geo-map/providers/create-adapter.d.ts +2 -0
- package/src/visual/display/geo-map/providers/create-adapter.js +11 -0
- package/src/visual/display/geo-map/providers/create-adapter.js.map +1 -0
- package/src/visual/display/geo-map/providers/google-maps-adapter.d.ts +2 -0
- package/src/visual/display/geo-map/providers/google-maps-adapter.js +63 -0
- package/src/visual/display/geo-map/providers/google-maps-adapter.js.map +1 -0
- package/src/visual/display/geo-map/providers/leaflet-adapter.d.ts +2 -0
- package/src/visual/display/geo-map/providers/leaflet-adapter.js +78 -0
- package/src/visual/display/geo-map/providers/leaflet-adapter.js.map +1 -0
- package/src/visual/display/geo-map/providers/maplibre-adapter.d.ts +2 -0
- package/src/visual/display/geo-map/providers/maplibre-adapter.js +71 -0
- package/src/visual/display/geo-map/providers/maplibre-adapter.js.map +1 -0
- package/src/visual/display/geo-map/providers/provider-utils.d.ts +8 -0
- package/src/visual/display/geo-map/providers/provider-utils.js +28 -0
- package/src/visual/display/geo-map/providers/provider-utils.js.map +1 -0
- package/src/visual/display/geo-map/rd-geo-map.d.ts +48 -0
- package/src/visual/display/geo-map/rd-geo-map.js +219 -0
- package/src/visual/display/geo-map/rd-geo-map.js.map +1 -0
- package/src/visual/display/index.d.ts +7 -0
- package/src/visual/display/index.js +21 -0
- package/src/visual/display/index.js.map +1 -0
- package/src/visual/index.d.ts +34 -0
- package/src/visual/index.js +102 -0
- package/src/visual/index.js.map +1 -0
- package/src/visual/input/checkbox/index.d.ts +2 -0
- package/src/visual/input/checkbox/index.js +2 -0
- package/src/visual/input/checkbox/index.js.map +1 -0
- package/src/visual/input/checkbox/rd-checkbox-input.d.ts +19 -0
- package/src/visual/input/checkbox/rd-checkbox-input.js +32 -0
- package/src/visual/input/checkbox/rd-checkbox-input.js.map +1 -0
- package/src/visual/input/date-range/index.d.ts +2 -0
- package/src/visual/input/date-range/index.js +2 -0
- package/src/visual/input/date-range/index.js.map +1 -0
- package/src/visual/input/date-range/rd-date-range-filter.d.ts +24 -0
- package/src/visual/input/date-range/rd-date-range-filter.js +42 -0
- package/src/visual/input/date-range/rd-date-range-filter.js.map +1 -0
- package/src/visual/input/number/index.d.ts +2 -0
- package/src/visual/input/number/index.js +2 -0
- package/src/visual/input/number/index.js.map +1 -0
- package/src/visual/input/number/rd-number-input.d.ts +22 -0
- package/src/visual/input/number/rd-number-input.js +36 -0
- package/src/visual/input/number/rd-number-input.js.map +1 -0
- package/src/visual/input/select/index.d.ts +2 -0
- package/src/visual/input/select/index.js +2 -0
- package/src/visual/input/select/index.js.map +1 -0
- package/src/visual/input/select/rd-select-input.d.ts +24 -0
- package/src/visual/input/select/rd-select-input.js +37 -0
- package/src/visual/input/select/rd-select-input.js.map +1 -0
- package/src/visual/input/text/index.d.ts +2 -0
- package/src/visual/input/text/index.js +2 -0
- package/src/visual/input/text/index.js.map +1 -0
- package/src/visual/input/text/rd-text-input.d.ts +21 -0
- package/src/visual/input/text/rd-text-input.js +35 -0
- package/src/visual/input/text/rd-text-input.js.map +1 -0
- package/src/visual/input/textarea/index.d.ts +2 -0
- package/src/visual/input/textarea/index.js +2 -0
- package/src/visual/input/textarea/index.js.map +1 -0
- package/src/visual/input/textarea/rd-textarea-input.d.ts +20 -0
- package/src/visual/input/textarea/rd-textarea-input.js +34 -0
- package/src/visual/input/textarea/rd-textarea-input.js.map +1 -0
- package/src/visual/kpi/index.d.ts +2 -0
- package/src/visual/kpi/index.js +2 -0
- package/src/visual/kpi/index.js.map +1 -0
- package/src/visual/kpi/rd-kpi-card.d.ts +18 -0
- package/src/visual/kpi/rd-kpi-card.js +26 -0
- package/src/visual/kpi/rd-kpi-card.js.map +1 -0
- package/src/visual/media/index.d.ts +2 -0
- package/src/visual/media/index.js +6 -0
- package/src/visual/media/index.js.map +1 -1
- package/src/visual/media/live-capture/index.d.ts +2 -0
- package/src/visual/media/live-capture/index.js +2 -0
- package/src/visual/media/live-capture/index.js.map +1 -0
- package/src/visual/media/live-capture/rd-live-capture.d.ts +16 -0
- package/src/visual/media/live-capture/rd-live-capture.js +23 -0
- package/src/visual/media/live-capture/rd-live-capture.js.map +1 -0
- package/src/visual/media/video-source/rd-video-source.d.ts +5 -0
- package/src/visual/media/video-source/rd-video-source.js +101 -18
- package/src/visual/media/video-source/rd-video-source.js.map +1 -1
- package/src/visual/media/youtube-embed/index.d.ts +3 -0
- package/src/visual/media/youtube-embed/index.js +3 -0
- package/src/visual/media/youtube-embed/index.js.map +1 -0
- package/src/visual/media/youtube-embed/parse-youtube-id.d.ts +10 -0
- package/src/visual/media/youtube-embed/parse-youtube-id.js +56 -0
- package/src/visual/media/youtube-embed/parse-youtube-id.js.map +1 -0
- package/src/visual/media/youtube-embed/rd-youtube-embed.d.ts +35 -0
- package/src/visual/media/youtube-embed/rd-youtube-embed.js +121 -0
- package/src/visual/media/youtube-embed/rd-youtube-embed.js.map +1 -0
- package/src/visual/news/article-detail/index.d.ts +2 -0
- package/src/visual/news/article-detail/index.js +2 -0
- package/src/visual/news/article-detail/index.js.map +1 -0
- package/src/visual/news/article-detail/rd-news-article-detail.d.ts +16 -0
- package/src/visual/news/article-detail/rd-news-article-detail.js +24 -0
- package/src/visual/news/article-detail/rd-news-article-detail.js.map +1 -0
- package/src/visual/news/language-select/index.d.ts +2 -0
- package/src/visual/news/language-select/index.js +2 -0
- package/src/visual/news/language-select/index.js.map +1 -0
- package/src/visual/news/language-select/rd-news-language-select.d.ts +23 -0
- package/src/visual/news/language-select/rd-news-language-select.js +37 -0
- package/src/visual/news/language-select/rd-news-language-select.js.map +1 -0
- package/src/visual/news/region-select/index.d.ts +2 -0
- package/src/visual/news/region-select/index.js +2 -0
- package/src/visual/news/region-select/index.js.map +1 -0
- package/src/visual/news/region-select/rd-news-region-select.d.ts +23 -0
- package/src/visual/news/region-select/rd-news-region-select.js +37 -0
- package/src/visual/news/region-select/rd-news-region-select.js.map +1 -0
- package/src/visual/news/results-table/index.d.ts +2 -0
- package/src/visual/news/results-table/index.js +2 -0
- package/src/visual/news/results-table/index.js.map +1 -0
- package/src/visual/news/results-table/rd-news-results-table.d.ts +16 -0
- package/src/visual/news/results-table/rd-news-results-table.js +33 -0
- package/src/visual/news/results-table/rd-news-results-table.js.map +1 -0
- package/src/visual/news/search-box/index.d.ts +2 -0
- package/src/visual/news/search-box/index.js +2 -0
- package/src/visual/news/search-box/index.js.map +1 -0
- package/src/visual/news/search-box/rd-news-search-box.d.ts +19 -0
- package/src/visual/news/search-box/rd-news-search-box.js +42 -0
- package/src/visual/news/search-box/rd-news-search-box.js.map +1 -0
- package/src/visual/news/type-select/index.d.ts +2 -0
- package/src/visual/news/type-select/index.js +2 -0
- package/src/visual/news/type-select/index.js.map +1 -0
- package/src/visual/news/type-select/rd-news-type-select.d.ts +23 -0
- package/src/visual/news/type-select/rd-news-type-select.js +37 -0
- package/src/visual/news/type-select/rd-news-type-select.js.map +1 -0
- package/src/visual/plugin/metric-chip/index.d.ts +2 -0
- package/src/visual/plugin/metric-chip/index.js +2 -0
- package/src/visual/plugin/metric-chip/index.js.map +1 -0
- package/src/visual/plugin/metric-chip/rd-metric-chip.d.ts +16 -0
- package/src/visual/plugin/metric-chip/rd-metric-chip.js +23 -0
- package/src/visual/plugin/metric-chip/rd-metric-chip.js.map +1 -0
- package/src/visual/plugin/status-badge/index.d.ts +2 -0
- package/src/visual/plugin/status-badge/index.js +2 -0
- package/src/visual/plugin/status-badge/index.js.map +1 -0
- package/src/visual/plugin/status-badge/rd-status-badge.d.ts +16 -0
- package/src/visual/plugin/status-badge/rd-status-badge.js +19 -0
- package/src/visual/plugin/status-badge/rd-status-badge.js.map +1 -0
- package/src/visual/skeleton/index.d.ts +2 -0
- package/src/visual/skeleton/index.js +2 -0
- package/src/visual/skeleton/index.js.map +1 -0
- package/src/visual/skeleton/rd-loading-skeleton.d.ts +15 -0
- package/src/visual/skeleton/rd-loading-skeleton.js +20 -0
- package/src/visual/skeleton/rd-loading-skeleton.js.map +1 -0
- package/src/visual/svg/icon/index.d.ts +2 -0
- package/src/visual/svg/icon/index.js +2 -0
- package/src/visual/svg/icon/index.js.map +1 -0
- package/src/visual/svg/icon/rd-svg-icon.d.ts +18 -0
- package/src/visual/svg/icon/rd-svg-icon.js +20 -0
- package/src/visual/svg/icon/rd-svg-icon.js.map +1 -0
- package/src/visual/svg/inline/index.d.ts +2 -0
- package/src/visual/svg/inline/index.js +2 -0
- package/src/visual/svg/inline/index.js.map +1 -0
- package/src/visual/svg/inline/rd-svg-inline.d.ts +17 -0
- package/src/visual/svg/inline/rd-svg-inline.js +20 -0
- package/src/visual/svg/inline/rd-svg-inline.js.map +1 -0
- package/src/visual/table/index.d.ts +2 -0
- package/src/visual/table/index.js +2 -0
- package/src/visual/table/index.js.map +1 -0
- package/src/visual/table/rd-data-table.d.ts +26 -0
- package/src/visual/table/rd-data-table.js +46 -0
- package/src/visual/table/rd-data-table.js.map +1 -0
- package/src/visual/wasm/media/index.d.ts +1 -0
- package/src/visual/wasm/media/index.js +2 -0
- package/src/visual/wasm/media/index.js.map +1 -0
- package/src/visual/wasm/module/index.d.ts +2 -0
- package/src/visual/wasm/module/index.js +2 -0
- package/src/visual/wasm/module/index.js.map +1 -0
- package/src/visual/wasm/module/rd-wasm-module.d.ts +16 -0
- package/src/visual/wasm/module/rd-wasm-module.js +24 -0
- package/src/visual/wasm/module/rd-wasm-module.js.map +1 -0
- package/src/visual/wasm/worker-host/index.d.ts +2 -0
- package/src/visual/wasm/worker-host/index.js +2 -0
- package/src/visual/wasm/worker-host/index.js.map +1 -0
- package/src/visual/wasm/worker-host/rd-wasm-worker-host.d.ts +16 -0
- package/src/visual/wasm/worker-host/rd-wasm-worker-host.js +24 -0
- package/src/visual/wasm/worker-host/rd-wasm-worker-host.js.map +1 -0
- package/src/wasm/wasm-media/rd-wasm-media.d.ts +10 -0
- package/src/wasm/wasm-media/rd-wasm-media.js +182 -41
- package/src/wasm/wasm-media/rd-wasm-media.js.map +1 -1
- package/styles/runtime.css +1609 -0
- package/styles/styles.css +1 -0
- package/styles/tokens.css +9 -0
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { defineRosettaElement, readNumber, readString } from '../../../lib/element-utils.js';
|
|
2
|
+
import { applyShadowMount, ensureShadowBase, loadShadowPairForTag } from '../../../lib/shadow-base.js';
|
|
3
|
+
import { buildYouTubeEmbedUrl, parseYouTubeVideoId, } from './parse-youtube-id.js';
|
|
4
|
+
export const DB_YOUTUBE_EMBED_TAG = 'rd-youtube-embed';
|
|
5
|
+
export class RdYoutubeEmbedElement extends HTMLElement {
|
|
6
|
+
static tagName = DB_YOUTUBE_EMBED_TAG;
|
|
7
|
+
resourcesReady = null;
|
|
8
|
+
static get observedAttributes() {
|
|
9
|
+
return ['video-id', 'url', 'start', 'autoplay', 'mute', 'controls', 'embed-title'];
|
|
10
|
+
}
|
|
11
|
+
connectedCallback() {
|
|
12
|
+
if (!this.shadowRoot) {
|
|
13
|
+
this.attachShadow({ mode: 'open' });
|
|
14
|
+
}
|
|
15
|
+
this.resourcesReady = this.mountShadow();
|
|
16
|
+
void this.resourcesReady.then(() => this.paint());
|
|
17
|
+
}
|
|
18
|
+
attributeChangedCallback() {
|
|
19
|
+
if (this.shadowRoot && this.resourcesReady) {
|
|
20
|
+
void this.resourcesReady.then(() => this.paint());
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
setProperty(name, value) {
|
|
24
|
+
this[name] = value;
|
|
25
|
+
if (this.resourcesReady) {
|
|
26
|
+
void this.resourcesReady.then(() => this.paint());
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
whenReady() {
|
|
30
|
+
return this.resourcesReady ?? Promise.resolve();
|
|
31
|
+
}
|
|
32
|
+
get videoId() {
|
|
33
|
+
return readString(this.getAttribute('video-id'), '');
|
|
34
|
+
}
|
|
35
|
+
set videoId(value) {
|
|
36
|
+
if (value) {
|
|
37
|
+
this.setAttribute('video-id', value);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.removeAttribute('video-id');
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
get url() {
|
|
44
|
+
return readString(this.getAttribute('url'), '');
|
|
45
|
+
}
|
|
46
|
+
set url(value) {
|
|
47
|
+
if (value) {
|
|
48
|
+
this.setAttribute('url', value);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
this.removeAttribute('url');
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
get start() {
|
|
55
|
+
return readNumber(this.getAttribute('start'), 0);
|
|
56
|
+
}
|
|
57
|
+
get autoplay() {
|
|
58
|
+
return this.hasAttribute('autoplay');
|
|
59
|
+
}
|
|
60
|
+
get mute() {
|
|
61
|
+
return this.hasAttribute('mute');
|
|
62
|
+
}
|
|
63
|
+
get controls() {
|
|
64
|
+
return !this.hasAttribute('controls') || this.getAttribute('controls') !== 'false';
|
|
65
|
+
}
|
|
66
|
+
get embedTitle() {
|
|
67
|
+
return readString(this.getAttribute('embed-title'), 'YouTube video');
|
|
68
|
+
}
|
|
69
|
+
set embedTitle(value) {
|
|
70
|
+
if (value) {
|
|
71
|
+
this.setAttribute('embed-title', value);
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
this.removeAttribute('embed-title');
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
async mountShadow() {
|
|
78
|
+
const root = this.shadowRoot;
|
|
79
|
+
if (!root || root.querySelector('[data-ref="root"]')) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const pair = await loadShadowPairForTag(DB_YOUTUBE_EMBED_TAG, './rd-youtube-embed.html', './rd-youtube-embed.css');
|
|
83
|
+
applyShadowMount(root, pair);
|
|
84
|
+
}
|
|
85
|
+
resolveVideoId() {
|
|
86
|
+
return parseYouTubeVideoId(this.videoId) ?? parseYouTubeVideoId(this.url);
|
|
87
|
+
}
|
|
88
|
+
paint() {
|
|
89
|
+
const root = this.shadowRoot;
|
|
90
|
+
if (!root) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const iframe = root.querySelector('[data-ref="iframe"]');
|
|
94
|
+
const empty = root.querySelector('[data-ref="empty"]');
|
|
95
|
+
if (!iframe || !empty) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
const id = this.resolveVideoId();
|
|
99
|
+
if (!id) {
|
|
100
|
+
iframe.removeAttribute('src');
|
|
101
|
+
iframe.hidden = true;
|
|
102
|
+
empty.hidden = false;
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
iframe.hidden = false;
|
|
106
|
+
empty.hidden = true;
|
|
107
|
+
iframe.title = this.embedTitle;
|
|
108
|
+
iframe.credentialless = true;
|
|
109
|
+
iframe.src = buildYouTubeEmbedUrl(id, {
|
|
110
|
+
start: this.start,
|
|
111
|
+
autoplay: this.autoplay,
|
|
112
|
+
mute: this.mute,
|
|
113
|
+
controls: this.controls,
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
export function registerRdYoutubeEmbed() {
|
|
118
|
+
ensureShadowBase(DB_YOUTUBE_EMBED_TAG);
|
|
119
|
+
defineRosettaElement(DB_YOUTUBE_EMBED_TAG, RdYoutubeEmbedElement);
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=rd-youtube-embed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-youtube-embed.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/media/youtube-embed/rd-youtube-embed.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/article-detail/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_NEWS_ARTICLE_DETAIL_TAG = "rd-news-article-detail";
|
|
3
|
+
export interface NewsArticleDetailProps {
|
|
4
|
+
title?: string;
|
|
5
|
+
emptyMessage?: string;
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: Record<string, string>;
|
|
8
|
+
children?: unknown;
|
|
9
|
+
}
|
|
10
|
+
/** @rosettadash/web-components/visual/news/article-detail — visual.news.article-detail */
|
|
11
|
+
export declare class RdNewsArticleDetailElement extends RosettaAtomElement {
|
|
12
|
+
static readonly tagName = "rd-news-article-detail";
|
|
13
|
+
static get observedAttributes(): string[];
|
|
14
|
+
protected buildMarkup(): string;
|
|
15
|
+
}
|
|
16
|
+
export declare function registerRdNewsArticleDetail(): void;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { defineRosettaElement } from '../../../lib/element-utils.js';
|
|
2
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
3
|
+
export const RD_NEWS_ARTICLE_DETAIL_TAG = 'rd-news-article-detail';
|
|
4
|
+
/** @rosettadash/web-components/visual/news/article-detail — visual.news.article-detail */
|
|
5
|
+
export class RdNewsArticleDetailElement extends RosettaAtomElement {
|
|
6
|
+
static tagName = RD_NEWS_ARTICLE_DETAIL_TAG;
|
|
7
|
+
static get observedAttributes() {
|
|
8
|
+
return ["title", "empty-message"];
|
|
9
|
+
}
|
|
10
|
+
buildMarkup() {
|
|
11
|
+
const title = this.readAttr('title', 'Article');
|
|
12
|
+
const empty = this.readAttr('empty-message', 'Select a headline in News Results');
|
|
13
|
+
return `
|
|
14
|
+
<section class="rd-news-article-detail" data-testid="rd-news-article-detail">
|
|
15
|
+
<header class="rd-detail__header"><span>${this.esc(title)}</span></header>
|
|
16
|
+
<p class="rd-detail__empty">${this.esc(empty)}</p>
|
|
17
|
+
<div data-ref="slot"></div>
|
|
18
|
+
</section>`;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export function registerRdNewsArticleDetail() {
|
|
22
|
+
defineRosettaElement(RD_NEWS_ARTICLE_DETAIL_TAG, RdNewsArticleDetailElement);
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=rd-news-article-detail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-news-article-detail.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/article-detail/rd-news-article-detail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AAUnE,0FAA0F;AAC1F,MAAM,OAAO,0BAA2B,SAAQ,kBAAkB;IAChE,MAAM,CAAU,OAAO,GAAG,0BAA0B,CAAC;IAErD,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,OAAO,EAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAES,WAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,mCAAmC,CAAC,CAAC;QAClF,OAAO;;kDAEuC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;sCAC3B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;;iBAEpC,CAAC;IAChB,CAAC;;AAGH,MAAM,UAAU,2BAA2B;IACzC,oBAAoB,CAAC,0BAA0B,EAAE,0BAA0B,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/language-select/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_NEWS_LANGUAGE_SELECT_TAG = "rd-news-language-select";
|
|
3
|
+
export interface NewsLanguageSelectProps {
|
|
4
|
+
label?: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
options?: {
|
|
7
|
+
value: string;
|
|
8
|
+
label: string;
|
|
9
|
+
}[];
|
|
10
|
+
value?: string;
|
|
11
|
+
onChange?: (value: string) => void;
|
|
12
|
+
className?: string;
|
|
13
|
+
style?: Record<string, string>;
|
|
14
|
+
children?: unknown;
|
|
15
|
+
}
|
|
16
|
+
/** @rosettadash/web-components/visual/news/language-select — visual.news.language-select */
|
|
17
|
+
export declare class RdNewsLanguageSelectElement extends RosettaAtomElement {
|
|
18
|
+
static readonly tagName = "rd-news-language-select";
|
|
19
|
+
static get observedAttributes(): string[];
|
|
20
|
+
protected buildMarkup(): string;
|
|
21
|
+
protected wireEvents(): void;
|
|
22
|
+
}
|
|
23
|
+
export declare function registerRdNewsLanguageSelect(): void;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { defineRosettaElement } from '../../../lib/element-utils.js';
|
|
2
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
3
|
+
export const RD_NEWS_LANGUAGE_SELECT_TAG = 'rd-news-language-select';
|
|
4
|
+
/** @rosettadash/web-components/visual/news/language-select — visual.news.language-select */
|
|
5
|
+
export class RdNewsLanguageSelectElement extends RosettaAtomElement {
|
|
6
|
+
static tagName = RD_NEWS_LANGUAGE_SELECT_TAG;
|
|
7
|
+
static get observedAttributes() {
|
|
8
|
+
return ["label", "placeholder", "options", "value"];
|
|
9
|
+
}
|
|
10
|
+
buildMarkup() {
|
|
11
|
+
const label = this.readAttr('label');
|
|
12
|
+
const placeholder = this.readAttr('placeholder', 'Select…');
|
|
13
|
+
const value = this.readAttr('value');
|
|
14
|
+
const options = this.parseJsonAttr('options', []);
|
|
15
|
+
const opts = options.map((o) => `<option value="${this.esc(o.value)}"${o.value === value ? ' selected' : ''}>${this.esc(o.label)}</option>`).join('');
|
|
16
|
+
return `
|
|
17
|
+
<section class="rd-news-language-select" data-testid="rd-news-language-select">
|
|
18
|
+
${label ? `<span class="rd-field__label">${this.esc(label)}</span>` : ''}
|
|
19
|
+
<select class="rd-select" data-ref="select" aria-label="${this.esc(label || 'News filter')}">
|
|
20
|
+
<option value="">${this.esc(placeholder)}</option>${opts}
|
|
21
|
+
</select>
|
|
22
|
+
<div data-ref="slot"></div>
|
|
23
|
+
</section>`;
|
|
24
|
+
}
|
|
25
|
+
wireEvents() {
|
|
26
|
+
this.addEventListener('change', (event) => {
|
|
27
|
+
const target = event.target;
|
|
28
|
+
if (target instanceof HTMLSelectElement && target.matches('[data-ref="select"]')) {
|
|
29
|
+
this.dispatchDetail('value-change', { value: target.value });
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function registerRdNewsLanguageSelect() {
|
|
35
|
+
defineRosettaElement(RD_NEWS_LANGUAGE_SELECT_TAG, RdNewsLanguageSelectElement);
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=rd-news-language-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-news-language-select.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/language-select/rd-news-language-select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,CAAC,MAAM,2BAA2B,GAAG,yBAAyB,CAAC;AAarE,4FAA4F;AAC5F,MAAM,OAAO,2BAA4B,SAAQ,kBAAkB;IACjE,MAAM,CAAU,OAAO,GAAG,2BAA2B,CAAC;IAEtD,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAES,WAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAA0C,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtJ,OAAO;;UAED,KAAK,CAAC,CAAC,CAAC,iCAAiC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;kEACd,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,aAAa,CAAC;6BACrE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI;;;iBAGjD,CAAC;IAChB,CAAC;IAEkB,UAAU;QAC3B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,IAAI,MAAM,YAAY,iBAAiB,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACjF,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,UAAU,4BAA4B;IAC1C,oBAAoB,CAAC,2BAA2B,EAAE,2BAA2B,CAAC,CAAC;AACjF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/region-select/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_NEWS_REGION_SELECT_TAG = "rd-news-region-select";
|
|
3
|
+
export interface NewsRegionSelectProps {
|
|
4
|
+
label?: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
options?: {
|
|
7
|
+
value: string;
|
|
8
|
+
label: string;
|
|
9
|
+
}[];
|
|
10
|
+
value?: string;
|
|
11
|
+
onChange?: (value: string) => void;
|
|
12
|
+
className?: string;
|
|
13
|
+
style?: Record<string, string>;
|
|
14
|
+
children?: unknown;
|
|
15
|
+
}
|
|
16
|
+
/** @rosettadash/web-components/visual/news/region-select — visual.news.region-select */
|
|
17
|
+
export declare class RdNewsRegionSelectElement extends RosettaAtomElement {
|
|
18
|
+
static readonly tagName = "rd-news-region-select";
|
|
19
|
+
static get observedAttributes(): string[];
|
|
20
|
+
protected buildMarkup(): string;
|
|
21
|
+
protected wireEvents(): void;
|
|
22
|
+
}
|
|
23
|
+
export declare function registerRdNewsRegionSelect(): void;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { defineRosettaElement } from '../../../lib/element-utils.js';
|
|
2
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
3
|
+
export const RD_NEWS_REGION_SELECT_TAG = 'rd-news-region-select';
|
|
4
|
+
/** @rosettadash/web-components/visual/news/region-select — visual.news.region-select */
|
|
5
|
+
export class RdNewsRegionSelectElement extends RosettaAtomElement {
|
|
6
|
+
static tagName = RD_NEWS_REGION_SELECT_TAG;
|
|
7
|
+
static get observedAttributes() {
|
|
8
|
+
return ["label", "placeholder", "options", "value"];
|
|
9
|
+
}
|
|
10
|
+
buildMarkup() {
|
|
11
|
+
const label = this.readAttr('label');
|
|
12
|
+
const placeholder = this.readAttr('placeholder', 'Select…');
|
|
13
|
+
const value = this.readAttr('value');
|
|
14
|
+
const options = this.parseJsonAttr('options', []);
|
|
15
|
+
const opts = options.map((o) => `<option value="${this.esc(o.value)}"${o.value === value ? ' selected' : ''}>${this.esc(o.label)}</option>`).join('');
|
|
16
|
+
return `
|
|
17
|
+
<section class="rd-news-region-select" data-testid="rd-news-region-select">
|
|
18
|
+
${label ? `<span class="rd-field__label">${this.esc(label)}</span>` : ''}
|
|
19
|
+
<select class="rd-select" data-ref="select" aria-label="${this.esc(label || 'News filter')}">
|
|
20
|
+
<option value="">${this.esc(placeholder)}</option>${opts}
|
|
21
|
+
</select>
|
|
22
|
+
<div data-ref="slot"></div>
|
|
23
|
+
</section>`;
|
|
24
|
+
}
|
|
25
|
+
wireEvents() {
|
|
26
|
+
this.addEventListener('change', (event) => {
|
|
27
|
+
const target = event.target;
|
|
28
|
+
if (target instanceof HTMLSelectElement && target.matches('[data-ref="select"]')) {
|
|
29
|
+
this.dispatchDetail('value-change', { value: target.value });
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function registerRdNewsRegionSelect() {
|
|
35
|
+
defineRosettaElement(RD_NEWS_REGION_SELECT_TAG, RdNewsRegionSelectElement);
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=rd-news-region-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-news-region-select.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/region-select/rd-news-region-select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;AAajE,wFAAwF;AACxF,MAAM,OAAO,yBAA0B,SAAQ,kBAAkB;IAC/D,MAAM,CAAU,OAAO,GAAG,yBAAyB,CAAC;IAEpD,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAES,WAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAA0C,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtJ,OAAO;;UAED,KAAK,CAAC,CAAC,CAAC,iCAAiC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;kEACd,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,aAAa,CAAC;6BACrE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI;;;iBAGjD,CAAC;IAChB,CAAC;IAEkB,UAAU;QAC3B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,IAAI,MAAM,YAAY,iBAAiB,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACjF,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,UAAU,0BAA0B;IACxC,oBAAoB,CAAC,yBAAyB,EAAE,yBAAyB,CAAC,CAAC;AAC7E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/results-table/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_NEWS_RESULTS_TABLE_TAG = "rd-news-results-table";
|
|
3
|
+
export interface NewsResultsTableProps {
|
|
4
|
+
title?: string;
|
|
5
|
+
className?: string;
|
|
6
|
+
style?: Record<string, string>;
|
|
7
|
+
children?: unknown;
|
|
8
|
+
}
|
|
9
|
+
/** @rosettadash/web-components/visual/news/results-table — visual.news.results-table */
|
|
10
|
+
export declare class RdNewsResultsTableElement extends RosettaAtomElement {
|
|
11
|
+
static readonly tagName = "rd-news-results-table";
|
|
12
|
+
static get observedAttributes(): string[];
|
|
13
|
+
protected buildMarkup(): string;
|
|
14
|
+
protected wireEvents(): void;
|
|
15
|
+
}
|
|
16
|
+
export declare function registerRdNewsResultsTable(): void;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { defineRosettaElement } from '../../../lib/element-utils.js';
|
|
2
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
3
|
+
export const RD_NEWS_RESULTS_TABLE_TAG = 'rd-news-results-table';
|
|
4
|
+
/** @rosettadash/web-components/visual/news/results-table — visual.news.results-table */
|
|
5
|
+
export class RdNewsResultsTableElement extends RosettaAtomElement {
|
|
6
|
+
static tagName = RD_NEWS_RESULTS_TABLE_TAG;
|
|
7
|
+
static get observedAttributes() {
|
|
8
|
+
return ["title", "rows"];
|
|
9
|
+
}
|
|
10
|
+
buildMarkup() {
|
|
11
|
+
const title = this.readAttr('title', 'News results');
|
|
12
|
+
const rows = this.parseJsonAttr('rows', []);
|
|
13
|
+
const body = rows.map((row) => `<tr data-row-id="${this.esc(String(row['id'] ?? ''))}"><td>${this.esc(row['headline'] ?? '')}</td><td>${this.esc(row['source'] ?? '')}</td><td>${this.esc(row['region'] ?? '')}</td><td>${this.esc(row['published'] ?? '')}</td></tr>`).join('');
|
|
14
|
+
return `
|
|
15
|
+
<section class="rd-news-results-table" data-testid="rd-news-results-table">
|
|
16
|
+
<header class="rd-table__header"><span>${this.esc(title)}</span></header>
|
|
17
|
+
<table class="rd-table"><thead><tr><th>Headline</th><th>Source</th><th>Region</th><th>Published</th></tr></thead><tbody>${body}</tbody></table>
|
|
18
|
+
<div data-ref="slot"></div>
|
|
19
|
+
</section>`;
|
|
20
|
+
}
|
|
21
|
+
wireEvents() {
|
|
22
|
+
this.addEventListener('click', (event) => {
|
|
23
|
+
const row = event.target instanceof HTMLElement ? event.target.closest('tr[data-row-id]') : null;
|
|
24
|
+
if (row instanceof HTMLElement && row.dataset['rowId']) {
|
|
25
|
+
this.dispatchDetail('row-select', { id: row.dataset['rowId'] });
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export function registerRdNewsResultsTable() {
|
|
31
|
+
defineRosettaElement(RD_NEWS_RESULTS_TABLE_TAG, RdNewsResultsTableElement);
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=rd-news-results-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-news-results-table.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/results-table/rd-news-results-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;AASjE,wFAAwF;AACxF,MAAM,OAAO,yBAA0B,SAAQ,kBAAkB;IAC/D,MAAM,CAAU,OAAO,GAAG,yBAAyB,CAAC;IAEpD,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,OAAO,EAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAES,WAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAA4C,MAAM,EAAE,EAAE,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjR,OAAO;;iDAEsC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;kIACkE,IAAI;;iBAErH,CAAC;IAChB,CAAC;IAEkB,UAAU;QAC3B,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,YAAY,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACjG,IAAI,GAAG,YAAY,WAAW,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,UAAU,0BAA0B;IACxC,oBAAoB,CAAC,yBAAyB,EAAE,yBAAyB,CAAC,CAAC;AAC7E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/search-box/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_NEWS_SEARCH_BOX_TAG = "rd-news-search-box";
|
|
3
|
+
export interface NewsSearchBoxProps {
|
|
4
|
+
label?: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
value?: string;
|
|
7
|
+
onSearch?: (query: string) => void;
|
|
8
|
+
className?: string;
|
|
9
|
+
style?: Record<string, string>;
|
|
10
|
+
children?: unknown;
|
|
11
|
+
}
|
|
12
|
+
/** @rosettadash/web-components/visual/news/search-box — visual.news.search-box */
|
|
13
|
+
export declare class RdNewsSearchBoxElement extends RosettaAtomElement {
|
|
14
|
+
static readonly tagName = "rd-news-search-box";
|
|
15
|
+
static get observedAttributes(): string[];
|
|
16
|
+
protected buildMarkup(): string;
|
|
17
|
+
protected wireEvents(): void;
|
|
18
|
+
}
|
|
19
|
+
export declare function registerRdNewsSearchBox(): void;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { defineRosettaElement } from '../../../lib/element-utils.js';
|
|
2
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
3
|
+
export const RD_NEWS_SEARCH_BOX_TAG = 'rd-news-search-box';
|
|
4
|
+
/** @rosettadash/web-components/visual/news/search-box — visual.news.search-box */
|
|
5
|
+
export class RdNewsSearchBoxElement extends RosettaAtomElement {
|
|
6
|
+
static tagName = RD_NEWS_SEARCH_BOX_TAG;
|
|
7
|
+
static get observedAttributes() {
|
|
8
|
+
return ["label", "placeholder", "value"];
|
|
9
|
+
}
|
|
10
|
+
buildMarkup() {
|
|
11
|
+
const label = this.readAttr('label');
|
|
12
|
+
const placeholder = this.readAttr('placeholder', 'Search news…');
|
|
13
|
+
const value = this.readAttr('value');
|
|
14
|
+
return `
|
|
15
|
+
<section class="rd-news-search-box" data-testid="rd-news-search-box">
|
|
16
|
+
${label ? `<span class="rd-field__label">${this.esc(label)}</span>` : ''}
|
|
17
|
+
<div class="rd-search__row">
|
|
18
|
+
<input type="search" class="rd-input" data-ref="query" placeholder="${this.esc(placeholder)}" value="${this.esc(value)}" aria-label="${this.esc(label || 'Search news')}" />
|
|
19
|
+
<button type="button" class="rd-button" data-ref="search">Search</button>
|
|
20
|
+
</div>
|
|
21
|
+
<div data-ref="slot"></div>
|
|
22
|
+
</section>`;
|
|
23
|
+
}
|
|
24
|
+
wireEvents() {
|
|
25
|
+
const emit = () => {
|
|
26
|
+
const query = this.querySelector('[data-ref="query"]')?.value ?? '';
|
|
27
|
+
this.dispatchDetail('search', { query });
|
|
28
|
+
};
|
|
29
|
+
this.addEventListener('click', (event) => {
|
|
30
|
+
if (event.target instanceof HTMLElement && event.target.matches('[data-ref="search"]'))
|
|
31
|
+
emit();
|
|
32
|
+
});
|
|
33
|
+
this.addEventListener('keydown', (event) => {
|
|
34
|
+
if (event.key === 'Enter')
|
|
35
|
+
emit();
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export function registerRdNewsSearchBox() {
|
|
40
|
+
defineRosettaElement(RD_NEWS_SEARCH_BOX_TAG, RdNewsSearchBoxElement);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=rd-news-search-box.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-news-search-box.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/search-box/rd-news-search-box.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AAY3D,kFAAkF;AAClF,MAAM,OAAO,sBAAuB,SAAQ,kBAAkB;IAC5D,MAAM,CAAU,OAAO,GAAG,sBAAsB,CAAC;IAEjD,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,OAAO,EAAC,aAAa,EAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAES,WAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO;;UAED,KAAK,CAAC,CAAC,CAAC,iCAAiC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;;gFAEA,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,aAAa,CAAC;;;;iBAIhK,CAAC;IAChB,CAAC;IAEkB,UAAU;QAC3B,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAmB,oBAAoB,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YACtF,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACvC,IAAI,KAAK,CAAC,MAAM,YAAY,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC;gBAAE,IAAI,EAAE,CAAC;QACjG,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACzC,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO;gBAAE,IAAI,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,UAAU,uBAAuB;IACrC,oBAAoB,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/type-select/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_NEWS_TYPE_SELECT_TAG = "rd-news-type-select";
|
|
3
|
+
export interface NewsTypeSelectProps {
|
|
4
|
+
label?: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
options?: {
|
|
7
|
+
value: string;
|
|
8
|
+
label: string;
|
|
9
|
+
}[];
|
|
10
|
+
value?: string;
|
|
11
|
+
onChange?: (value: string) => void;
|
|
12
|
+
className?: string;
|
|
13
|
+
style?: Record<string, string>;
|
|
14
|
+
children?: unknown;
|
|
15
|
+
}
|
|
16
|
+
/** @rosettadash/web-components/visual/news/type-select — visual.news.type-select */
|
|
17
|
+
export declare class RdNewsTypeSelectElement extends RosettaAtomElement {
|
|
18
|
+
static readonly tagName = "rd-news-type-select";
|
|
19
|
+
static get observedAttributes(): string[];
|
|
20
|
+
protected buildMarkup(): string;
|
|
21
|
+
protected wireEvents(): void;
|
|
22
|
+
}
|
|
23
|
+
export declare function registerRdNewsTypeSelect(): void;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { defineRosettaElement } from '../../../lib/element-utils.js';
|
|
2
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
3
|
+
export const RD_NEWS_TYPE_SELECT_TAG = 'rd-news-type-select';
|
|
4
|
+
/** @rosettadash/web-components/visual/news/type-select — visual.news.type-select */
|
|
5
|
+
export class RdNewsTypeSelectElement extends RosettaAtomElement {
|
|
6
|
+
static tagName = RD_NEWS_TYPE_SELECT_TAG;
|
|
7
|
+
static get observedAttributes() {
|
|
8
|
+
return ["label", "placeholder", "options", "value"];
|
|
9
|
+
}
|
|
10
|
+
buildMarkup() {
|
|
11
|
+
const label = this.readAttr('label');
|
|
12
|
+
const placeholder = this.readAttr('placeholder', 'Select…');
|
|
13
|
+
const value = this.readAttr('value');
|
|
14
|
+
const options = this.parseJsonAttr('options', []);
|
|
15
|
+
const opts = options.map((o) => `<option value="${this.esc(o.value)}"${o.value === value ? ' selected' : ''}>${this.esc(o.label)}</option>`).join('');
|
|
16
|
+
return `
|
|
17
|
+
<section class="rd-news-type-select" data-testid="rd-news-type-select">
|
|
18
|
+
${label ? `<span class="rd-field__label">${this.esc(label)}</span>` : ''}
|
|
19
|
+
<select class="rd-select" data-ref="select" aria-label="${this.esc(label || 'News filter')}">
|
|
20
|
+
<option value="">${this.esc(placeholder)}</option>${opts}
|
|
21
|
+
</select>
|
|
22
|
+
<div data-ref="slot"></div>
|
|
23
|
+
</section>`;
|
|
24
|
+
}
|
|
25
|
+
wireEvents() {
|
|
26
|
+
this.addEventListener('change', (event) => {
|
|
27
|
+
const target = event.target;
|
|
28
|
+
if (target instanceof HTMLSelectElement && target.matches('[data-ref="select"]')) {
|
|
29
|
+
this.dispatchDetail('value-change', { value: target.value });
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function registerRdNewsTypeSelect() {
|
|
35
|
+
defineRosettaElement(RD_NEWS_TYPE_SELECT_TAG, RdNewsTypeSelectElement);
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=rd-news-type-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-news-type-select.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/news/type-select/rd-news-type-select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,CAAC,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AAa7D,oFAAoF;AACpF,MAAM,OAAO,uBAAwB,SAAQ,kBAAkB;IAC7D,MAAM,CAAU,OAAO,GAAG,uBAAuB,CAAC;IAElD,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAES,WAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAA0C,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtJ,OAAO;;UAED,KAAK,CAAC,CAAC,CAAC,iCAAiC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;kEACd,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,aAAa,CAAC;6BACrE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI;;;iBAGjD,CAAC;IAChB,CAAC;IAEkB,UAAU;QAC3B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,IAAI,MAAM,YAAY,iBAAiB,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACjF,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,UAAU,wBAAwB;IACtC,oBAAoB,CAAC,uBAAuB,EAAE,uBAAuB,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/web-components/src/visual/plugin/metric-chip/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RosettaAtomElement } from '../../../lib/rosetta-atom-element.js';
|
|
2
|
+
export declare const RD_METRIC_CHIP_TAG = "rd-metric-chip";
|
|
3
|
+
export interface MetricChipProps {
|
|
4
|
+
chipLabel?: string;
|
|
5
|
+
chipValue?: string;
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: Record<string, string>;
|
|
8
|
+
children?: unknown;
|
|
9
|
+
}
|
|
10
|
+
/** @rosettadash/web-components/visual/plugin/metric-chip — visual.plugin.metric-chip */
|
|
11
|
+
export declare class RdMetricChipElement extends RosettaAtomElement {
|
|
12
|
+
static readonly tagName = "rd-metric-chip";
|
|
13
|
+
static get observedAttributes(): string[];
|
|
14
|
+
protected buildMarkup(): string;
|
|
15
|
+
}
|
|
16
|
+
export declare function registerRdMetricChip(): void;
|