@esfaenza/extensions 13.1.1 → 13.1.5

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.
@@ -3,8 +3,6 @@ import { InjectionToken, NgModule, Injectable, Optional, Inject } from '@angular
3
3
  import swal from 'sweetalert2';
4
4
  import * as i1 from 'ngx-toastr';
5
5
  import { Deserialize } from 'cerialize';
6
- import { first, tap } from 'rxjs/operators';
7
- import { of } from 'rxjs';
8
6
 
9
7
  /**
10
8
  * Token che identifica il locale da utilizzare per questa libreria, sono supportati i locali 'it-IT' ed 'en-US'
@@ -1757,232 +1755,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
1757
1755
  type: Injectable
1758
1756
  }] });
1759
1757
 
1760
- /**
1761
- * Classe astratta che si occupa di recuperare l'Id sessione univoco per applicazione ed utente collegato
1762
- */
1763
- class BaseSessionRetriever {
1764
- }
1765
-
1766
- /**
1767
- * Classe che gestisce la scrittura delle informazioni nello store locale.
1768
- * Questo store locale potrebbe essere il localStorage (implementazione di default data dal **DefaultStorageProvider**),
1769
- * oppure un'implementazione custom facente capo a un DB esterno.
1770
- *
1771
- * In questo ultimo caso però sarà necessario implementarsi un proprio **BaseSessionRetriever**
1772
- * che generi una chiave univoca di sessione su cui tutte le operazioni di questa classe saranno eseguite
1773
- */
1774
- class BaseStorageProvider {
1775
- /** @ignore Costruttore */
1776
- constructor(session) {
1777
- this.session = session;
1778
- }
1779
- /**
1780
- * Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
1781
- *
1782
- * @param {string} key Chiave da storicizzare
1783
- *
1784
- * @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
1785
- */
1786
- getKey(key) {
1787
- return this.session.getSessionKey() + "§" + key + "§";
1788
- }
1789
- }
1790
-
1791
- // Angular
1792
- /**
1793
- * Service che fornisce funzionalità di base per storicizzazione e recupero oggetti dallo Storage Locale
1794
- *
1795
- * N.B: In ogni chiamata è presente l'operatore rxjs **first()** per far sì che a prescindere dall'implementazione utente/default gli
1796
- * observable effettuino l'unsubscribe automaticamente terminata la prima operazine
1797
- */
1798
- class StorageService {
1799
- /**
1800
- * Costruttore
1801
- *
1802
- * @ignore
1803
- */
1804
- constructor(APPSEARCH_PREFIX, _session, _storage) {
1805
- this.APPSEARCH_PREFIX = APPSEARCH_PREFIX;
1806
- this._session = _session;
1807
- this._storage = _storage;
1808
- }
1809
- /**
1810
- * Inserisce un oggetto che funga da contenitore di oggetti nel local storage, ripulendone gli oggetti (supponendo che sia una view di ricerca) e marcandolo come
1811
- * salvato, in modo che quando viene recuperato il sistema non pensi che sia un oggetto vuoto ma che sappia che gli oggetti son stati ripuliti per risparmiare spazio
1812
- *
1813
- * @param {string} storeName Chiave del localStorage in cui storicizzare l'oggetto **itemsContainer**
1814
- * @param {{ items: any[] }} itemsContainer Oggetto da storicizzare
1815
- */
1816
- setItem(storeName, item) {
1817
- var finalItem;
1818
- //Se sto salvando un oggetto con "items" e "page" vuol dire che è un appsearch, la ripulisco
1819
- if (item.items && item.page) {
1820
- finalItem = JSON.parse(JSON.stringify(item));
1821
- finalItem.items = [];
1822
- finalItem.savedstate = true;
1823
- finalItem.savedprefix = this.APPSEARCH_PREFIX || 'Hot';
1824
- }
1825
- else
1826
- finalItem = item;
1827
- return this._storage.setItem(storeName, finalItem).pipe(first(), tap(res => {
1828
- if (res == false)
1829
- console.error("Impossibile effettuare il salvataggio dell'oggetto all'interno dello Storage Locale per la chiave " + storeName);
1830
- }));
1831
- }
1832
- /**
1833
- * Recupera un oggetto dallo Storage Locale
1834
- *
1835
- * @param {string} storeName Chiave del localStorage da cui recuperare l'oggetto
1836
- *
1837
- * @returns {any} Oggetto recuperato e deserializzato
1838
- */
1839
- getItem(storeName) {
1840
- return this._storage.getItem(storeName).pipe(first(), tap(res => {
1841
- if (res == null)
1842
- console.warn("Impossibile ottenere l'oggetto salvato con chiave " + storeName);
1843
- }));
1844
- }
1845
- /**
1846
- * Ripulisce lo Storage Locale
1847
- *
1848
- * @param {string} storeName Chiave del localStorage da ripulire
1849
- */
1850
- removeItem(storeName) {
1851
- return this._storage.removeItem(storeName).pipe(first(), tap(res => {
1852
- if (res == false)
1853
- console.warn("Impossibile rimuovere l'oggetto salvato con chiave " + storeName);
1854
- }));
1855
- }
1856
- /**
1857
- * Ripulisce lo Storage Locale di ogni cosa salvata
1858
- *
1859
- * @param {string} storeName Chiave del localStorage da ripulire
1860
- */
1861
- clear() {
1862
- return this._storage.clear().pipe(first(), tap(res => {
1863
- if (res == false)
1864
- console.warn("Impossibile ripulire lo Storage Locale");
1865
- }));
1866
- }
1867
- /**
1868
- * Restituisce tutte le chiavi-valore associate alla sessione corrente
1869
- *
1870
- * @returns {Observable<{ [index: string]: string; }>} Risultato della query
1871
- */
1872
- getAll() {
1873
- return this._storage.getAll().pipe(first());
1874
- }
1875
- }
1876
- StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: StorageService, deps: [{ token: APPSEARCH_PREFIX, optional: true }, { token: BaseSessionRetriever }, { token: BaseStorageProvider }], target: i0.ɵɵFactoryTarget.Injectable });
1877
- StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: StorageService });
1878
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: StorageService, decorators: [{
1879
- type: Injectable
1880
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
1881
- type: Optional
1882
- }, {
1883
- type: Inject,
1884
- args: [APPSEARCH_PREFIX]
1885
- }] }, { type: BaseSessionRetriever }, { type: BaseStorageProvider }]; } });
1886
-
1887
- /**
1888
- * Implementazione di default per la classe **BaseSessionRetriever**
1889
- */
1890
- class DefaultSessionRetriever extends BaseSessionRetriever {
1891
- /**
1892
- * Costruttore
1893
- *
1894
- * @ignore
1895
- */
1896
- constructor() { super(); }
1897
- /**
1898
- * Ottiene un ID sessione
1899
- *
1900
- * @returns {string} ID sessione
1901
- */
1902
- getSessionKey() {
1903
- return "DUMMY_SESSION";
1904
- }
1905
- }
1906
- DefaultSessionRetriever.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DefaultSessionRetriever, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1907
- DefaultSessionRetriever.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DefaultSessionRetriever });
1908
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DefaultSessionRetriever, decorators: [{
1909
- type: Injectable
1910
- }], ctorParameters: function () { return []; } });
1911
-
1912
- /** Implementazione di default per la classe **BaseStorageProvider** */
1913
- class DefaultStorageProvider extends BaseStorageProvider {
1914
- /** @ignore Costruttore */
1915
- constructor(session) { super(session); }
1916
- /** @ignore Implementazione di Default con localStorage. Identity viene ignorata perché essendo già nel localStorage è già per sito */
1917
- setItem(key, value) {
1918
- try {
1919
- localStorage.setItem(key, JSON.stringify(value));
1920
- return of(true);
1921
- }
1922
- catch {
1923
- // Potrebbe arrivarmi un prefisso di salvataggio nella modalità di default. Questo serve per ripulire le stesse cose con quel prefisso e sperare di liberare spazio
1924
- if (value.savedprefix) {
1925
- console.warn("Spazio del local Storage insufficiente, prova a ripulirlo e risalvare");
1926
- //Pulisco tutte le view con nome che parta per "Hot"
1927
- for (let key in localStorage) {
1928
- if (localStorage.hasOwnProperty(key) && key.startsWith(value.savedprefix))
1929
- delete localStorage[key];
1930
- }
1931
- try {
1932
- localStorage.setItem(key, JSON.stringify(value));
1933
- }
1934
- catch (e) {
1935
- console.error("Spazio del local Storage insufficiente per salvare i risultati di ricerca con solo filtri. Non salvo nulla");
1936
- }
1937
- }
1938
- return of(false);
1939
- }
1940
- }
1941
- /** @ignore Implementazione di Default con localStorage. Identity viene ignorata perché essendo già nel localStorage è già per sito */
1942
- getItem(key) {
1943
- try {
1944
- var ret = JSON.parse(localStorage.getItem(key));
1945
- return of(ret);
1946
- }
1947
- catch {
1948
- return of(null);
1949
- }
1950
- }
1951
- /** @ignore Implementazione di Default con localStorage. Identity viene ignorata perché essendo già nel localStorage è già per sito */
1952
- removeItem(key) {
1953
- try {
1954
- localStorage.removeItem(key);
1955
- return of(true);
1956
- }
1957
- catch {
1958
- return of(false);
1959
- }
1960
- }
1961
- /** @ignore Implementazione di Default con localStorage. Identity viene ignorata perché essendo già nel localStorage è già per sito */
1962
- clear() {
1963
- try {
1964
- localStorage.clear();
1965
- return of(true);
1966
- }
1967
- catch {
1968
- return of(false);
1969
- }
1970
- }
1971
- /** @ignore Implementazione di Default con localStorage. Identity viene ignorata perché essendo già nel localStorage è già per sito */
1972
- getAll() {
1973
- var ret = {};
1974
- for (let key in localStorage) {
1975
- ret[key] = localStorage[key];
1976
- }
1977
- return of(ret);
1978
- }
1979
- }
1980
- DefaultStorageProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DefaultStorageProvider, deps: [{ token: BaseSessionRetriever }], target: i0.ɵɵFactoryTarget.Injectable });
1981
- DefaultStorageProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DefaultStorageProvider });
1982
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DefaultStorageProvider, decorators: [{
1983
- type: Injectable
1984
- }], ctorParameters: function () { return [{ type: BaseSessionRetriever }]; } });
1985
-
1986
1758
  // Angular
