@smartsoft001/crud-shell-angular 1.1.541 → 1.1.545

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/bundles/smartsoft001-crud-shell-angular.umd.js +162 -27
  2. package/bundles/smartsoft001-crud-shell-angular.umd.js.map +1 -1
  3. package/esm2015/lib/+state/crud.effects.js +8 -1
  4. package/esm2015/lib/+state/crud.effects.js.map +1 -1
  5. package/esm2015/lib/+state/crud.facade.js +8 -1
  6. package/esm2015/lib/+state/crud.facade.js.map +1 -1
  7. package/esm2015/lib/components/components.module.js +1 -0
  8. package/esm2015/lib/components/components.module.js.map +1 -1
  9. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  10. package/esm2015/lib/components/export/export.component.js +9 -2
  11. package/esm2015/lib/components/export/export.component.js.map +1 -1
  12. package/esm2015/lib/components/export/export.component.metadata.json +1 -1
  13. package/esm2015/lib/components/filter/base/base.component.js +9 -1
  14. package/esm2015/lib/components/filter/base/base.component.js.map +1 -1
  15. package/esm2015/lib/components/filter/check/check.component.js +2 -1
  16. package/esm2015/lib/components/filter/check/check.component.js.map +1 -1
  17. package/esm2015/lib/components/filter/check/check.component.metadata.json +1 -1
  18. package/esm2015/lib/components/filter/date/date.component.js +2 -1
  19. package/esm2015/lib/components/filter/date/date.component.js.map +1 -1
  20. package/esm2015/lib/components/filter/date/date.component.metadata.json +1 -1
  21. package/esm2015/lib/components/filter/date-with-edit/date-with-edit.component.js +3 -1
  22. package/esm2015/lib/components/filter/date-with-edit/date-with-edit.component.js.map +1 -1
  23. package/esm2015/lib/components/filter/date-with-edit/date-with-edit.component.metadata.json +1 -1
  24. package/esm2015/lib/components/filter/filter.component.js +9 -1
  25. package/esm2015/lib/components/filter/filter.component.js.map +1 -1
  26. package/esm2015/lib/components/filter/flag/flag.component.js +2 -1
  27. package/esm2015/lib/components/filter/flag/flag.component.js.map +1 -1
  28. package/esm2015/lib/components/filter/flag/flag.component.metadata.json +1 -1
  29. package/esm2015/lib/components/filter/radio/radio.component.js +2 -1
  30. package/esm2015/lib/components/filter/radio/radio.component.js.map +1 -1
  31. package/esm2015/lib/components/filter/radio/radio.component.metadata.json +1 -1
  32. package/esm2015/lib/components/filter/text/text.component.js +2 -1
  33. package/esm2015/lib/components/filter/text/text.component.js.map +1 -1
  34. package/esm2015/lib/components/filter/text/text.component.metadata.json +1 -1
  35. package/esm2015/lib/components/filters/filters.component.js +10 -2
  36. package/esm2015/lib/components/filters/filters.component.js.map +1 -1
  37. package/esm2015/lib/components/filters/filters.component.metadata.json +1 -1
  38. package/esm2015/lib/components/filters-config/filters-config.component.js +9 -2
  39. package/esm2015/lib/components/filters-config/filters-config.component.js.map +1 -1
  40. package/esm2015/lib/components/filters-config/filters-config.component.metadata.json +1 -1
  41. package/esm2015/lib/components/multiselect/multiselect.component.js +9 -2
  42. package/esm2015/lib/components/multiselect/multiselect.component.js.map +1 -1
  43. package/esm2015/lib/components/multiselect/multiselect.component.metadata.json +1 -1
  44. package/esm2015/lib/crud-full.module.js +8 -1
  45. package/esm2015/lib/crud-full.module.js.map +1 -1
  46. package/esm2015/lib/crud-full.module.ngfactory.js.map +1 -1
  47. package/esm2015/lib/crud.config.js +2 -0
  48. package/esm2015/lib/crud.config.js.map +1 -1
  49. package/esm2015/lib/crud.module.js +9 -1
  50. package/esm2015/lib/crud.module.js.map +1 -1
  51. package/esm2015/lib/crud.module.ngfactory.js.map +1 -1
  52. package/esm2015/lib/factories/list-pagination/list-pagination.factory.js +8 -1
  53. package/esm2015/lib/factories/list-pagination/list-pagination.factory.js.map +1 -1
  54. package/esm2015/lib/pages/base/base.component.js +8 -1
  55. package/esm2015/lib/pages/base/base.component.js.map +1 -1
  56. package/esm2015/lib/pages/item/item.component.js +9 -1
  57. package/esm2015/lib/pages/item/item.component.js.map +1 -1
  58. package/esm2015/lib/pages/list/list.component.js +8 -1
  59. package/esm2015/lib/pages/list/list.component.js.map +1 -1
  60. package/esm2015/lib/pipes/form-options/form-options.pipe.js +8 -1
  61. package/esm2015/lib/pipes/form-options/form-options.pipe.js.map +1 -1
  62. package/esm2015/lib/pipes/pipes.module.js +1 -0
  63. package/esm2015/lib/pipes/pipes.module.js.map +1 -1
  64. package/esm2015/lib/services/crud/crud.service.js +8 -1
  65. package/esm2015/lib/services/crud/crud.service.js.map +1 -1
  66. package/esm2015/lib/services/socket/socket.service.js +8 -1
  67. package/esm2015/lib/services/socket/socket.service.js.map +1 -1
  68. package/fesm2015/smartsoft001-crud-shell-angular.js +162 -27
  69. package/fesm2015/smartsoft001-crud-shell-angular.js.map +1 -1
  70. package/package.json +17 -17
  71. package/smartsoft001-crud-shell-angular.metadata.json +1 -1
