@provoly/dashboard 0.12.6 → 0.12.7
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/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +1 -1
- package/esm2022/lib/core/store/data-source/data-source.effects.mjs +4 -3
- package/esm2022/lib/core/store/data-source/data-source.reducer.mjs +24 -2
- package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-selector.component.mjs +97 -0
- package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +29 -62
- package/esm2022/lib/dashboard/components/widgets/public-api.mjs +2 -1
- package/esm2022/lib/dashboard/dashboard.module.mjs +8 -4
- package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +4 -1
- package/esm2022/restitution/components/restitution/restitution.component.mjs +7 -24
- package/esm2022/restitution/style/css.component.mjs +2 -2
- package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +3 -3
- package/esm2022/widgets/widget-chart/component/widget-chart.component.mjs +3 -3
- package/esm2022/widgets/widget-detail/component/widget-detail.component.mjs +1 -1
- package/esm2022/widgets/widget-graph/component/widget-graph.component.mjs +3 -3
- package/esm2022/widgets/widget-map/component/widget-map.component.mjs +19 -12
- package/esm2022/widgets/widget-table/component/widget-table.component.mjs +3 -3
- package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +3 -3
- package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-presentation.mjs +3 -0
- package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-restitution.mjs +8 -25
- package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +2 -2
- package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +2 -2
- package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs +2 -2
- package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +18 -11
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +2 -2
- package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +2 -2
- package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
- package/fesm2022/provoly-dashboard.mjs +150 -72
- package/fesm2022/provoly-dashboard.mjs.map +1 -1
- package/lib/core/store/data-source/data-source.effects.d.ts +1 -0
- package/lib/dashboard/components/widgets/datasource-selector/datasource-selector.component.d.ts +34 -0
- package/lib/dashboard/components/widgets/header/widget-header.component.d.ts +5 -16
- package/lib/dashboard/components/widgets/public-api.d.ts +1 -0
- package/lib/dashboard/dashboard.module.d.ts +15 -14
- package/package.json +1 -1
- package/restitution/components/restitution/restitution.component.d.ts +3 -9
- package/restitution/style/_o-restitution.scss +0 -4
- package/schematics/ng-add/index.spec.js +0 -2
- package/schematics/ng-add/index.spec.js.map +1 -1
- package/styles/components/_o-datasources.scss +17 -56
- package/styles/components/_o-widget.scss +40 -32
- package/styles-theme/components-theme/_o-datasources.theme.scss +8 -5
- package/widgets/widget-map/component/widget-map.component.d.ts +5 -2
|
@@ -5,7 +5,7 @@ import { Component, ViewEncapsulation, EventEmitter, Input, Output, TemplateRef,
|
|
|
5
5
|
import * as i4 from '@angular/forms';
|
|
6
6
|
import { FormsModule } from '@angular/forms';
|
|
7
7
|
import * as i1 from '@provoly/dashboard';
|
|
8
|
-
import { SubscriptionnerDirective, DEFAULT_RESTITUTION_ICON_URL, PryVisibilityType, LibraryTypes, DataSourceActions, ClassActions, ConfigActions, FieldActions, ClassSelectors,
|
|
8
|
+
import { SubscriptionnerDirective, DEFAULT_RESTITUTION_ICON_URL, PryVisibilityType, LibraryTypes, DataSourceActions, ClassActions, ConfigActions, FieldActions, ClassSelectors, SearchActions, ViewMode, ConfigSelectors, DashboardSelectors, DashboardGridLayout, DashboardActions, PryCoreModule, PryIconModule, PrySelectModule, PryDashboardModule, PryShareModule, PryI18nModule, PryOverlayModule } from '@provoly/dashboard';
|
|
9
9
|
import { PryCardModule } from '@provoly/dashboard/components/card';
|
|
10
10
|
import * as i6 from '@provoly/dashboard/components/checkbox';
|
|
11
11
|
import { PryCheckboxModule } from '@provoly/dashboard/components/checkbox';
|
|
@@ -17,17 +17,17 @@ import { PrySearchModule } from '@provoly/dashboard/search';
|
|
|
17
17
|
import * as i2 from '@angular/cdk/overlay';
|
|
18
18
|
import { OverlayConfig } from '@angular/cdk/overlay';
|
|
19
19
|
import { TemplatePortal } from '@angular/cdk/portal';
|
|
20
|
-
import {
|
|
20
|
+
import { Subject, map, BehaviorSubject, combineLatest } from 'rxjs';
|
|
21
21
|
import * as i1$1 from '@ngrx/store';
|
|
22
22
|
import { v4 } from 'uuid';
|
|
23
23
|
|
|
24
24
|
class PryCatalogCssComponent {
|
|
25
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryCatalogCssComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: PryCatalogCssComponent, selector: "pry-restitution-css", ngImport: i0, template: '', isInline: true, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--ghost{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:-moz-fit-content;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion__title{position:relative;border-bottom-style:solid;border-bottom-width:.0625rem}.o-catalog .o-accordion__title:before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:3px}.o-catalog .o-accordion__title:first-child{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}.o-catalog .o-accordion__title__btn{width:100%;height:70%;padding:0;text-transform:uppercase;text-align:left}\n", ".o-restitution{height:100%;margin:0 auto;border-collapse:collapse;font-size:.875rem;min-width:20.625rem;overflow:hidden}.o-restitution .widget-instanciator{position:relative;height:100%}.o-restitution .m-btn-group.actions{padding-top:1.5625rem;padding-bottom:1.25rem}.o-restitution .a-checkbox{margin-bottom:0rem}.o-restitution
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: PryCatalogCssComponent, selector: "pry-restitution-css", ngImport: i0, template: '', isInline: true, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--ghost{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:-moz-fit-content;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion__title{position:relative;border-bottom-style:solid;border-bottom-width:.0625rem}.o-catalog .o-accordion__title:before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:3px}.o-catalog .o-accordion__title:first-child{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}.o-catalog .o-accordion__title__btn{width:100%;height:70%;padding:0;text-transform:uppercase;text-align:left}\n", ".o-restitution{height:100%;margin:0 auto;border-collapse:collapse;font-size:.875rem;min-width:20.625rem;overflow:hidden}.o-restitution .widget-instanciator{position:relative;height:100%}.o-restitution .m-btn-group.actions{padding-top:1.5625rem;padding-bottom:1.25rem}.o-restitution .a-checkbox{margin-bottom:0rem}.o-restitution label{border-radius:10%}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox{height:5.25rem}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__content{height:100%}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:auto}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item__header{position:relative;display:flex;align-items:center;justify-content:center;height:6.875rem}.o-presentation__item__header img{width:auto;height:90%;cursor:pointer}.o-presentation__item__header img.is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem}.o-presentation__item__txt .a-h3{font-size:.875rem}.o-presentation__item__txt .a-p{font-size:.8125rem}.o-presentation__item__txt .a-p.-date{margin-bottom:0}.o-presentation__item__footer{padding:.625rem .9375rem}.o-presentation__item__footer .m-actions-list{justify-content:space-evenly}.o-presentation-consult{width:100%;padding:.9375rem}.description-container{position:relative;width:100%}.description{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:inherit;position:relative;line-height:2rem;box-sizing:border-box;pointer-events:none}.description:after{content:\"\";display:block;position:absolute;top:0;right:0;width:40px;height:48px;z-index:1;pointer-events:initial}.description:hover:after{cursor:pointer}.description-tooltip{position:absolute;max-width:50vw;visibility:hidden;background-color:#fff;padding:20px;-webkit-box-shadow:0 0 50px 0 rgba(0,0,0,.3);opacity:0;transition:opacity .5s ease;z-index:2}.description:hover+.description-tooltip{visibility:visible;transition:opacity .2s ease;opacity:1}.title-tooltip{transform:translateY(4rem)}h1.a-presentation-title{font-size:16px;padding-right:20px}.title-container{display:flex}.info-icon{position:relative;width:1.5rem;height:1.5rem;border-radius:50%;background-color:#ccc;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;align-self:center;margin-right:1rem}.o-restitution-catalog .o-manifest-layout__toolbox{height:5.25rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-restitution-catalog .o-catalog__search{position:relative}.o-restitution-catalog .o-catalog__search .a-icon{position:absolute;right:.6875rem;bottom:.5625rem;opacity:.5;pointer-events:none}.o-restitution-catalog .o-manifest-layout__content .o-restitution-wrapper .o-restitution{width:100%}\n"], encapsulation: i0.ViewEncapsulation.None }); }
|
|
27
27
|
}
|
|
28
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryCatalogCssComponent, decorators: [{
|
|
29
29
|
type: Component,
|
|
30
|
-
args: [{ selector: 'pry-restitution-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--ghost{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:-moz-fit-content;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion__title{position:relative;border-bottom-style:solid;border-bottom-width:.0625rem}.o-catalog .o-accordion__title:before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:3px}.o-catalog .o-accordion__title:first-child{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}.o-catalog .o-accordion__title__btn{width:100%;height:70%;padding:0;text-transform:uppercase;text-align:left}\n", ".o-restitution{height:100%;margin:0 auto;border-collapse:collapse;font-size:.875rem;min-width:20.625rem;overflow:hidden}.o-restitution .widget-instanciator{position:relative;height:100%}.o-restitution .m-btn-group.actions{padding-top:1.5625rem;padding-bottom:1.25rem}.o-restitution .a-checkbox{margin-bottom:0rem}.o-restitution
|
|
30
|
+
args: [{ selector: 'pry-restitution-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--ghost{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:-moz-fit-content;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion__title{position:relative;border-bottom-style:solid;border-bottom-width:.0625rem}.o-catalog .o-accordion__title:before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:3px}.o-catalog .o-accordion__title:first-child{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}.o-catalog .o-accordion__title__btn{width:100%;height:70%;padding:0;text-transform:uppercase;text-align:left}\n", ".o-restitution{height:100%;margin:0 auto;border-collapse:collapse;font-size:.875rem;min-width:20.625rem;overflow:hidden}.o-restitution .widget-instanciator{position:relative;height:100%}.o-restitution .m-btn-group.actions{padding-top:1.5625rem;padding-bottom:1.25rem}.o-restitution .a-checkbox{margin-bottom:0rem}.o-restitution label{border-radius:10%}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox{height:5.25rem}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__content{height:100%}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:auto}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item__header{position:relative;display:flex;align-items:center;justify-content:center;height:6.875rem}.o-presentation__item__header img{width:auto;height:90%;cursor:pointer}.o-presentation__item__header img.is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem}.o-presentation__item__txt .a-h3{font-size:.875rem}.o-presentation__item__txt .a-p{font-size:.8125rem}.o-presentation__item__txt .a-p.-date{margin-bottom:0}.o-presentation__item__footer{padding:.625rem .9375rem}.o-presentation__item__footer .m-actions-list{justify-content:space-evenly}.o-presentation-consult{width:100%;padding:.9375rem}.description-container{position:relative;width:100%}.description{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:inherit;position:relative;line-height:2rem;box-sizing:border-box;pointer-events:none}.description:after{content:\"\";display:block;position:absolute;top:0;right:0;width:40px;height:48px;z-index:1;pointer-events:initial}.description:hover:after{cursor:pointer}.description-tooltip{position:absolute;max-width:50vw;visibility:hidden;background-color:#fff;padding:20px;-webkit-box-shadow:0 0 50px 0 rgba(0,0,0,.3);opacity:0;transition:opacity .5s ease;z-index:2}.description:hover+.description-tooltip{visibility:visible;transition:opacity .2s ease;opacity:1}.title-tooltip{transform:translateY(4rem)}h1.a-presentation-title{font-size:16px;padding-right:20px}.title-container{display:flex}.info-icon{position:relative;width:1.5rem;height:1.5rem;border-radius:50%;background-color:#ccc;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;align-self:center;margin-right:1rem}.o-restitution-catalog .o-manifest-layout__toolbox{height:5.25rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-restitution-catalog .o-catalog__search{position:relative}.o-restitution-catalog .o-catalog__search .a-icon{position:absolute;right:.6875rem;bottom:.5625rem;opacity:.5;pointer-events:none}.o-restitution-catalog .o-manifest-layout__content .o-restitution-wrapper .o-restitution{width:100%}\n"] }]
|
|
31
31
|
}] });
|
|
32
32
|
|
|
33
33
|
class PryRestitutionComponent extends SubscriptionnerDirective {
|
|
@@ -36,7 +36,6 @@ class PryRestitutionComponent extends SubscriptionnerDirective {
|
|
|
36
36
|
this.toolboxManifestService = toolboxManifestService;
|
|
37
37
|
this.store = store;
|
|
38
38
|
this.toolboxMenuService = toolboxMenuService;
|
|
39
|
-
this.search$ = new BehaviorSubject('');
|
|
40
39
|
this.customManifest = {
|
|
41
40
|
type: 'detail',
|
|
42
41
|
layout: { x: 1, y: 1, width: 1, height: 1 },
|
|
@@ -62,7 +61,6 @@ class PryRestitutionComponent extends SubscriptionnerDirective {
|
|
|
62
61
|
this.restitutionCreated = new EventEmitter();
|
|
63
62
|
this.type = LibraryTypes.ILLUSTRATION;
|
|
64
63
|
this.isDataSourceSelected = false;
|
|
65
|
-
this.idToNameDatasource = {};
|
|
66
64
|
this.image = DEFAULT_RESTITUTION_ICON_URL;
|
|
67
65
|
this.store.dispatch(DataSourceActions.load());
|
|
68
66
|
this.store.dispatch(ClassActions.load());
|
|
@@ -73,13 +71,6 @@ class PryRestitutionComponent extends SubscriptionnerDirective {
|
|
|
73
71
|
this.widgetsList$ = this.toolboxMenuService.menuStructure$.pipe(map((menu) => menu
|
|
74
72
|
.map((items) => [...items.sub.filter((s) => this.toolboxManifestService.isModel(s.type))])
|
|
75
73
|
.reduce((acc, items) => [...acc, ...items], [])));
|
|
76
|
-
this.filteredDataSource$ = combineLatest([
|
|
77
|
-
this.search$,
|
|
78
|
-
this.store.select(DataSourceSelectors.getDataSourcesSorted)
|
|
79
|
-
]).pipe(map(([searchValue, dataSource]) => dataSource.filter((dataSource) => searchValue === '' || dataSource.name.toLowerCase().includes(searchValue.toLowerCase()))));
|
|
80
|
-
this.subscriptions.add(this.filteredDataSource$.subscribe((dataSource) => {
|
|
81
|
-
dataSource.forEach((ds) => (this.idToNameDatasource[ds.id] = ds.name));
|
|
82
|
-
}));
|
|
83
74
|
}
|
|
84
75
|
ngOnInit() {
|
|
85
76
|
if (this.selectedRestitution) {
|
|
@@ -134,13 +125,8 @@ class PryRestitutionComponent extends SubscriptionnerDirective {
|
|
|
134
125
|
}
|
|
135
126
|
this.prev(stepper);
|
|
136
127
|
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
this.form.selectedDataSource.push(id);
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
this.form.selectedDataSource = this.form.selectedDataSource.filter((dataSourceId) => dataSourceId !== id);
|
|
143
|
-
}
|
|
128
|
+
datasourcesChanged($event) {
|
|
129
|
+
this.form.selectedDataSource = $event.map((ds) => ds.id);
|
|
144
130
|
}
|
|
145
131
|
submit(stepper) {
|
|
146
132
|
if (this.consultMode) {
|
|
@@ -213,15 +199,12 @@ class PryRestitutionComponent extends SubscriptionnerDirective {
|
|
|
213
199
|
this.store.dispatch(ConfigActions.loadWidgets());
|
|
214
200
|
this.restitutionCreated.emit();
|
|
215
201
|
}
|
|
216
|
-
isGeo(ds) {
|
|
217
|
-
return ds.metadata?.find((m) => m.metadataDef.name === GeoMetadata.NAMESPACE) !== undefined;
|
|
218
|
-
}
|
|
219
202
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryRestitutionComponent, deps: [{ token: i1.ToolboxManifestService }, { token: i1$1.Store }, { token: i1.ToolboxMenuService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
220
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: PryRestitutionComponent, selector: "pry-restitution", inputs: { selectedRestitution: "selectedRestitution", edit: "edit", isDataSourceSelected: "isDataSourceSelected", bindId: "bindId" }, outputs: { restitutionCreated: "restitutionCreated" }, usesInheritance: true, ngImport: i0, template: "<pry-restitution-css></pry-restitution-css>\n<div class=\"o-restitution\">\n <h3 class=\"a-h2 o-restitution__title\">\n {{ (consultMode ? '@pry.restitution.consult_title' : '@pry.restitution.create_title') | i18n }}\n </h3>\n <pry-stepper #stepper [isConsultMode]=\"consultMode || edit\" (lastStepCompleted)=\"lastStepCompleted()\">\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.configure' | i18n }}</h4>\n <div>\n <div class=\"m-form-label-field\">\n <label for=\"restitution\" class=\"a-label\">{{ '@pry.restitution.restitution_type' | i18n }}</label>\n <pry-select\n id=\"restitution\"\n class=\"a-pry-select\"\n [itemsAsOption]=\"true\"\n [items]=\"types$ | async\"\n [labelTranslate]=\"true\"\n [(ngModel)]=\"form.selectedWidget\"\n [disabled]=\"consultMode\"\n bindIcon=\"icon\"\n bindLabel=\"label\"\n bindValue=\"type\"\n >\n </pry-select>\n </div>\n <div *ngIf=\"form.selectedWidget !== ''\">\n <div class=\"m-form-label-field\">\n <label for=\"graphTitle\" class=\"a-label\">{{ '@pry.restitution.graph_title' | i18n }}</label>\n <input\n name=\"title\"\n id=\"graphTitle\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.title\"\n type=\"text\"\n [disabled]=\"consultMode\"\n maxlength=\"30\"\n ngDefaultControl\n />\n </div>\n <div class=\"m-form-label-field\">\n <label for=\"description\" class=\"a-label\">{{ '@pry.restitution.description' | i18n }}</label>\n <textarea\n name=\"description\"\n id=\"description\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.description\"\n style=\"resize: none\"\n [disabled]=\"consultMode\"\n maxlength=\"255\"\n ngDefaultControl\n >\n </textarea>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image (changed)=\"image = $event\" [iconUrl]=\"image\" [mode]=\"type\"></pry-select-image>\n <pry-checkbox [(ngModel)]=\"form.cover\" name=\"cover\"> {{ '@pry.restitution.cover' | i18n }}</pry-checkbox>\n </div>\n </div>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"cancel(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" [disabled]=\"isSubmitDisabled()\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </div>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.dataSource' | i18n }}</h4>\n <div class=\"overflow\">\n <div class=\"o-catalog__search\">\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n name=\"search\"\n [placeholder]=\"'Recherchez une donn\u00E9e'\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n ngDefaultControl\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n\n <div class=\"o-datasources\">\n <div *ngIf=\"form.selectedDataSource.length > 0\">\n <h4 class=\"a-h4\">{{ '@pry.restitution.selection' | i18n }}</h4>\n <ul class=\"o-datasources__list o-datasources__list--selected\">\n <li class=\"o-datasources__item\" *ngFor=\"let id of form.selectedDataSource\">\n <button (click)=\"toggleDatasource(id)\" type=\"button\" class=\"a-btn a-btn--icon-text\">\n <span class=\"u-visually-hidden\">{{ '@pry.restitution.unselectDataSource' | i18n }}</span>\n {{ idToNameDatasource[id] }}\n <pry-icon [iconSvg]=\"'close'\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n\n <ng-container *ngIf=\"filteredDataSource$ | async as datasource\">\n <h4 class=\"a-h4\">{{ '@pry.restitution.select' | i18n }}</h4>\n <ul *ngIf=\"datasource.length > 0; else noDatasource\" class=\"o-datasources__list\">\n <li class=\"o-datasources__item\" *ngFor=\"let ds of datasource\" (click)=\"toggleDatasource(ds.id)\">\n <div class=\"o-datasources__card\">\n <div class=\"o-datasources__card__name\">\n <pry-checkbox\n [ngModel]=\"form.selectedDataSource.includes(ds.id)\"\n (click)=\"$event.preventDefault()\"\n ></pry-checkbox>\n <span class=\"u-visually-hidden\">{{ '@pry.restitution.selectDataSource' | i18n }}</span>\n <p class=\"a-p\">\n {{ ds.id | translateId: { type: 'datasource', output: 'name' } | async }}\n <pry-icon *ngIf=\"isGeo(ds)\" iconSvg=\"globe\"></pry-icon>\n </p>\n </div>\n </div>\n </li>\n </ul>\n </ng-container>\n </div>\n\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"submit(stepper)\" [disabled]=\"noDataSourceSelected()\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.visualize' | i18n }}</h4>\n <div class=\"widget-instanciator\">\n <pry-widget-instanciator\n [standalone]=\"true\"\n [staticManifest]=\"customManifest\"\n [open$]=\"openSettings$\"\n (manifestModified)=\"updateManifest($event)\"\n ></pry-widget-instanciator>\n </div>\n <div class=\"m-btn-group -space-evenly actions\" *ngIf=\"!consultMode; else consult\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.broadcast' | i18n }}</h4>\n <div class=\"\">\n <h3>{{ '@pry.restitution.access' | i18n }}</h3>\n {{ '@pry.restitution.choice' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.public' | i18n }}\n </li>\n </ul>\n {{ '@pry.restitution.or' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.private' | i18n }}\n </li>\n </ul>\n </div>\n <pry-share\n [(ngModel)]=\"visibility\"\n [users$]=\"users$\"\n labelProperty=\"name\"\n valueProperty=\"id\"\n [disabled]=\"consultMode\"\n ></pry-share>\n <div class=\"m-btn-group -space-evenly actions\" *ngIf=\"!consultMode; else consult\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button\n (click)=\"goNext(stepper)\"\n [disabled]=\"noDataSourceSelected() || isSubmitDisabled()\"\n type=\"button\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.restitution.broadcast' | i18n }}\n </button>\n </div>\n </pry-step>\n </pry-stepper>\n</div>\n\n<ng-template #consult>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.next' | i18n }}\n </button>\n </div>\n</ng-template>\n<ng-template #noDatasource>\n <p class=\"search-home__container-search\">{{ '@pry.restitution.noDataSource' | i18n }}</p>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.PrySelectImageComponent, selector: "pry-select-image", inputs: ["iconUrl", "size", "mode"], outputs: ["toggled", "changed"] }, { kind: "component", type: i1.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.PryStepperComponent, selector: "pry-stepper", inputs: ["isConsultMode"], outputs: ["lastStepCompleted"] }, { kind: "component", type: i5.PryStepComponent, selector: "pry-step", inputs: ["setActiveState"] }, { kind: "directive", type: i5.PryStepTitleDirective, selector: "[stepTitle]" }, { kind: "component", type: i1.PrySelectComponent, selector: "pry-select", inputs: ["labelTranslate", "baseTranslate", "translationFn", "translationFnArgs", "clearable", "multiple", "multipleClearRight", "placeholder", "isForm", "required", "name", "readonly", "items", "itemsAsOption", "bindData", "bindValue", "bindLabel", "bindIcon", "iconSize", "templateLabel", "templateOption", "autocomplete"] }, { kind: "component", type: i1.WidgetInstanciatorComponent, selector: "pry-widget-instanciator", inputs: ["widgetIndex", "staticManifest", "standalone", "open$"], outputs: ["manifestModified", "widgetInstance"] }, { kind: "component", type: i1.PryShareComponent, selector: "pry-share", inputs: ["value", "labelProperty", "valueProperty", "users$"] }, { kind: "component", type: i6.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle"] }, { kind: "component", type: PryCatalogCssComponent, selector: "pry-restitution-css" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslateIdPipe, name: "translateId" }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
|
|
203
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: PryRestitutionComponent, selector: "pry-restitution", inputs: { selectedRestitution: "selectedRestitution", edit: "edit", isDataSourceSelected: "isDataSourceSelected", bindId: "bindId" }, outputs: { restitutionCreated: "restitutionCreated" }, usesInheritance: true, ngImport: i0, template: "<pry-restitution-css></pry-restitution-css>\n<div class=\"o-restitution\">\n <h3 class=\"a-h2 o-restitution__title\">\n {{ (consultMode ? '@pry.restitution.consult_title' : '@pry.restitution.create_title') | i18n }}\n </h3>\n <pry-stepper #stepper [isConsultMode]=\"consultMode || edit\" (lastStepCompleted)=\"lastStepCompleted()\">\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.configure' | i18n }}</h4>\n <div>\n <div class=\"m-form-label-field\">\n <label for=\"restitution\" class=\"a-label\">{{ '@pry.restitution.restitution_type' | i18n }}</label>\n <pry-select\n id=\"restitution\"\n class=\"a-pry-select\"\n [itemsAsOption]=\"true\"\n [items]=\"types$ | async\"\n [labelTranslate]=\"true\"\n [(ngModel)]=\"form.selectedWidget\"\n [disabled]=\"consultMode\"\n bindIcon=\"icon\"\n bindLabel=\"label\"\n bindValue=\"type\"\n >\n </pry-select>\n </div>\n <div *ngIf=\"form.selectedWidget !== ''\">\n <div class=\"m-form-label-field\">\n <label for=\"graphTitle\" class=\"a-label\">{{ '@pry.restitution.graph_title' | i18n }}</label>\n <input\n name=\"title\"\n id=\"graphTitle\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.title\"\n type=\"text\"\n [disabled]=\"consultMode\"\n maxlength=\"30\"\n ngDefaultControl\n />\n </div>\n <div class=\"m-form-label-field\">\n <label for=\"description\" class=\"a-label\">{{ '@pry.restitution.description' | i18n }}</label>\n <textarea\n name=\"description\"\n id=\"description\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.description\"\n style=\"resize: none\"\n [disabled]=\"consultMode\"\n maxlength=\"255\"\n ngDefaultControl\n >\n </textarea>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image (changed)=\"image = $event\" [iconUrl]=\"image\" [mode]=\"type\"></pry-select-image>\n <pry-checkbox [(ngModel)]=\"form.cover\" name=\"cover\"> {{ '@pry.restitution.cover' | i18n }}</pry-checkbox>\n </div>\n </div>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"cancel(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" [disabled]=\"isSubmitDisabled()\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </div>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.dataSource' | i18n }}</h4>\n <pry-datasource-selector\n (cancel)=\"prev(stepper)\"\n (validated)=\"submit(stepper)\"\n (datasourcesChanged)=\"datasourcesChanged($event)\"\n [datasourceIds]=\"form.selectedDataSource\"\n ></pry-datasource-selector>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.visualize' | i18n }}</h4>\n <div class=\"widget-instanciator\">\n <pry-widget-instanciator\n [standalone]=\"true\"\n [staticManifest]=\"customManifest\"\n [open$]=\"openSettings$\"\n (manifestModified)=\"updateManifest($event)\"\n ></pry-widget-instanciator>\n </div>\n <div class=\"m-btn-group -space-evenly actions\" *ngIf=\"!consultMode; else consult\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.broadcast' | i18n }}</h4>\n <div class=\"\">\n <h3>{{ '@pry.restitution.access' | i18n }}</h3>\n {{ '@pry.restitution.choice' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.public' | i18n }}\n </li>\n </ul>\n {{ '@pry.restitution.or' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.private' | i18n }}\n </li>\n </ul>\n </div>\n <pry-share\n [(ngModel)]=\"visibility\"\n [users$]=\"users$\"\n labelProperty=\"name\"\n valueProperty=\"id\"\n [disabled]=\"consultMode\"\n ></pry-share>\n <div class=\"m-btn-group -space-evenly actions\" *ngIf=\"!consultMode; else consult\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button\n (click)=\"goNext(stepper)\"\n [disabled]=\"noDataSourceSelected() || isSubmitDisabled()\"\n type=\"button\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.restitution.broadcast' | i18n }}\n </button>\n </div>\n </pry-step>\n </pry-stepper>\n</div>\n\n<ng-template #consult>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.next' | i18n }}\n </button>\n </div>\n</ng-template>\n<ng-template #noDatasource>\n <p class=\"search-home__container-search\">{{ '@pry.restitution.noDataSource' | i18n }}</p>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.PrySelectImageComponent, selector: "pry-select-image", inputs: ["iconUrl", "size", "mode"], outputs: ["toggled", "changed"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.PryStepperComponent, selector: "pry-stepper", inputs: ["isConsultMode"], outputs: ["lastStepCompleted"] }, { kind: "component", type: i5.PryStepComponent, selector: "pry-step", inputs: ["setActiveState"] }, { kind: "directive", type: i5.PryStepTitleDirective, selector: "[stepTitle]" }, { kind: "component", type: i1.PrySelectComponent, selector: "pry-select", inputs: ["labelTranslate", "baseTranslate", "translationFn", "translationFnArgs", "clearable", "multiple", "multipleClearRight", "placeholder", "isForm", "required", "name", "readonly", "items", "itemsAsOption", "bindData", "bindValue", "bindLabel", "bindIcon", "iconSize", "templateLabel", "templateOption", "autocomplete"] }, { kind: "component", type: i1.WidgetInstanciatorComponent, selector: "pry-widget-instanciator", inputs: ["widgetIndex", "staticManifest", "standalone", "open$"], outputs: ["manifestModified", "widgetInstance"] }, { kind: "component", type: i1.DatasourceSelectorComponent, selector: "pry-datasource-selector", inputs: ["manifest", "datasourceIds"], outputs: ["cancel", "validated", "previousTab", "nextTab", "datasourcesChanged"] }, { kind: "component", type: i1.PryShareComponent, selector: "pry-share", inputs: ["value", "labelProperty", "valueProperty", "users$"] }, { kind: "component", type: i6.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle"] }, { kind: "component", type: PryCatalogCssComponent, selector: "pry-restitution-css" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
|
|
221
204
|
}
|
|
222
205
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryRestitutionComponent, decorators: [{
|
|
223
206
|
type: Component,
|
|
224
|
-
args: [{ selector: 'pry-restitution', template: "<pry-restitution-css></pry-restitution-css>\n<div class=\"o-restitution\">\n <h3 class=\"a-h2 o-restitution__title\">\n {{ (consultMode ? '@pry.restitution.consult_title' : '@pry.restitution.create_title') | i18n }}\n </h3>\n <pry-stepper #stepper [isConsultMode]=\"consultMode || edit\" (lastStepCompleted)=\"lastStepCompleted()\">\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.configure' | i18n }}</h4>\n <div>\n <div class=\"m-form-label-field\">\n <label for=\"restitution\" class=\"a-label\">{{ '@pry.restitution.restitution_type' | i18n }}</label>\n <pry-select\n id=\"restitution\"\n class=\"a-pry-select\"\n [itemsAsOption]=\"true\"\n [items]=\"types$ | async\"\n [labelTranslate]=\"true\"\n [(ngModel)]=\"form.selectedWidget\"\n [disabled]=\"consultMode\"\n bindIcon=\"icon\"\n bindLabel=\"label\"\n bindValue=\"type\"\n >\n </pry-select>\n </div>\n <div *ngIf=\"form.selectedWidget !== ''\">\n <div class=\"m-form-label-field\">\n <label for=\"graphTitle\" class=\"a-label\">{{ '@pry.restitution.graph_title' | i18n }}</label>\n <input\n name=\"title\"\n id=\"graphTitle\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.title\"\n type=\"text\"\n [disabled]=\"consultMode\"\n maxlength=\"30\"\n ngDefaultControl\n />\n </div>\n <div class=\"m-form-label-field\">\n <label for=\"description\" class=\"a-label\">{{ '@pry.restitution.description' | i18n }}</label>\n <textarea\n name=\"description\"\n id=\"description\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.description\"\n style=\"resize: none\"\n [disabled]=\"consultMode\"\n maxlength=\"255\"\n ngDefaultControl\n >\n </textarea>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image (changed)=\"image = $event\" [iconUrl]=\"image\" [mode]=\"type\"></pry-select-image>\n <pry-checkbox [(ngModel)]=\"form.cover\" name=\"cover\"> {{ '@pry.restitution.cover' | i18n }}</pry-checkbox>\n </div>\n </div>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"cancel(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" [disabled]=\"isSubmitDisabled()\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </div>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.dataSource' | i18n }}</h4>\n <
|
|
207
|
+
args: [{ selector: 'pry-restitution', template: "<pry-restitution-css></pry-restitution-css>\n<div class=\"o-restitution\">\n <h3 class=\"a-h2 o-restitution__title\">\n {{ (consultMode ? '@pry.restitution.consult_title' : '@pry.restitution.create_title') | i18n }}\n </h3>\n <pry-stepper #stepper [isConsultMode]=\"consultMode || edit\" (lastStepCompleted)=\"lastStepCompleted()\">\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.configure' | i18n }}</h4>\n <div>\n <div class=\"m-form-label-field\">\n <label for=\"restitution\" class=\"a-label\">{{ '@pry.restitution.restitution_type' | i18n }}</label>\n <pry-select\n id=\"restitution\"\n class=\"a-pry-select\"\n [itemsAsOption]=\"true\"\n [items]=\"types$ | async\"\n [labelTranslate]=\"true\"\n [(ngModel)]=\"form.selectedWidget\"\n [disabled]=\"consultMode\"\n bindIcon=\"icon\"\n bindLabel=\"label\"\n bindValue=\"type\"\n >\n </pry-select>\n </div>\n <div *ngIf=\"form.selectedWidget !== ''\">\n <div class=\"m-form-label-field\">\n <label for=\"graphTitle\" class=\"a-label\">{{ '@pry.restitution.graph_title' | i18n }}</label>\n <input\n name=\"title\"\n id=\"graphTitle\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.title\"\n type=\"text\"\n [disabled]=\"consultMode\"\n maxlength=\"30\"\n ngDefaultControl\n />\n </div>\n <div class=\"m-form-label-field\">\n <label for=\"description\" class=\"a-label\">{{ '@pry.restitution.description' | i18n }}</label>\n <textarea\n name=\"description\"\n id=\"description\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.description\"\n style=\"resize: none\"\n [disabled]=\"consultMode\"\n maxlength=\"255\"\n ngDefaultControl\n >\n </textarea>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image (changed)=\"image = $event\" [iconUrl]=\"image\" [mode]=\"type\"></pry-select-image>\n <pry-checkbox [(ngModel)]=\"form.cover\" name=\"cover\"> {{ '@pry.restitution.cover' | i18n }}</pry-checkbox>\n </div>\n </div>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"cancel(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" [disabled]=\"isSubmitDisabled()\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </div>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.dataSource' | i18n }}</h4>\n <pry-datasource-selector\n (cancel)=\"prev(stepper)\"\n (validated)=\"submit(stepper)\"\n (datasourcesChanged)=\"datasourcesChanged($event)\"\n [datasourceIds]=\"form.selectedDataSource\"\n ></pry-datasource-selector>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.visualize' | i18n }}</h4>\n <div class=\"widget-instanciator\">\n <pry-widget-instanciator\n [standalone]=\"true\"\n [staticManifest]=\"customManifest\"\n [open$]=\"openSettings$\"\n (manifestModified)=\"updateManifest($event)\"\n ></pry-widget-instanciator>\n </div>\n <div class=\"m-btn-group -space-evenly actions\" *ngIf=\"!consultMode; else consult\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.broadcast' | i18n }}</h4>\n <div class=\"\">\n <h3>{{ '@pry.restitution.access' | i18n }}</h3>\n {{ '@pry.restitution.choice' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.public' | i18n }}\n </li>\n </ul>\n {{ '@pry.restitution.or' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.private' | i18n }}\n </li>\n </ul>\n </div>\n <pry-share\n [(ngModel)]=\"visibility\"\n [users$]=\"users$\"\n labelProperty=\"name\"\n valueProperty=\"id\"\n [disabled]=\"consultMode\"\n ></pry-share>\n <div class=\"m-btn-group -space-evenly actions\" *ngIf=\"!consultMode; else consult\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button\n (click)=\"goNext(stepper)\"\n [disabled]=\"noDataSourceSelected() || isSubmitDisabled()\"\n type=\"button\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.restitution.broadcast' | i18n }}\n </button>\n </div>\n </pry-step>\n </pry-stepper>\n</div>\n\n<ng-template #consult>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.next' | i18n }}\n </button>\n </div>\n</ng-template>\n<ng-template #noDatasource>\n <p class=\"search-home__container-search\">{{ '@pry.restitution.noDataSource' | i18n }}</p>\n</ng-template>\n" }]
|
|
225
208
|
}], ctorParameters: function () { return [{ type: i1.ToolboxManifestService }, { type: i1$1.Store }, { type: i1.ToolboxMenuService }]; }, propDecorators: { selectedRestitution: [{
|
|
226
209
|
type: Input
|
|
227
210
|
}], edit: [{
|