@esfaenza/extensions 11.2.36 → 11.2.38
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/bundles/esfaenza-extensions.umd.js +35 -7
- package/bundles/esfaenza-extensions.umd.js.map +1 -1
- package/bundles/esfaenza-extensions.umd.min.js +1 -1
- package/bundles/esfaenza-extensions.umd.min.js.map +1 -1
- package/esfaenza-extensions.metadata.json +1 -1
- package/esm2015/lib/models/ExportConsts.js +5 -1
- package/esm2015/lib/services/extensions.clipboard.service.js +12 -2
- package/esm2015/lib/services/extensions.exports.service.js +21 -7
- package/fesm2015/esfaenza-extensions.js +35 -7
- package/fesm2015/esfaenza-extensions.js.map +1 -1
- package/lib/models/ExportConsts.d.ts +4 -0
- package/package.json +1 -1
|
@@ -412,21 +412,31 @@ class ClipboardService {
|
|
|
412
412
|
return;
|
|
413
413
|
}
|
|
414
414
|
if (window.clipboardData) {
|
|
415
|
+
console.log("[@esfaenza/extensions] Found clipboardData");
|
|
415
416
|
let data = window.clipboardData.getData("Text");
|
|
417
|
+
console.log("[@esfaenza/extensions] Retrieved clipboard values: " + data);
|
|
416
418
|
var value = style == "array" ? this.getClipboardLines(data) :
|
|
417
419
|
style == "matrix" ? this.getClipboardMatrix(data) : [];
|
|
420
|
+
console.log(`[@esfaenza/extensions] Adapted for ${style}: ${JSON.stringify(value)}`);
|
|
418
421
|
if (valueFoundCallback)
|
|
419
422
|
valueFoundCallback(value);
|
|
420
423
|
}
|
|
421
424
|
else if (window.navigator.clipboard) {
|
|
425
|
+
console.log("[@esfaenza/extensions] Found navigator clipboard");
|
|
422
426
|
window.navigator.permissions.query({ name: 'clipboard-read' }).then(result => {
|
|
423
|
-
if (!(result.state === 'granted' || result.state === 'prompt'))
|
|
427
|
+
if (!(result.state === 'granted' || result.state === 'prompt')) {
|
|
428
|
+
console.error("[@esfaenza/extensions] Clipboard permission not granted");
|
|
424
429
|
if (valueFoundCallback)
|
|
425
430
|
valueFoundCallback([]);
|
|
431
|
+
return;
|
|
432
|
+
}
|
|
433
|
+
console.log("[@esfaenza/extensions] Clipboard permission granted, retrieving values");
|
|
426
434
|
window.navigator.clipboard.readText()
|
|
427
435
|
.then(t => {
|
|
436
|
+
console.log("[@esfaenza/extensions] Retrieved clipboard values: " + t);
|
|
428
437
|
var value = style == "array" ? this.getClipboardLines(t) :
|
|
429
438
|
style == "matrix" ? this.getClipboardMatrix(t) : [];
|
|
439
|
+
console.log(`[@esfaenza/extensions] Adapted for ${style}: ${JSON.stringify(value)}`);
|
|
430
440
|
if (valueFoundCallback)
|
|
431
441
|
valueFoundCallback(value);
|
|
432
442
|
})
|
|
@@ -789,7 +799,11 @@ const dictionaryCsvHdrPrefix = "_flatlistcsvhdr";
|
|
|
789
799
|
/**
|
|
790
800
|
* Suffisso della proprietà da generare in cui salvare il formato della proprietà che si sta esportando
|
|
791
801
|
*/
|
|
792
|
-
const csvFormatPrefix = "_csvfmt";
|
|
802
|
+
const csvFormatPrefix = "_csvfmt";
|
|
803
|
+
/**
|
|
804
|
+
* Nome della proprietà che contiene tutti i nomi di tutte le proprietà da esportare
|
|
805
|
+
*/
|
|
806
|
+
const exportList = "__export_list__";
|
|
793
807
|
|
|
794
808
|
// Angular
|
|
795
809
|
/**
|
|
@@ -823,6 +837,10 @@ const Export = (order, header, format = null) => (target, propertyKey) => {
|
|
|
823
837
|
Object.defineProperty(target, propertyKey + csvOrdPrefix, { value: order, writable: false });
|
|
824
838
|
Object.defineProperty(target, propertyKey + csvVisPrefix, { value: !!header, writable: false });
|
|
825
839
|
Object.defineProperty(target, propertyKey + csvHdrPrefix, { value: header, writable: false });
|
|
840
|
+
if (target[exportList])
|
|
841
|
+
target[exportList].push(propertyKey);
|
|
842
|
+
else
|
|
843
|
+
target[exportList] = [propertyKey];
|
|
826
844
|
};
|
|
827
845
|
/**
|
|
828
846
|
* Decoratore di esportazione utilizzabile su un oggetto.
|
|
@@ -870,6 +888,10 @@ const ExportAs = (order, type) => (target, propertyKey) => {
|
|
|
870
888
|
Object.defineProperty(target, propertyKey + prop + csvValueNavigator, { value: propertyKey + "." + prop, writable: false });
|
|
871
889
|
Object.defineProperty(target, propertyKey + prop + csvVisPrefix, { value: toEmit, writable: false });
|
|
872
890
|
Object.defineProperty(target, propertyKey + prop + csvHdrPrefix, { value: lbl, writable: false });
|
|
891
|
+
if (target[exportList])
|
|
892
|
+
target[exportList].push(propertyKey + prop);
|
|
893
|
+
else
|
|
894
|
+
target[exportList] = [propertyKey + prop];
|
|
873
895
|
}
|
|
874
896
|
}
|
|
875
897
|
};
|
|
@@ -896,6 +918,10 @@ const ExportList = (order, headernavigator, valuenavigator, valueformat = null)
|
|
|
896
918
|
Object.defineProperty(target, propertyKey + listCsvValPrefix, { value: valuenavigator, writable: false });
|
|
897
919
|
Object.defineProperty(target, propertyKey + listCsvHdrPrefix, { value: headernavigator, writable: false });
|
|
898
920
|
Object.defineProperty(target, propertyKey + listCsvValFormat, { value: valueformat, writable: false });
|
|
921
|
+
if (target[exportList])
|
|
922
|
+
target[exportList].push(propertyKey + listCsvHdrPrefix);
|
|
923
|
+
else
|
|
924
|
+
target[exportList] = [propertyKey + listCsvHdrPrefix];
|
|
899
925
|
};
|
|
900
926
|
/**
|
|
901
927
|
* Decoratore di esportazione utilizzabile su un dizionario. Se ad esempio si vogliono generare le colonne
|
|
@@ -916,6 +942,10 @@ const ExportDictionary = (order, headernavigator, valuenavigator) => (target, pr
|
|
|
916
942
|
Object.defineProperty(target, propertyKey + csvOrdPrefix, { value: order, writable: false });
|
|
917
943
|
Object.defineProperty(target, propertyKey + dictionaryCsvValPrefix, { value: valuenavigator, writable: false });
|
|
918
944
|
Object.defineProperty(target, propertyKey + dictionaryCsvHdrPrefix, { value: headernavigator, writable: false });
|
|
945
|
+
if (target[exportList])
|
|
946
|
+
target[exportList].push(propertyKey + dictionaryCsvHdrPrefix);
|
|
947
|
+
else
|
|
948
|
+
target[exportList] = [propertyKey + dictionaryCsvHdrPrefix];
|
|
919
949
|
};
|
|
920
950
|
/**
|
|
921
951
|
* Service che si occupa dell'esportazione degli oggetti marcati dai Decoratori **ExportDictionary**, **ExportList**, **ExportAs** o **Export**
|
|
@@ -1012,11 +1042,9 @@ class ExportService {
|
|
|
1012
1042
|
parseAndGetHeaders(obj) {
|
|
1013
1043
|
var headers = [];
|
|
1014
1044
|
// Miracle incoming
|
|
1015
|
-
let
|
|
1016
|
-
for (
|
|
1017
|
-
|
|
1018
|
-
continue;
|
|
1019
|
-
let prop = propsDictionary[propId];
|
|
1045
|
+
let exportProps = obj[exportList];
|
|
1046
|
+
for (let i = 0; i < exportProps.length; i++) {
|
|
1047
|
+
let prop = exportProps[i];
|
|
1020
1048
|
let propBase = "";
|
|
1021
1049
|
let toCall;
|
|
1022
1050
|
if (prop.endsWith(listCsvHdrPrefix)) {
|