@@ -360,6 +360,7 @@
360
360
  }
361
361
  return CrudConfig;
362
362
  }());
363
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
363
364
  CrudConfig.decorators = [
364
365
  { type: core.Injectable }
365
366
  ];
@@ -370,6 +371,7 @@
370
371
  }
371
372
  return CrudFullConfig;
372
373
  }(CrudConfig));
374
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
373
375
  CrudFullConfig.decorators = [
374
376
  { type: core.Injectable }
375
377
  ];
@@ -666,10 +668,17 @@
666
668
  };
667
669
  return CrudFacade;
668
670
  }());
671
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
669
672
  CrudFacade.decorators = [
670
673
  { type: core.Injectable }
671
674
  ];
672
- /** @nocollapse */
675
+ /**
676
+ * @type {function(): !Array<(null|{
677
+ * type: ?,
678
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
679
+ * })>}
680
+ * @nocollapse
681
+ */
673
682
  CrudFacade.ctorParameters = function () { return [
674
683
  { type: store.Store },
675
684
  { type: CrudConfig }
@@ -709,14 +718,21 @@
709
718
  };
710
719
  return ExportComponent;
711
720
  }(angular.BaseComponent));
721
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
712
722
  ExportComponent.decorators = [
713
723
  { type: core.Component, args: [{
714
724
  selector: 'smart-crud-export',
715
725
  template: "<div class=\"smart-content\">\n <p>\n <smart-button [options]=\"buttonExportCsvOptions\">CSV</smart-button>\n </p>\n <p>\n <smart-button [options]=\"buttonExportXlsxOptions\">XLSX</smart-button>\n </p>\n</div>",
716
- styles: [".smart-content{padding:1.2rem}.smart-content p{margin:.6rem 0}.smart-content smart-button{width:100%;display:block}"]
726
+ styles: [".smart-content{padding:1.2rem}.smart-content p{margin:.6rem 0}.smart-content smart-button{width:100%;display:block}\n"]
717
727
  },] }
718
728
  ];
719
- /** @nocollapse */
729
+ /**
730
+ * @type {function(): !Array<(null|{
731
+ * type: ?,
732
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
733
+ * })>}
734
+ * @nocollapse
735
+ */
720
736
  ExportComponent.ctorParameters = function () { return [
721
737
  { type: CrudFacade },
722
738
  { type: angular.PopoverService },
@@ -731,6 +747,7 @@
731
747
  FilterComponent.prototype.ngOnInit = function () { };
732
748
  return FilterComponent;
733
749
  }());
750
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
734
751
  FilterComponent.decorators = [
735
752
  { type: core.Component, args: [{
736
753
  selector: "smart-crud-filter",
@@ -738,8 +755,15 @@
738
755
  styles: [""]
739
756
  },] }
740
757
  ];
741
- /** @nocollapse */
758
+ /**
759
+ * @type {function(): !Array<(null|{
760
+ * type: ?,
761
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
762
+ * })>}
763
+ * @nocollapse
764
+ */
742
765
  FilterComponent.ctorParameters = function () { return []; };
766
+ /** @type {!Object<string, !Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
743
767
  FilterComponent.propDecorators = {
744
768
  item: [{ type: core.Input }],
745
769
  filter: [{ type: core.Input }]
@@ -849,15 +873,23 @@
849
873
  };
850
874
  return BaseComponent;
851
875
  }());
876
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
852
877
  BaseComponent.decorators = [
853
878
  { type: core.Directive }
854
879
  ];
855
- /** @nocollapse */
880
+ /**
881
+ * @type {function(): !Array<(null|{
882
+ * type: ?,
883
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
884
+ * })>}
885
+ * @nocollapse
886
+ */
856
887
  BaseComponent.ctorParameters = function () { return [
857
888
  { type: CrudFacade },
858
889
  { type: CrudConfig },
859
890
  { type: ICrudModelPossibilitiesProvider, decorators: [{ type: core.Optional }, { type: core.Inject, args: [CRUD_MODEL_POSSIBILITIES_PROVIDER,] }] }
860
891
  ]; };