1987
1759
  /**
1988
1760
  * Modulo di estensione che registra autonomamente **TUTTI** i servizi di estensione:
@@ -1991,8 +1763,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
1991
1763
  * ExportService,
1992
1764
  * HashingService,
1993
1765
  * MessageService,
1994
- * UtilityService,
1995
- * StorageService,
1766
+ * UtilityService
1996
1767
  *
1997
1768
  * con eventuali provider che utilizzano
1998
1769
  */
@@ -2007,13 +1778,10 @@ class FullExtensionsModule {
2007
1778
  HashingService,
2008
1779
  MessageService,
2009
1780
  UtilityService,
2010
- StorageService,
2011
1781
  { provide: EXT_LOCALE, useValue: config?.locale || 'it-IT' },
2012
1782
  { provide: EXT_FANCY_ALERTS, useValue: config?.fancy_alerts || true },
2013
1783
  { provide: APPSEARCH_PREFIX, useValue: config?.appsearch_prefix || 'Hot' },
2014
- { provide: EXT_ALLOW_UTC, useValue: config?.allow_utc == null ? false : config?.allow_utc },
2015
- { provide: BaseSessionRetriever, useClass: config?.sessionRetriever || DefaultSessionRetriever },
2016
- { provide: BaseStorageProvider, useClass: config?.storageProvider || DefaultStorageProvider },
1784
+ { provide: EXT_ALLOW_UTC, useValue: config?.allow_utc == null ? false : config?.allow_utc }
2017
1785
  ]
2018
1786
  };
2019
1787
  }
@@ -2051,5 +1819,5 @@ class GenericItem {
2051
1819
  * Generated bundle index. Do not edit.
2052
1820
  */
2053
1821
 
2054
- export { APPSEARCH_PREFIX, BaseSessionRetriever, BaseStorageProvider, CallResult, ClipboardService, CsvHeaders, DateService, EXT_ALLOW_UTC, EXT_FANCY_ALERTS, EXT_LOCALE, Export, ExportAs, ExportDictionary, ExportList, ExportService, ExtensionsModule, FullExtensionsModule, GenericItem, HashingService, MessageService, StorageService, UtilityService };
1822
+ export { APPSEARCH_PREFIX, CallResult, ClipboardService, CsvHeaders, DateService, EXT_ALLOW_UTC, EXT_FANCY_ALERTS, EXT_LOCALE, Export, ExportAs, ExportDictionary, ExportList, ExportService, ExtensionsModule, FullExtensionsModule, GenericItem, HashingService, MessageService, UtilityService };
2055
1823
  //# sourceMappingURL=esfaenza-extensions.mjs.map