892
+ /** @type {!Object<string, !Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
861
893
  BaseComponent.propDecorators = {
862
894
  item: [{ type: core.Input }],
863
895
  filter: [{ type: core.Input }]
@@ -888,11 +920,12 @@
888
920
  });
889
921
  return FilterDateComponent;
890
922
  }(BaseComponent));
923
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
891
924
  FilterDateComponent.decorators = [
892
925
  { type: core.Component, args: [{
893
926
  selector: 'smart-crud-filter-date',
894
927
  template: "<ion-row>\n <ion-col>\n <ion-label position=\"floating\">\n {{ item.label | translate }}\n </ion-label>\n <ion-datetime displayFormat=\"YYYY-MM-DD\"\n pickerFormat=\"YYYY-MM-DD\"\n [(ngModel)]=\"customValue\"></ion-datetime>\n </ion-col>\n <ion-col size=\"auto\" *ngIf=\"value\">\n <ion-button color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-col>\n</ion-row>",
895
- styles: [":host{width:100%}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}"]
928
+ styles: [":host{width:100%}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}\n"]
896
929
  },] }
897
930
  ];
898
931
 
@@ -925,13 +958,15 @@
925
958
  };
926
959
  return FilterDateWithEditComponent;
927
960
  }(FilterDateComponent));
961
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
928
962
  FilterDateWithEditComponent.decorators = [
929
963
  { type: core.Component, args: [{
930
964
  selector: 'smart-crud-filter-date-with-edit',
931
965
  template: "<ion-row>\n <ion-col>\n <ion-label position=\"floating\">\n {{ item.label | translate }}\n </ion-label>\n\n <ion-input placeholder=\"YYYY-MM-DD\"\n [(ngModel)]=\"customValue\"\n [pattern]=\"'([12]\\\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\\\d|3[01]))'\"\n ></ion-input>\n <ion-datetime [hidden]=\"true\"\n displayFormat=\"YYYY-MM-DD\"\n pickerFormat=\"YYYY-MM-DD\"\n [(ngModel)]=\"customValue\"></ion-datetime>\n </ion-col>\n <ion-col size=\"auto\">\n <ion-button (click)=\"open()\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"calendar-outline\"></ion-icon>\n </ion-button>\n </ion-col>\n <ion-col size=\"auto\" *ngIf=\"value\">\n <ion-button color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-col>\n</ion-row>",
932
- styles: [":host{width:100%}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}"]
966
+ styles: [":host{width:100%}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}\n"]
933
967
  },] }
934
968
  ];
969
+ /** @type {!Object<string, !Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
935
970
  FilterDateWithEditComponent.propDecorators = {
936
971
  dateTimePicker: [{ type: core.ViewChild, args: [angular$1.IonDatetime, { read: angular$1.IonDatetime, static: false },] }]
937
972
  };
@@ -943,11 +978,12 @@
943
978
  }
944
979
  return FilterRadioComponent;
945
980
  }(BaseComponent));
981
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
946
982
  FilterRadioComponent.decorators = [
947
983
  { type: core.Component, args: [{
948
984
  selector: 'smart-crud-filter-radio',
949
985
  template: "<ion-row>\n <ion-col>\n <ion-radio-group [(ngModel)]=\"value\">\n <ion-item-divider>\n <ion-icon slot=\"start\" name=\"filter-outline\"></ion-icon>\n <ion-label>\n {{ item.label | translate }}\n </ion-label>\n <ion-button *ngIf=\"value\" slot=\"end\" color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-item-divider>\n\n <ion-item *ngFor=\"let item of possibilities$ | async\">\n <ion-label>{{ item.text | translate }}</ion-label>\n <ion-radio [value]=\"item.id\"></ion-radio>\n </ion-item>\n </ion-radio-group>\n </ion-col>\n <!-- <ion-col size=\"auto\" *ngIf=\"value\">\n <ion-button color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-col> -->\n</ion-row>",
950
- styles: [":host{width:100%;margin-bottom:1.2rem}:host ion-radio{margin-right:2.4rem}:host ion-item-divider{font-weight:300;--padding-end:.8rem;font-size:1.2rem;--ion-background-color:linear-gradient(90deg,transparent,var(--ion-color-light))}:host ion-item-divider ion-icon{margin-right:1.6rem;font-size:1.6rem;--color:var(--ion-color-primary)}:host ion-item-divider ion-label{--padding:var(--smart-button-padding-left)/2 var(--smart-button-padding-top)/2 var(--smart-button-padding-right)/2 var(--smart-button-padding-bottom)/2}:host ion-item-divider .squere-button{margin:0;font-size:18px;height:36px;width:36px;padding:0;--padding-start:.2em;--padding-end:.2em}:host ion-item-divider .squere-button ion-icon{margin:0;padding:0}"]
986
+ styles: [":host{width:100%;margin-bottom:1.2rem}:host ion-radio{margin-right:2.4rem}:host ion-item-divider{font-weight:300;--padding-end: .8rem;font-size:1.2rem;--ion-background-color: linear-gradient(90deg, transparent, var(--ion-color-light))}:host ion-item-divider ion-icon{margin-right:1.6rem;font-size:1.6rem;--color: var(--ion-color-primary)}:host ion-item-divider ion-label{--padding: var(--smart-button-padding-left)/2 var(--smart-button-padding-top)/2 var(--smart-button-padding-right)/2 var(--smart-button-padding-bottom)/2}:host ion-item-divider .squere-button{margin:0;font-size:18px;height:36px;width:36px;padding:0;--padding-start: .2em;--padding-end: .2em}:host ion-item-divider .squere-button ion-icon{margin:0;padding:0}\n"]
951
987
  },] }
952
988
  ];
953
989
 
@@ -958,11 +994,12 @@
958
994
  }
959
995
  return FilterTextComponent;
960
996
  }(BaseComponent));
997
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
961
998
  FilterTextComponent.decorators = [
962
999
  { type: core.Component, args: [{
963
1000
  selector: 'smart-crud-filter-text',
964
1001
  template: "<ion-row>\n <ion-col>\n <ion-label position=\"floating\">\n {{ item.label | translate }}\n </ion-label>\n <ion-input [(ngModel)]=\"value\"></ion-input>\n </ion-col>\n <ion-col size=\"auto\" *ngIf=\"value\">\n <ion-button color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-col>\n</ion-row>",
965
- styles: [":host{width:100%}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}"]
1002
+ styles: [":host{width:100%}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}\n"]
966
1003
  },] }
967
1004
  ];
968
1005
 
@@ -973,11 +1010,12 @@
973
1010
  }
974
1011
  return FilterFlagComponent;
975
1012
  }(BaseComponent));
1013
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
976
1014
  FilterFlagComponent.decorators = [
977
1015
  { type: core.Component, args: [{
978
1016
  selector: 'smart-crud-filter-flag',
979
1017
  template: "<ion-row>\n <ion-col>\n <div class=\"flag-container\">\n <ion-label position=\"static\">\n {{ item.label | translate }}\n </ion-label>\n <ion-checkbox [(ngModel)]=\"value\" slot=\"end\"></ion-checkbox>\n </div>\n </ion-col>\n <ion-col size=\"auto\" *ngIf=\"value\">\n <ion-button color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-col>\n</ion-row>",
980
- styles: [":host{width:100%}:host .flag-container{width:100%;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;padding:0 1.2rem 0 0}:host .flag-container ion-label{--color:var(--smart-color-dark);vertical-align:middle;padding:1.6rem 0}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}"]
1018
+ styles: [":host{width:100%}:host .flag-container{width:100%;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;padding:0 1.2rem 0 0}:host .flag-container ion-label{--color: var(--smart-color-dark);vertical-align:middle;padding:1.6rem 0}:host .squere-button{height:var(--smart-button-height)!important;margin:.8rem}\n"]
981
1019
  },] }
982
1020
  ];
983
1021
 
@@ -1008,11 +1046,12 @@
1008
1046
  };
1009
1047
  return FilterCheckComponent;
1010
1048
  }(BaseComponent));
1049
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1011
1050
  FilterCheckComponent.decorators = [
1012
1051
  { type: core.Component, args: [{
1013
1052
  selector: 'smart-crud-filter-check',
1014
1053
  template: "<ion-row>\n <ion-col>\n <ion-item-divider>\n <ion-icon slot=\"start\" name=\"filter-outline\"></ion-icon>\n <ion-label>\n {{ item.label | translate }}\n </ion-label>\n <ion-button *ngIf=\"value && value.length\" slot=\"end\" color=\"danger\" (click)=\"refresh([])\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-item-divider>\n <ion-item *ngFor=\"let entry of list$ | async\">\n <ion-label>{{entry.value.text | translate}}</ion-label>\n <ion-checkbox slot=\"end\" [checked]=\"entry.isCheck\" (ionChange)=\"onCheckChange($event.detail.checked, entry)\"></ion-checkbox>\n </ion-item>\n </ion-col>\n <!-- <ion-col size=\"auto\" *ngIf=\"value\">\n <ion-button color=\"danger\" (click)=\"refresh(null)\" class=\"squere-button\">\n <ion-icon slot=\"icon-only\" name=\"close-outline\"></ion-icon>\n </ion-button>\n </ion-col> -->\n</ion-row>",
1015
- styles: [":host{width:100%;margin-bottom:1.2rem}:host ion-radio{margin-right:2.4rem}:host ion-item-divider{font-weight:300;--padding-end:.8rem;font-size:1.2rem;--ion-background-color:linear-gradient(90deg,transparent,var(--ion-color-light))}:host ion-item-divider ion-icon{margin-right:1.6rem;font-size:1.6rem;--color:var(--ion-color-primary)}:host ion-item-divider ion-label{--padding:var(--smart-button-padding-left)/2 var(--smart-button-padding-top)/2 var(--smart-button-padding-right)/2 var(--smart-button-padding-bottom)/2}:host ion-item-divider .squere-button{margin:0;font-size:18px;height:36px;width:36px;padding:0;--padding-start:.2em;--padding-end:.2em}:host ion-item-divider .squere-button ion-icon{margin:0;padding:0}"]
1054
+ styles: [":host{width:100%;margin-bottom:1.2rem}:host ion-radio{margin-right:2.4rem}:host ion-item-divider{font-weight:300;--padding-end: .8rem;font-size:1.2rem;--ion-background-color: linear-gradient(90deg, transparent, var(--ion-color-light))}:host ion-item-divider ion-icon{margin-right:1.6rem;font-size:1.6rem;--color: var(--ion-color-primary)}:host ion-item-divider ion-label{--padding: var(--smart-button-padding-left)/2 var(--smart-button-padding-top)/2 var(--smart-button-padding-right)/2 var(--smart-button-padding-bottom)/2}:host ion-item-divider .squere-button{margin:0;font-size:18px;height:36px;width:36px;padding:0;--padding-start: .2em;--padding-end: .2em}:host ion-item-divider .squere-button ion-icon{margin:0;padding:0}\n"]
1016
1055
  },] }
1017
1056
  ];
1018
1057
 
@@ -1111,14 +1150,21 @@
1111
1150
  };
1112
1151
  return FiltersComponent;
1113
1152
  }());
1153
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1114
1154
  FiltersComponent.decorators = [
1115
1155
  { type: core.Component, args: [{
1116
1156
  selector: 'smart-crud-filters',
1117
1157
  template: "<ion-header [hidden]=\"hideMenu\">\n <ion-toolbar>\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"onClose()\">\n <ion-icon slot=\"icon-only\" name=\"close\"> </ion-icon>\n </ion-button>\n </ion-buttons>\n <ion-title>{{ 'filters' | translate }}</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ng-container *ngIf=\"filter$ | async; let filter\">\n <ng-container *ngFor=\"let item of list\">\n <smart-crud-filter [item]=\"item\" [filter]=\"filter\"></smart-crud-filter>\n </ng-container>\n</ng-container>\n",
1118
- styles: [":host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}ion-modal :host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}@media only screen and (max-width:992px){:host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}ion-modal :host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));color:var(--ion-color-dark)}}@media only screen and (max-width:420px){:host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}ion-modal :host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));color:var(--ion-color-dark)}}:host ion-toolbar.ios{height:4.6rem;--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}@media only screen and (max-width:992px){:host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}@media only screen and (max-width:420px){:host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}.modal-wrapper :host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}@media only screen and (max-width:992px){.modal-wrapper :host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}@media only screen and (max-width:420px){.modal-wrapper :host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}:host ion-toolbar.ios.toolbar-searchbar ion-buttons{height:var(--smart-button-height);margin:.4rem}:host ion-toolbar ion-menu-button{color:var(--ion-color-light)}:host ion-toolbar ion-buttons.ios{height:var(--smart-button-height);margin:0}"]
1158
+ styles: [":host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}ion-modal :host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}@media only screen and (max-width: 992px){:host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}ion-modal :host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));color:var(--ion-color-dark)}}@media only screen and (max-width: 420px){:host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}ion-modal :host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));color:var(--ion-color-dark)}}:host ion-toolbar.ios{height:4.6rem;--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}@media only screen and (max-width: 992px){:host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}@media only screen and (max-width: 420px){:host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}.modal-wrapper :host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}@media only screen and (max-width: 992px){.modal-wrapper :host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}@media only screen and (max-width: 420px){.modal-wrapper :host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}:host ion-toolbar.ios.toolbar-searchbar ion-buttons{height:var(--smart-button-height);margin:.4rem}:host ion-toolbar ion-menu-button{color:var(--ion-color-light)}:host ion-toolbar ion-buttons.ios{height:var(--smart-button-height);margin:0}\n"]
1119
1159
  },] }
1120
1160
  ];
1121
- /** @nocollapse */
1161
+ /**
1162
+ * @type {function(): !Array<(null|{
1163
+ * type: ?,
1164
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1165
+ * })>}
1166
+ * @nocollapse
1167
+ */
1122
1168
  FiltersComponent.ctorParameters = function () { return [
1123
1169
  { type: angular.MenuService },
1124
1170
  { type: CrudConfig },
@@ -1126,6 +1172,7 @@
1126
1172
  { type: angular.StyleService },
1127
1173
  { type: core.ElementRef }
1128
1174
  ]; };
1175
+ /** @type {!Object<string, !Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
1129
1176
  FiltersComponent.propDecorators = {
1130
1177
  hideMenu: [{ type: core.Input }]
1131
1178
  };
@@ -1152,14 +1199,21 @@
1152
1199
  };
1153
1200
  return FiltersConfigComponent;
1154
1201
  }());
1202
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1155
1203
  FiltersConfigComponent.decorators = [
1156
1204
  { type: core.Component, args: [{
1157
1205
  selector: 'smart-crud-filters-config',
1158
1206
  template: " <ng-container *ngIf=\"query$ | async; let query\">\n <ion-toolbar *ngIf=\"query?.length\">\n <ion-chip *ngFor=\"let item of query\" (click)=\"onRemoveQuery(item)\" color=\"medium\" outline=\"true\">\n <ion-icon name=\"filter-circle-outline\" color=\"primary\"></ion-icon>\n <ion-label>{{ 'MODEL.' + item.key | translate }} {{ item.type }} {{ item.value | translate }}</ion-label>\n <ion-icon name=\"close\" color=\"danger\"></ion-icon>\n </ion-chip>\n </ion-toolbar>\n</ng-container>",
1159
- styles: [":host ion-label{font-size:calc(var(--default-font-size) - 2px)}"]
1207
+ styles: [":host ion-label{font-size:calc(var(--default-font-size) - 2px)}\n"]
1160
1208
  },] }
1161
1209
  ];
1162
- /** @nocollapse */
1210
+ /**
1211
+ * @type {function(): !Array<(null|{
1212
+ * type: ?,
1213
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1214
+ * })>}
1215
+ * @nocollapse
1216
+ */
1163
1217
  FiltersConfigComponent.ctorParameters = function () { return [
1164
1218
  { type: CrudFacade },
1165
1219
  { type: angular.StyleService },
@@ -1231,14 +1285,21 @@
1231
1285
  };
1232
1286
  return MultiselectComponent;
1233
1287
  }());
1288
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1234
1289
  MultiselectComponent.decorators = [
1235
1290
  { type: core.Component, args: [{
1236
1291
  selector: 'smart-crud-multiselect',
1237
1292
  template: "<ng-container *ngIf=\"list$ | async; let list\">\n <ion-header>\n <ion-toolbar>\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"onClose()\">\n <ion-icon slot=\"icon-only\" name=\"close\"> </ion-icon>\n </ion-button>\n </ion-buttons>\n <ion-title>{{ 'selected' | translate }}: {{ list?.length }}</ion-title>\n </ion-toolbar>\n </ion-header>\n\n <div *ngIf=\"item\">\n <smart-form [options]=\"item | smartFormOptions : 'multiUpdate' : config.type\" (valuePartialChange)=\"onPartialChange($event, list)\" (validChange)=\"onValidChange($event)\"></smart-form>\n\n <smart-button style=\"float: right\" [disabled]=\"lock || !valid\" [options]=\"buttonOptions\">{{ 'change' | translate }}</smart-button>\n </div>\n</ng-container>",
1238
- styles: [":host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}@media only screen and (max-width:992px){:host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}}@media only screen and (max-width:420px){:host ion-toolbar{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}}:host ion-toolbar.ios{height:4.6rem;--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}@media only screen and (max-width:992px){:host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}@media only screen and (max-width:420px){:host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-primary),var(--ion-color-tertiary));--color:var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}.modal-wrapper :host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));--color:var(--ion-color-dark)}@media only screen and (max-width:992px){.modal-wrapper :host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}@media only screen and (max-width:420px){.modal-wrapper :host ion-toolbar.ios{--background:linear-gradient(33deg,var(--ion-color-light),var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}:host ion-toolbar ion-menu-button{color:var(--ion-color-light)}:host ion-toolbar ion-buttons.ios{height:var(--smart-button-height);margin:0}"]
1293
+ styles: [":host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}@media only screen and (max-width: 992px){:host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}}@media only screen and (max-width: 420px){:host ion-toolbar{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}}:host ion-toolbar.ios{height:4.6rem;--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}@media only screen and (max-width: 992px){:host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}@media only screen and (max-width: 420px){:host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-primary), var(--ion-color-tertiary));--color: var(--ion-color-light)}:host ion-toolbar.ios ion-title{text-align:left;padding-left:5.2rem}:host ion-toolbar.ios ion-icon{color:var(--ion-color-light)}}.modal-wrapper :host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));--color: var(--ion-color-dark)}@media only screen and (max-width: 992px){.modal-wrapper :host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}@media only screen and (max-width: 420px){.modal-wrapper :host ion-toolbar.ios{--background: linear-gradient(33deg, var(--ion-color-light), var(--ion-color-light-shade));color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-title{text-align:left;padding-left:1.2rem}.modal-wrapper :host ion-toolbar.ios ion-icon{color:var(--ion-color-dark)}.modal-wrapper :host ion-toolbar.ios ion-buttons{margin:0}}:host ion-toolbar ion-menu-button{color:var(--ion-color-light)}:host ion-toolbar ion-buttons.ios{height:var(--smart-button-height);margin:0}\n"]
1239
1294
  },] }
1240
1295
  ];
1241
- /** @nocollapse */
1296
+ /**
1297
+ * @type {function(): !Array<(null|{
1298
+ * type: ?,
1299
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1300
+ * })>}
1301
+ * @nocollapse
1302
+ */
1242
1303
  MultiselectComponent.ctorParameters = function () { return [
1243
1304
  { type: CrudFacade },
1244
1305
  { type: CrudConfig },
@@ -1260,10 +1321,17 @@
1260
1321
  }
1261
1322
  return SocketService;
1262
1323
  }(ngxSocketIo.Socket));
1324
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1263
1325
  SocketService.decorators = [
1264
1326
  { type: core.Injectable }
1265
1327
  ];
1266
- /** @nocollapse */
1328
+ /**
1329
+ * @type {function(): !Array<(null|{
1330
+ * type: ?,
1331
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1332
+ * })>}
1333
+ * @nocollapse
1334
+ */
1267
1335
  SocketService.ctorParameters = function () { return [
1268
1336
  { type: CrudConfig }
1269
1337
  ]; };
@@ -1384,10 +1452,17 @@
1384
1452
  };
1385
1453
  return CrudService;
1386
1454
  }());
1455
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1387
1456
  CrudService.decorators = [
1388
1457
  { type: core.Injectable }
1389
1458
  ];
1390
- /** @nocollapse */
1459
+ /**
1460
+ * @type {function(): !Array<(null|{
1461
+ * type: ?,
1462
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1463
+ * })>}
1464
+ * @nocollapse
1465
+ */
1391
1466
  CrudService.ctorParameters = function () { return [
1392
1467
  { type: CrudConfig },
1393
1468
  { type: http.HttpClient },
@@ -1546,10 +1621,17 @@
1546
1621
  };
1547
1622
  return CrudEffects;
1548
1623
  }());
1624
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1549
1625
  CrudEffects.decorators = [
1550
1626
  { type: core.Injectable }
1551
1627
  ];
1552
- /** @nocollapse */
1628
+ /**
1629
+ * @type {function(): !Array<(null|{
1630
+ * type: ?,
1631
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1632
+ * })>}
1633
+ * @nocollapse
1634
+ */
1553
1635
  CrudEffects.ctorParameters = function () { return [
1554
1636
  { type: store.ActionsSubject },
1555
1637
  { type: CrudService },
@@ -1681,12 +1763,19 @@
1681
1763
  };
1682
1764
  return FormOptionsPipe;
1683
1765
  }());
1766
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1684
1767
  FormOptionsPipe.decorators = [
1685
1768
  { type: core.Pipe, args: [{
1686
1769
  name: "smartFormOptions",
1687
1770
  },] }
1688
1771
  ];
1689
- /** @nocollapse */
1772
+ /**
1773
+ * @type {function(): !Array<(null|{
1774
+ * type: ?,
1775
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1776
+ * })>}
1777
+ * @nocollapse
1778
+ */
1690
1779
  FormOptionsPipe.ctorParameters = function () { return [
1691
1780
  { type: ICrudModelPossibilitiesProvider, decorators: [{ type: core.Optional }, { type: core.Inject, args: [CRUD_MODEL_POSSIBILITIES_PROVIDER,] }] }
1692
1781
  ]; };
@@ -1696,6 +1785,7 @@
1696
1785
  }
1697
1786
  return CrudPipesModule;
1698
1787
  }());
1788
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1699
1789
  CrudPipesModule.decorators = [
1700
1790
  { type: core.NgModule, args: [{
1701
1791
  declarations: [
@@ -1746,10 +1836,17 @@
1746
1836
  };
1747
1837
  return PageBaseComponent;
1748
1838
  }(angular.BaseComponent));
1839
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1749
1840
  PageBaseComponent.decorators = [
1750
1841
  { type: core.Directive }
1751
1842
  ];
1752
- /** @nocollapse */
1843
+ /**
1844
+ * @type {function(): !Array<(null|{
1845
+ * type: ?,
1846
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1847
+ * })>}
1848
+ * @nocollapse
1849
+ */
1753
1850
  PageBaseComponent.ctorParameters = function () { return [
1754
1851
  { type: angular.AuthService },
1755
1852
  { type: CrudFullConfig }
@@ -1812,10 +1909,17 @@
1812
1909
  };
1813
1910
  return CrudListPaginationFactory;
1814
1911
  }());
1912
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
1815
1913
  CrudListPaginationFactory.decorators = [
1816
1914
  { type: core.Injectable }
1817
1915
  ];
1818
- /** @nocollapse */
1916
+ /**
1917
+ * @type {function(): !Array<(null|{
1918
+ * type: ?,
1919
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
1920
+ * })>}
1921
+ * @nocollapse
1922
+ */
1819
1923
  CrudListPaginationFactory.ctorParameters = function () { return [
1820
1924
  { type: CrudFacade }
1821
1925
  ]; };
@@ -2100,6 +2204,7 @@
2100
2204
  };
2101
2205
  return ListComponent;
2102
2206
  }(PageBaseComponent));
2207
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
2103
2208
  ListComponent.decorators = [
2104
2209
  { type: core.Component, args: [{
2105
2210
  selector: "smart-crud-list-page",
@@ -2107,7 +2212,13 @@
2107
2212
  styles: [""]
2108
2213
  },] }
2109
2214
  ];
2110
- /** @nocollapse */
2215
+ /**
2216
+ * @type {function(): !Array<(null|{
2217
+ * type: ?,
2218
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
2219
+ * })>}
2220
+ * @nocollapse
2221
+ */
2111
2222
  ListComponent.ctorParameters = function () { return [
2112
2223
  { type: CrudFacade },
2113
2224
  { type: router.Router },
@@ -2381,6 +2492,7 @@
2381
2492
  };
2382
2493
  return ItemComponent;
2383
2494
  }(PageBaseComponent));
2495
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
2384
2496
  ItemComponent.decorators = [
2385
2497
  { type: core.Component, args: [{
2386
2498
  selector: "smart-crud-item-page",
@@ -2388,7 +2500,13 @@
2388
2500
  styles: [""]
2389
2501
  },] }
2390
2502
  ];
2391
- /** @nocollapse */
2503
+ /**
2504
+ * @type {function(): !Array<(null|{
2505
+ * type: ?,
2506
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
2507
+ * })>}
2508
+ * @nocollapse
2509
+ */
2392
2510
  ItemComponent.ctorParameters = function () { return [
2393
2511
  { type: router.Router },
2394
2512
  { type: router.ActivatedRoute },
@@ -2405,6 +2523,7 @@
2405
2523
  { type: core.ElementRef },
2406
2524
  { type: angular.ToastService }
2407
2525
  ]; };
2526
+ /** @type {!Object<string, !Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
2408
2527
  ItemComponent.propDecorators = {
2409
2528
  formComponents: [{ type: core.ViewChildren, args: [angular.FormComponent, { read: angular.FormComponent },] }],
2410
2529
  content: [{ type: core.ViewChild, args: [angular$1.IonContent, { static: true },] }]
@@ -2428,6 +2547,7 @@
2428
2547
  }
2429
2548
  return CrudComponentsModule;
2430
2549
  }());
2550
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
2431
2551
  CrudComponentsModule.decorators = [
2432
2552
  { type: core.NgModule, args: [{
2433
2553
  declarations: __spreadArray([], __read(COMPONENTS)),
@@ -2467,6 +2587,7 @@
2467
2587
  }
2468
2588
  return CrudFullModule;
2469
2589
  }());
2590
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
2470
2591
  CrudFullModule.decorators = [
2471
2592
  { type: core.NgModule, args: [{
2472
2593
  declarations: __spreadArray([], __read(PAGES)),
@@ -2494,7 +2615,13 @@
2494
2615
  ]
2495
2616
  },] }
2496
2617
  ];
2497
- /** @nocollapse */
2618
+ /**
2619
+ * @type {function(): !Array<(null|{
2620
+ * type: ?,
2621
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
2622
+ * })>}
2623
+ * @nocollapse
2624
+ */
2498
2625
  CrudFullModule.ctorParameters = function () { return [
2499
2626
  { type: store.Store },
2500
2627
  { type: CrudConfig },
@@ -2510,6 +2637,7 @@
2510
2637
  }
2511
2638
  return CrudCoreModule;
2512
2639
  }());
2640
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
2513
2641
  CrudCoreModule.decorators = [
2514
2642
  { type: core.NgModule, args: [{
2515
2643
  imports: [
@@ -2533,7 +2661,13 @@
2533
2661
  ],
2534
2662
  },] }
2535
2663
  ];
2536
- /** @nocollapse */
2664
+ /**
2665
+ * @type {function(): !Array<(null|{
2666
+ * type: ?,
2667
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
2668
+ * })>}
2669
+ * @nocollapse
2670
+ */
2537
2671
  CrudCoreModule.ctorParameters = function () { return [
2538
2672
  { type: CrudConfig },
2539
2673
  { type: CrudEffects }
@@ -2556,6 +2690,7 @@
2556
2690
  };
2557
2691
  return CrudModule;
2558
2692
  }());
2693
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
2559
2694
  CrudModule.decorators = [
2560
2695
  { type: core.NgModule, args: [{},] }
2561
2696
  ];