@kaspernj/api-maker 1.0.2170 → 1.0.2172

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 (40) hide show
  1. package/build/bootstrap/invalid-feedback.d.ts +4 -1
  2. package/build/bootstrap/invalid-feedback.d.ts.map +1 -1
  3. package/build/config.d.ts +27 -0
  4. package/build/config.d.ts.map +1 -1
  5. package/build/config.js +33 -1
  6. package/build/event-connection.d.ts +7 -1
  7. package/build/event-connection.d.ts.map +1 -1
  8. package/build/event-model-class.d.ts +6 -1
  9. package/build/event-model-class.d.ts.map +1 -1
  10. package/build/table/export/cell-value.d.ts +3 -0
  11. package/build/table/export/cell-value.d.ts.map +1 -0
  12. package/build/table/export/cell-value.js +47 -0
  13. package/build/table/export/file-sinks/web-file-sink.d.ts +53 -0
  14. package/build/table/export/file-sinks/web-file-sink.d.ts.map +1 -0
  15. package/build/table/export/file-sinks/web-file-sink.js +75 -0
  16. package/build/table/export/format-writers/csv-writer.d.ts +30 -0
  17. package/build/table/export/format-writers/csv-writer.d.ts.map +1 -0
  18. package/build/table/export/format-writers/csv-writer.js +47 -0
  19. package/build/table/export/format-writers/html-writer.d.ts +20 -0
  20. package/build/table/export/format-writers/html-writer.d.ts.map +1 -0
  21. package/build/table/export/format-writers/html-writer.js +30 -0
  22. package/build/table/export/format-writers/xlsx-writer.d.ts +23 -0
  23. package/build/table/export/format-writers/xlsx-writer.d.ts.map +1 -0
  24. package/build/table/export/format-writers/xlsx-writer.js +41 -0
  25. package/build/table/export/open-export-file-sink.d.ts +19 -0
  26. package/build/table/export/open-export-file-sink.d.ts.map +1 -0
  27. package/build/table/export/open-export-file-sink.js +26 -0
  28. package/build/table/export/table-exporter.d.ts +80 -0
  29. package/build/table/export/table-exporter.d.ts.map +1 -0
  30. package/build/table/export/table-exporter.js +141 -0
  31. package/build/table/large-per-page-warning-modal.d.ts +14 -0
  32. package/build/table/large-per-page-warning-modal.d.ts.map +1 -0
  33. package/build/table/large-per-page-warning-modal.js +44 -0
  34. package/build/table/settings/download-action.d.ts +8 -1
  35. package/build/table/settings/download-action.d.ts.map +1 -1
  36. package/build/table/settings/download-action.js +51 -24
  37. package/build/table/table.d.ts +1 -1
  38. package/build/table/table.d.ts.map +1 -1
  39. package/build/table/table.js +32 -7
  40. package/package.json +3 -2
@@ -1,8 +1,11 @@
1
1
  export default class ApiMakerBootstrapInvalidFeedback extends React.PureComponent<any, any, any> {
2
- static propTypes: ValidationMap<T>;
2
+ static propTypes: PropTypes.ValidationMap<{
3
+ errors: any[];
4
+ }>;
3
5
  constructor(props: any);
4
6
  render(): import("react/jsx-runtime").JSX.Element;
5
7
  errorMessages(): any[];
6
8
  }
7
9
  import React from "react";
10
+ import PropTypes from "prop-types";
8
11
  //# sourceMappingURL=invalid-feedback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"invalid-feedback.d.ts","sourceRoot":"/src/","sources":["bootstrap/invalid-feedback.jsx"],"names":[],"mappings":"AAMA;IACE,mCAEE;;IAEF,kDAMC;IAED,uBAWC;CACF;kBA3BiB,OAAO"}
1
+ {"version":3,"file":"invalid-feedback.d.ts","sourceRoot":"/src/","sources":["bootstrap/invalid-feedback.jsx"],"names":[],"mappings":"AAMA;IACE;;OAEE;;IAEF,kDAMC;IAED,uBAWC;CACF;kBA3BiB,OAAO;sBAFH,YAAY"}
package/build/config.d.ts CHANGED
@@ -32,6 +32,12 @@ declare class ApiMakerConfig {
32
32
  getHost(): string;
33
33
  /** @returns {string | undefined} */
34
34
  getCableUrl(): string | undefined;
35
+ /** @returns {number} */
36
+ getDangerousRowCountThreshold(): number;
37
+ /**
38
+ * @param {number} _newValue
39
+ */
40
+ setDangerousRowCountThreshold(_newValue: number): void;
35
41
  /**
36
42
  * @param {string | undefined} _newValue
37
43
  */
@@ -56,5 +62,26 @@ declare class ApiMakerConfig {
56
62
  * @param {boolean} _newValue
57
63
  */
58
64
  setUseHtmlForm(_newValue: boolean): void;
65
+ /**
66
+ * Opens a streaming file sink for table exports on platforms without a web default (e.g. React
67
+ * Native/Expo). Receives `{fileName, mimeType, format}` and returns a sink
68
+ * `{write(chunk), close(), abort()}`.
69
+ * @returns {((args: object) => Promise<object>) | undefined}
70
+ */
71
+ getExportFileSinkOpener(): ((args: object) => Promise<object>) | undefined;
72
+ /**
73
+ * @param {((args: object) => Promise<object>) | undefined} opener
74
+ */
75
+ setExportFileSinkOpener(opener: ((args: object) => Promise<object>) | undefined): void;
76
+ /**
77
+ * Serializes an array-of-arrays (header + rows) into xlsx bytes, enabling the optional Excel export format
78
+ * without api_maker depending on a spreadsheet library. Returns a `Uint8Array` (or a promise of one).
79
+ * @returns {((rows: Array<Array<unknown>>) => Uint8Array | Promise<Uint8Array>) | undefined}
80
+ */
81
+ getExportXlsxSerializer(): ((rows: Array<Array<unknown>>) => Uint8Array | Promise<Uint8Array>) | undefined;
82
+ /**
83
+ * @param {((rows: Array<Array<unknown>>) => Uint8Array | Promise<Uint8Array>) | undefined} serializer
84
+ */
85
+ setExportXlsxSerializer(serializer: ((rows: Array<Array<unknown>>) => Uint8Array | Promise<Uint8Array>) | undefined): void;
59
86
  }
60
87
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"/src/","sources":["config.js"],"names":[],"mappings":";mCAIc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;6BAChC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;uBAC7B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;+BACtB;IAAC,MAAM,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAAA;CAAC;2BAE9C;IAAC,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;QAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,WAAW,CAAA;KAAC,KAAK,IAAI,CAAA;CAAC;0BAG5F,oBAAoB,EAAE,GAAG,cAAc,EAAE,GAAG,QAAQ,GAAG,gBAAgB,GAAG,YAAY,GAClG,OAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;AA8InD,6CAA2C;6BA1JhB,eAAe;AAiD1C,uFAAuF;AACvF;IAKI,YAA6C;IAC7C,2CAAgC;IAGlC;;;OAGG;IACH,aAFa,YAAY,CAES;IAElC,kDAAkD;IAClD,cADc,OAAO,SAAS,EAAE,cAAc,CAG7C;IAED,wBAAwB;IACxB,WADc,MAAM,CAGnB;IAED,oCAAoC;IACpC,eADc,MAAM,GAAG,SAAS,CAG/B;IAED;;OAEG;IACH,uBAFW,MAAM,GAAG,SAAS,QAEyC;IAEtE,qCAAqC;IACrC,wBADc,OAAO,GAAG,SAAS,CAGhC;IAED;;OAEG;IACH,gCAFW,OAAO,GAAG,SAAS,QAE0D;IAExF,uCAAuC;IACvC,2BADc,KAAK,CAAC,cAAc,CAAC,CAGlC;IAED,wBAAwB;IACxB,YADc,MAAM,CAGnB;IAED,kCAAkC;IAClC,uBADc,gBAAgB,CAG7B;IAED,0BAA0B;IAC1B,aADc,QAAQ,CAGrB;IAED,yBAAyB;IACzB,kBADc,OAAO,CAGpB;IAED;;OAEG;IACH,0BAFW,OAAO,QAE0D;CAC7E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"/src/","sources":["config.js"],"names":[],"mappings":";mCAIc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;6BAChC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;uBAC7B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;+BACtB;IAAC,MAAM,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAAA;CAAC;2BAE9C;IAAC,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;QAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,WAAW,CAAA;KAAC,KAAK,IAAI,CAAA;CAAC;0BAG5F,oBAAoB,EAAE,GAAG,cAAc,EAAE,GAAG,QAAQ,GAAG,gBAAgB,GAAG,YAAY,GAClG,OAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;AAqLnD,6CAA2C;6BAjMhB,eAAe;AAkD1C,uFAAuF;AACvF;IAKI,YAA6C;IAC7C,2CAAgC;IAGlC;;;OAGG;IACH,aAFa,YAAY,CAES;IAElC,kDAAkD;IAClD,cADc,OAAO,SAAS,EAAE,cAAc,CAG7C;IAED,wBAAwB;IACxB,WADc,MAAM,CAGnB;IAED,oCAAoC;IACpC,eADc,MAAM,GAAG,SAAS,CAG/B;IAED,wBAAwB;IACxB,iCADc,MAAM,CAGnB;IAED;;OAEG;IACH,yCAFW,MAAM,QAEyF;IAE1G;;OAEG;IACH,uBAFW,MAAM,GAAG,SAAS,QAEyC;IAEtE,qCAAqC;IACrC,wBADc,OAAO,GAAG,SAAS,CAGhC;IAED;;OAEG;IACH,gCAFW,OAAO,GAAG,SAAS,QAE0D;IAExF,uCAAuC;IACvC,2BADc,KAAK,CAAC,cAAc,CAAC,CAGlC;IAED,wBAAwB;IACxB,YADc,MAAM,CAGnB;IAED,kCAAkC;IAClC,uBADc,gBAAgB,CAG7B;IAED,0BAA0B;IAC1B,aADc,QAAQ,CAGrB;IAED,yBAAyB;IACzB,kBADc,OAAO,CAGpB;IAED;;OAEG;IACH,0BAFW,OAAO,QAE0D;IAK5E;;;;;OAKG;IACH,2BAFa,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAES;IAErE;;OAEG;IACH,gCAFW,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,QAEmB;IAE7E;;;;OAIG;IACH,2BAFa,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,SAAS,CAEvB;IAErE;;OAEG;IACH,oCAFW,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,SAAS,QAEL;CACtF"}
package/build/config.js CHANGED
@@ -26,6 +26,7 @@ const accessors = {
26
26
  },
27
27
  cableUrl: { require: false },
28
28
  currenciesCollection: { required: true },
29
+ dangerousRowCountThreshold: { default: 1000, required: false },
29
30
  history: { required: true },
30
31
  host: { required: false },
31
32
  i18n: { required: false },
@@ -70,6 +71,14 @@ class ApiMakerConfig {
70
71
  getCableUrl() {
71
72
  return apiMakerConfigNotImplemented("getCableUrl");
72
73
  }
74
+ /** @returns {number} */
75
+ getDangerousRowCountThreshold() {
76
+ return apiMakerConfigNotImplemented("getDangerousRowCountThreshold");
77
+ }
78
+ /**
79
+ * @param {number} _newValue
80
+ */
81
+ setDangerousRowCountThreshold(_newValue) { apiMakerConfigNotImplemented("setDangerousRowCountThreshold"); }
73
82
  /**
74
83
  * @param {string | undefined} _newValue
75
84
  */
@@ -106,6 +115,29 @@ class ApiMakerConfig {
106
115
  * @param {boolean} _newValue
107
116
  */
108
117
  setUseHtmlForm(_newValue) { apiMakerConfigNotImplemented("setUseHtmlForm"); }
118
+ // Table export hooks. These hold functions that should be returned as-is (not invoked), so they use
119
+ // explicit accessors instead of the generic accessor loop below (which would call function values).
120
+ /**
121
+ * Opens a streaming file sink for table exports on platforms without a web default (e.g. React
122
+ * Native/Expo). Receives `{fileName, mimeType, format}` and returns a sink
123
+ * `{write(chunk), close(), abort()}`.
124
+ * @returns {((args: object) => Promise<object>) | undefined}
125
+ */
126
+ getExportFileSinkOpener() { return this.global.exportFileSinkOpener; }
127
+ /**
128
+ * @param {((args: object) => Promise<object>) | undefined} opener
129
+ */
130
+ setExportFileSinkOpener(opener) { this.global.exportFileSinkOpener = opener; }
131
+ /**
132
+ * Serializes an array-of-arrays (header + rows) into xlsx bytes, enabling the optional Excel export format
133
+ * without api_maker depending on a spreadsheet library. Returns a `Uint8Array` (or a promise of one).
134
+ * @returns {((rows: Array<Array<unknown>>) => Uint8Array | Promise<Uint8Array>) | undefined}
135
+ */
136
+ getExportXlsxSerializer() { return this.global.exportXlsxSerializer; }
137
+ /**
138
+ * @param {((rows: Array<Array<unknown>>) => Uint8Array | Promise<Uint8Array>) | undefined} serializer
139
+ */
140
+ setExportXlsxSerializer(serializer) { this.global.exportXlsxSerializer = serializer; }
109
141
  }
110
142
  for (const accessorName in accessors) {
111
143
  const accessorData = accessors[accessorName];
@@ -132,4 +164,4 @@ for (const accessorName in accessors) {
132
164
  }
133
165
  const apiMakerConfig = new ApiMakerConfig();
134
166
  export default apiMakerConfig;
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJjb25maWcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUEsQ0FBQyxtQ0FBbUM7QUFFNUUsdUVBQXVFO0FBQ3ZFLDhEQUE4RDtBQUM5RCxpREFBaUQ7QUFDakQsZ0ZBQWdGO0FBQ2hGOztHQUVHO0FBQ0g7OztHQUdHO0FBRUgsTUFBTSxTQUFTLEdBQUc7SUFDaEIsV0FBVyxFQUFFO1FBQ1gsT0FBTyxFQUFFO1lBQ1AsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDO1lBQ2IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1lBQ1osQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ1gsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ1gsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ1gsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxRQUFRLEVBQUUsSUFBSTtLQUNmO0lBQ0QsUUFBUSxFQUFFLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBQztJQUMxQixvQkFBb0IsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUM7SUFDdEMsT0FBTyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztJQUN6QixJQUFJLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFDO0lBQ3ZCLElBQUksRUFBRSxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUM7SUFDdkIsTUFBTSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztJQUN4QixLQUFLLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFDO0lBQ3hCLFVBQVUsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUM7SUFDNUIsTUFBTSxFQUFFLEVBQUMsUUFBUSxFQUFFLEtBQUss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QUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxpQkFBaUIsUUFBUSxFQUFFLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxDQUFDLENBQUE7UUFDeEUsQ0FBQztJQUNILENBQUMsQ0FBQTtJQUVELGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxpQkFBaUIsRUFBRSxDQUFDLEdBQUcsVUFBVSxHQUFHLElBQUk7UUFDckUsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVDLElBQUksWUFBWSxDQUFDLE9BQU8sS0FBSyxTQUFTO2dCQUFFLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQTtZQUNuRSxJQUFJLFlBQVksQ0FBQyxRQUFRO2dCQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxZQUFZLGtCQUFrQixDQUFDLENBQUE7UUFDL0UsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFFdkMsSUFBSSxPQUFPLEtBQUssSUFBSSxVQUFVO1lBQUUsT0FBTyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtRQUVyRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFBO0FBRTNDLGVBQWUsY0FBYyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5pbXBvcnQge0V2ZW50RW1pdHRlcn0gZnJvbSBcImV2ZW50ZW1pdHRlcjNcIlxuaW1wb3J0ICogYXMgaW5mbGVjdGlvbiBmcm9tIFwiaW5mbGVjdGlvblwiIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc29ydC1pbXBvcnRzXG5cbi8qKiBAdHlwZWRlZiB7W25hbWU6IHN0cmluZywgbWluV2lkdGg6IG51bWJlcl19IEJyZWFrcG9pbnREZWZpbml0aW9uICovXG4vKiogQHR5cGVkZWYge1tsYWJlbDogc3RyaW5nLCBjb2RlOiBzdHJpbmddfSBDdXJyZW5jeU9wdGlvbiAqL1xuLyoqIEB0eXBlZGVmIHtSZWNvcmQ8c3RyaW5nLCBvYmplY3Q+fSBSb3V0ZU1hcCAqL1xuLyoqIEB0eXBlZGVmIHt7cm91dGVzOiBBcnJheTx7bmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmd9Pn19IFJvdXRlRGVmaW5pdGlvbnMgKi9cbi8qKlxuICogQHR5cGVkZWYge3tlbWl0OiAoZXZlbnROYW1lOiBzdHJpbmcsIHBheWxvYWQ6IHtvbGRWYWx1ZTogQ29uZmlnVmFsdWUsIG5ld1ZhbHVlOiBDb25maWdWYWx1ZX0pID0+IHZvaWR9fSBDb25maWdFdmVudHNcbiAqL1xuLyoqXG4gKiBAdHlwZWRlZiB7QnJlYWtwb2ludERlZmluaXRpb25bXSB8IEN1cnJlbmN5T3B0aW9uW10gfCBSb3V0ZU1hcCB8IFJvdXRlRGVmaW5pdGlvbnMgfCBFdmVudEVtaXR0ZXIgfFxuICogICBib29sZWFuIHwgbnVtYmVyIHwgb2JqZWN0IHwgc3RyaW5nIHwgdW5kZWZpbmVkfSBDb25maWdWYWx1ZVxuICovXG5cbmNvbnN0IGFjY2Vzc29ycyA9IHtcbiAgYnJlYWtwb2ludHM6IHtcbiAgICBkZWZhdWx0OiBbXG4gICAgICBbXCJ4eGxcIiwgMTQwMF0sXG4gICAgICBbXCJ4bFwiLCAxMjAwXSxcbiAgICAgIFtcImxnXCIsIDk5Ml0sXG4gICAgICBbXCJtZFwiLCA3NjhdLFxuICAgICAgW1wic21cIiwgNTc2XSxcbiAgICAgIFtcInhzXCIsIDBdXG4gICAgXSxcbiAgICByZXF1aXJlZDogdHJ1ZVxuICB9LFxuICBjYWJsZVVybDoge3JlcXVpcmU6IGZhbHNlfSxcbiAgY3VycmVuY2llc0NvbGxlY3Rpb246IHtyZXF1aXJlZDogdHJ1ZX0sXG4gIGhpc3Rvcnk6IHtyZXF1aXJlZDogdHJ1ZX0sXG4gIGhvc3Q6IHtyZXF1aXJlZDogZmFsc2V9LFxuICBpMThuOiB7cmVxdWlyZWQ6IGZhbHNlfSxcbiAgbGlua1RvOiB7cmVxdWlyZWQ6IHRydWV9LFxuICBtb2RhbDoge3JlcXVpcmVkOiBmYWxzZX0sXG4gIG5hdmlnYXRpb246IHtyZXF1aXJlZDogdHJ1ZX0sXG4gIHJvdXRlczoge3JlcXVpcmVkOiBmYWxzZX0sXG4gIHJvdXRlRGVmaW5pdGlvbnM6IHtyZXF1aXJlZDogZmFsc2V9LFxuICB1c2VIdG1sRm9ybToge2RlZmF1bHQ6IGZhbHNlLCByZXF1aXJlZDogZmFsc2V9LFxuICB3ZWJzb2NrZXRSZXF1ZXN0czoge3JlcXVpcmVkOiBmYWxzZX1cbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kTmFtZVxuICogQHJldHVybnMge25ldmVyfVxuICovXG5jb25zdCBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkID0gKG1ldGhvZE5hbWUpID0+IHtcbiAgdGhyb3cgbmV3IEVycm9yKGAnJHttZXRob2ROYW1lfScgbm90IGltcGxlbWVudGVkYClcbn1cblxuLyoqIFN0b3JlcyBnbG9iYWxseSBjb25maWd1cmVkIEFwaSBNYWtlciBpbnRlZ3JhdGlvbiBob29rcyBhbmQgcnVudGltZSBkZXBlbmRlbmNpZXMuICovXG5jbGFzcyBBcGlNYWtlckNvbmZpZyB7XG4gIC8qKiBJbml0aWFsaXplcyB0aGUgc2hhcmVkIGNvbmZpZyBzdGF0ZSBhbmQgY2hhbmdlIGVtaXR0ZXIuICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmICghZ2xvYmFsVGhpcy5hcGlNYWtlckNvbmZpZ0dsb2JhbCkgZ2xvYmFsVGhpcy5hcGlNYWtlckNvbmZpZ0dsb2JhbCA9IHt9XG5cbiAgICB0aGlzLmdsb2JhbCA9IGdsb2JhbFRoaXMuYXBpTWFrZXJDb25maWdHbG9iYWxcbiAgICB0aGlzLmV2ZW50cyA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGV2ZW50IGVtaXR0ZXIgdXNlZCBmb3IgY29uZmlnIGNoYW5nZSBub3RpZmljYXRpb25zLlxuICAgKiBAcmV0dXJucyB7Q29uZmlnRXZlbnRzfVxuICAgKi9cbiAgZ2V0RXZlbnRzKCkgeyByZXR1cm4gdGhpcy5ldmVudHMgfVxuXG4gIC8qKiBAcmV0dXJucyB7aW1wb3J0KFwiaGlzdG9yeVwiKS5Ccm93c2VySGlzdG9yeX0gKi9cbiAgZ2V0SGlzdG9yeSgpIHtcbiAgICByZXR1cm4gYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcImdldEhpc3RvcnlcIilcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7c3RyaW5nfSAqL1xuICBnZXRIb3N0KCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0SG9zdFwiKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtzdHJpbmcgfCB1bmRlZmluZWR9ICovXG4gIGdldENhYmxlVXJsKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0Q2FibGVVcmxcIilcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gX25ld1ZhbHVlXG4gICAqL1xuICBzZXRDYWJsZVVybChfbmV3VmFsdWUpIHsgYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcInNldENhYmxlVXJsXCIpIH1cblxuICAvKiogQHJldHVybnMge2Jvb2xlYW4gfCB1bmRlZmluZWR9ICovXG4gIGdldFdlYnNvY2tldFJlcXVlc3RzKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0V2Vic29ja2V0UmVxdWVzdHNcIilcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW4gfCB1bmRlZmluZWR9IF9uZXdWYWx1ZVxuICAgKi9cbiAgc2V0V2Vic29ja2V0UmVxdWVzdHMoX25ld1ZhbHVlKSB7IGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJzZXRXZWJzb2NrZXRSZXF1ZXN0c1wiKSB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcnJheTxDdXJyZW5jeU9wdGlvbj59ICovXG4gIGdldEN1cnJlbmNpZXNDb2xsZWN0aW9uKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0Q3VycmVuY2llc0NvbGxlY3Rpb25cIilcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7b2JqZWN0fSAqL1xuICBnZXRNb2RhbCgpIHtcbiAgICByZXR1cm4gYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcImdldE1vZGFsXCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge1JvdXRlRGVmaW5pdGlvbnN9ICovXG4gIGdldFJvdXRlRGVmaW5pdGlvbnMoKSB7XG4gICAgcmV0dXJuIGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJnZXRSb3V0ZURlZmluaXRpb25zXCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge1JvdXRlTWFwfSAqL1xuICBnZXRSb3V0ZXMoKSB7XG4gICAgcmV0dXJuIGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJnZXRSb3V0ZXNcIilcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7Ym9vbGVhbn0gKi9cbiAgZ2V0VXNlSHRtbEZvcm0oKSB7XG4gICAgcmV0dXJuIGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJnZXRVc2VIdG1sRm9ybVwiKVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gX25ld1ZhbHVlXG4gICAqL1xuICBzZXRVc2VIdG1sRm9ybShfbmV3VmFsdWUpIHsgYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcInNldFVzZUh0bWxGb3JtXCIpIH1cbn1cblxuZm9yIChjb25zdCBhY2Nlc3Nvck5hbWUgaW4gYWNjZXNzb3JzKSB7XG4gIGNvbnN0IGFjY2Vzc29yRGF0YSA9IGFjY2Vzc29yc1thY2Nlc3Nvck5hbWVdXG4gIGNvbnN0IGNhbWVsaXplZEFjY2Vzc29yID0gaW5mbGVjdGlvbi5jYW1lbGl6ZShhY2Nlc3Nvck5hbWUpXG5cbiAgQXBpTWFrZXJDb25maWcucHJvdG90eXBlW2BzZXQke2NhbWVsaXplZEFjY2Vzc29yfWBdID0gZnVuY3Rpb24gKG5ld1ZhbHVlKSB7XG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzLmdsb2JhbFthY2Nlc3Nvck5hbWVdXG5cbiAgICB0aGlzLmdsb2JhbFthY2Nlc3Nvck5hbWVdID0gbmV3VmFsdWVcblxuICAgIGlmIChvbGRWYWx1ZSAhPT0gbmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuZXZlbnRzLmVtaXQoYG9uJHtjYW1lbGl6ZWRBY2Nlc3Nvcn1DaGFuZ2VgLCB7b2xkVmFsdWUsIG5ld1ZhbHVlfSlcbiAgICB9XG4gIH1cblxuICBBcGlNYWtlckNvbmZpZy5wcm90b3R5cGVbYGdldCR7Y2FtZWxpemVkQWNjZXNzb3J9YF0gPSBmdW5jdGlvbiAoLi4uYXJncykge1xuICAgIGlmICh0aGlzLmdsb2JhbFthY2Nlc3Nvck5hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChhY2Nlc3NvckRhdGEuZGVmYXVsdCAhPT0gdW5kZWZpbmVkKSByZXR1cm4gYWNjZXNzb3JEYXRhLmRlZmF1bHRcbiAgICAgIGlmIChhY2Nlc3NvckRhdGEucmVxdWlyZWQpIHRocm93IG5ldyBFcnJvcihgJHthY2Nlc3Nvck5hbWV9IGhhc24ndCBiZWVuIHNldGApXG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdsb2JhbFthY2Nlc3Nvck5hbWVdXG5cbiAgICBpZiAodHlwZW9mIHZhbHVlID09IFwiZnVuY3Rpb25cIikgcmV0dXJuIHZhbHVlKC4uLmFyZ3MpXG5cbiAgICByZXR1cm4gdmFsdWVcbiAgfVxufVxuXG5jb25zdCBhcGlNYWtlckNvbmZpZyA9IG5ldyBBcGlNYWtlckNvbmZpZygpXG5cbmV4cG9ydCBkZWZhdWx0IGFwaU1ha2VyQ29uZmlnXG4iXX0=
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJjb25maWcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUEsQ0FBQyxtQ0FBbUM7QUFFNUUsdUVBQXVFO0FBQ3ZFLDhEQUE4RDtBQUM5RCxpREFBaUQ7QUFDakQsZ0ZBQWdGO0FBQ2hGOztHQUVHO0FBQ0g7OztHQUdHO0FBRUgsTUFBTSxTQUFTLEdBQUc7SUFDaEIsV0FBVyxFQUFFO1FBQ1gsT0FBTyxFQUFFO1lBQ1AsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDO1lBQ2IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1lBQ1osQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ1gsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ1gsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ1gsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxRQUFRLEVBQUUsSUFBSTtLQUNmO0lBQ0QsUUFBUSxFQUFFLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBQztJQUMxQixvQkFBb0IsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUM7SUFDdEMsMEJBQTBCLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUM7SUFDNUQsT0FBTyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztJQUN6QixJQUFJLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFDO0lBQ3ZCLElBQUksRUFBRSxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUM7SUFDdkIsTUFBTSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztJQUN4QixLQUFLLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFDO0lBQ3hCLFVBQVUsRUFB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Q0FBQTtZQUNuRSxJQUFJLFlBQVksQ0FBQyxRQUFRO2dCQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxZQUFZLGtCQUFrQixDQUFDLENBQUE7UUFDL0UsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFFdkMsSUFBSSxPQUFPLEtBQUssSUFBSSxVQUFVO1lBQUUsT0FBTyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtRQUVyRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFBO0FBRTNDLGVBQWUsY0FBYyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5pbXBvcnQge0V2ZW50RW1pdHRlcn0gZnJvbSBcImV2ZW50ZW1pdHRlcjNcIlxuaW1wb3J0ICogYXMgaW5mbGVjdGlvbiBmcm9tIFwiaW5mbGVjdGlvblwiIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc29ydC1pbXBvcnRzXG5cbi8qKiBAdHlwZWRlZiB7W25hbWU6IHN0cmluZywgbWluV2lkdGg6IG51bWJlcl19IEJyZWFrcG9pbnREZWZpbml0aW9uICovXG4vKiogQHR5cGVkZWYge1tsYWJlbDogc3RyaW5nLCBjb2RlOiBzdHJpbmddfSBDdXJyZW5jeU9wdGlvbiAqL1xuLyoqIEB0eXBlZGVmIHtSZWNvcmQ8c3RyaW5nLCBvYmplY3Q+fSBSb3V0ZU1hcCAqL1xuLyoqIEB0eXBlZGVmIHt7cm91dGVzOiBBcnJheTx7bmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmd9Pn19IFJvdXRlRGVmaW5pdGlvbnMgKi9cbi8qKlxuICogQHR5cGVkZWYge3tlbWl0OiAoZXZlbnROYW1lOiBzdHJpbmcsIHBheWxvYWQ6IHtvbGRWYWx1ZTogQ29uZmlnVmFsdWUsIG5ld1ZhbHVlOiBDb25maWdWYWx1ZX0pID0+IHZvaWR9fSBDb25maWdFdmVudHNcbiAqL1xuLyoqXG4gKiBAdHlwZWRlZiB7QnJlYWtwb2ludERlZmluaXRpb25bXSB8IEN1cnJlbmN5T3B0aW9uW10gfCBSb3V0ZU1hcCB8IFJvdXRlRGVmaW5pdGlvbnMgfCBFdmVudEVtaXR0ZXIgfFxuICogICBib29sZWFuIHwgbnVtYmVyIHwgb2JqZWN0IHwgc3RyaW5nIHwgdW5kZWZpbmVkfSBDb25maWdWYWx1ZVxuICovXG5cbmNvbnN0IGFjY2Vzc29ycyA9IHtcbiAgYnJlYWtwb2ludHM6IHtcbiAgICBkZWZhdWx0OiBbXG4gICAgICBbXCJ4eGxcIiwgMTQwMF0sXG4gICAgICBbXCJ4bFwiLCAxMjAwXSxcbiAgICAgIFtcImxnXCIsIDk5Ml0sXG4gICAgICBbXCJtZFwiLCA3NjhdLFxuICAgICAgW1wic21cIiwgNTc2XSxcbiAgICAgIFtcInhzXCIsIDBdXG4gICAgXSxcbiAgICByZXF1aXJlZDogdHJ1ZVxuICB9LFxuICBjYWJsZVVybDoge3JlcXVpcmU6IGZhbHNlfSxcbiAgY3VycmVuY2llc0NvbGxlY3Rpb246IHtyZXF1aXJlZDogdHJ1ZX0sXG4gIGRhbmdlcm91c1Jvd0NvdW50VGhyZXNob2xkOiB7ZGVmYXVsdDogMTAwMCwgcmVxdWlyZWQ6IGZhbHNlfSxcbiAgaGlzdG9yeToge3JlcXVpcmVkOiB0cnVlfSxcbiAgaG9zdDoge3JlcXVpcmVkOiBmYWxzZX0sXG4gIGkxOG46IHtyZXF1aXJlZDogZmFsc2V9LFxuICBsaW5rVG86IHtyZXF1aXJlZDogdHJ1ZX0sXG4gIG1vZGFsOiB7cmVxdWlyZWQ6IGZhbHNlfSxcbiAgbmF2aWdhdGlvbjoge3JlcXVpcmVkOiB0cnVlfSxcbiAgcm91dGVzOiB7cmVxdWlyZWQ6IGZhbHNlfSxcbiAgcm91dGVEZWZpbml0aW9uczoge3JlcXVpcmVkOiBmYWxzZX0sXG4gIHVzZUh0bWxGb3JtOiB7ZGVmYXVsdDogZmFsc2UsIHJlcXVpcmVkOiBmYWxzZX0sXG4gIHdlYnNvY2tldFJlcXVlc3RzOiB7cmVxdWlyZWQ6IGZhbHNlfVxufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSBtZXRob2ROYW1lXG4gKiBAcmV0dXJucyB7bmV2ZXJ9XG4gKi9cbmNvbnN0IGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQgPSAobWV0aG9kTmFtZSkgPT4ge1xuICB0aHJvdyBuZXcgRXJyb3IoYCcke21ldGhvZE5hbWV9JyBub3QgaW1wbGVtZW50ZWRgKVxufVxuXG4vKiogU3RvcmVzIGdsb2JhbGx5IGNvbmZpZ3VyZWQgQXBpIE1ha2VyIGludGVncmF0aW9uIGhvb2tzIGFuZCBydW50aW1lIGRlcGVuZGVuY2llcy4gKi9cbmNsYXNzIEFwaU1ha2VyQ29uZmlnIHtcbiAgLyoqIEluaXRpYWxpemVzIHRoZSBzaGFyZWQgY29uZmlnIHN0YXRlIGFuZCBjaGFuZ2UgZW1pdHRlci4gKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFnbG9iYWxUaGlzLmFwaU1ha2VyQ29uZmlnR2xvYmFsKSBnbG9iYWxUaGlzLmFwaU1ha2VyQ29uZmlnR2xvYmFsID0ge31cblxuICAgIHRoaXMuZ2xvYmFsID0gZ2xvYmFsVGhpcy5hcGlNYWtlckNvbmZpZ0dsb2JhbFxuICAgIHRoaXMuZXZlbnRzID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgZXZlbnQgZW1pdHRlciB1c2VkIGZvciBjb25maWcgY2hhbmdlIG5vdGlmaWNhdGlvbnMuXG4gICAqIEByZXR1cm5zIHtDb25maWdFdmVudHN9XG4gICAqL1xuICBnZXRFdmVudHMoKSB7IHJldHVybiB0aGlzLmV2ZW50cyB9XG5cbiAgLyoqIEByZXR1cm5zIHtpbXBvcnQoXCJoaXN0b3J5XCIpLkJyb3dzZXJIaXN0b3J5fSAqL1xuICBnZXRIaXN0b3J5KCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0SGlzdG9yeVwiKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtzdHJpbmd9ICovXG4gIGdldEhvc3QoKSB7XG4gICAgcmV0dXJuIGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJnZXRIb3N0XCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge3N0cmluZyB8IHVuZGVmaW5lZH0gKi9cbiAgZ2V0Q2FibGVVcmwoKSB7XG4gICAgcmV0dXJuIGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJnZXRDYWJsZVVybFwiKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtudW1iZXJ9ICovXG4gIGdldERhbmdlcm91c1Jvd0NvdW50VGhyZXNob2xkKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0RGFuZ2Vyb3VzUm93Q291bnRUaHJlc2hvbGRcIilcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge251bWJlcn0gX25ld1ZhbHVlXG4gICAqL1xuICBzZXREYW5nZXJvdXNSb3dDb3VudFRocmVzaG9sZChfbmV3VmFsdWUpIHsgYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcInNldERhbmdlcm91c1Jvd0NvdW50VGhyZXNob2xkXCIpIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IF9uZXdWYWx1ZVxuICAgKi9cbiAgc2V0Q2FibGVVcmwoX25ld1ZhbHVlKSB7IGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJzZXRDYWJsZVVybFwiKSB9XG5cbiAgLyoqIEByZXR1cm5zIHtib29sZWFuIHwgdW5kZWZpbmVkfSAqL1xuICBnZXRXZWJzb2NrZXRSZXF1ZXN0cygpIHtcbiAgICByZXR1cm4gYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcImdldFdlYnNvY2tldFJlcXVlc3RzXCIpXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtib29sZWFuIHwgdW5kZWZpbmVkfSBfbmV3VmFsdWVcbiAgICovXG4gIHNldFdlYnNvY2tldFJlcXVlc3RzKF9uZXdWYWx1ZSkgeyBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwic2V0V2Vic29ja2V0UmVxdWVzdHNcIikgfVxuXG4gIC8qKiBAcmV0dXJucyB7QXJyYXk8Q3VycmVuY3lPcHRpb24+fSAqL1xuICBnZXRDdXJyZW5jaWVzQ29sbGVjdGlvbigpIHtcbiAgICByZXR1cm4gYXBpTWFrZXJDb25maWdOb3RJbXBsZW1lbnRlZChcImdldEN1cnJlbmNpZXNDb2xsZWN0aW9uXCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge29iamVjdH0gKi9cbiAgZ2V0TW9kYWwoKSB7XG4gICAgcmV0dXJuIGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJnZXRNb2RhbFwiKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtSb3V0ZURlZmluaXRpb25zfSAqL1xuICBnZXRSb3V0ZURlZmluaXRpb25zKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0Um91dGVEZWZpbml0aW9uc1wiKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtSb3V0ZU1hcH0gKi9cbiAgZ2V0Um91dGVzKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0Um91dGVzXCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge2Jvb2xlYW59ICovXG4gIGdldFVzZUh0bWxGb3JtKCkge1xuICAgIHJldHVybiBhcGlNYWtlckNvbmZpZ05vdEltcGxlbWVudGVkKFwiZ2V0VXNlSHRtbEZvcm1cIilcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IF9uZXdWYWx1ZVxuICAgKi9cbiAgc2V0VXNlSHRtbEZvcm0oX25ld1ZhbHVlKSB7IGFwaU1ha2VyQ29uZmlnTm90SW1wbGVtZW50ZWQoXCJzZXRVc2VIdG1sRm9ybVwiKSB9XG5cbiAgLy8gVGFibGUgZXhwb3J0IGhvb2tzLiBUaGVzZSBob2xkIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSByZXR1cm5lZCBhcy1pcyAobm90IGludm9rZWQpLCBzbyB0aGV5IHVzZVxuICAvLyBleHBsaWNpdCBhY2Nlc3NvcnMgaW5zdGVhZCBvZiB0aGUgZ2VuZXJpYyBhY2Nlc3NvciBsb29wIGJlbG93ICh3aGljaCB3b3VsZCBjYWxsIGZ1bmN0aW9uIHZhbHVlcykuXG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgc3RyZWFtaW5nIGZpbGUgc2luayBmb3IgdGFibGUgZXhwb3J0cyBvbiBwbGF0Zm9ybXMgd2l0aG91dCBhIHdlYiBkZWZhdWx0IChlLmcuIFJlYWN0XG4gICAqIE5hdGl2ZS9FeHBvKS4gUmVjZWl2ZXMgYHtmaWxlTmFtZSwgbWltZVR5cGUsIGZvcm1hdH1gIGFuZCByZXR1cm5zIGEgc2lua1xuICAgKiBge3dyaXRlKGNodW5rKSwgY2xvc2UoKSwgYWJvcnQoKX1gLlxuICAgKiBAcmV0dXJucyB7KChhcmdzOiBvYmplY3QpID0+IFByb21pc2U8b2JqZWN0PikgfCB1bmRlZmluZWR9XG4gICAqL1xuICBnZXRFeHBvcnRGaWxlU2lua09wZW5lcigpIHsgcmV0dXJuIHRoaXMuZ2xvYmFsLmV4cG9ydEZpbGVTaW5rT3BlbmVyIH1cblxuICAvKipcbiAgICogQHBhcmFtIHsoKGFyZ3M6IG9iamVjdCkgPT4gUHJvbWlzZTxvYmplY3Q+KSB8IHVuZGVmaW5lZH0gb3BlbmVyXG4gICAqL1xuICBzZXRFeHBvcnRGaWxlU2lua09wZW5lcihvcGVuZXIpIHsgdGhpcy5nbG9iYWwuZXhwb3J0RmlsZVNpbmtPcGVuZXIgPSBvcGVuZXIgfVxuXG4gIC8qKlxuICAgKiBTZXJpYWxpemVzIGFuIGFycmF5LW9mLWFycmF5cyAoaGVhZGVyICsgcm93cykgaW50byB4bHN4IGJ5dGVzLCBlbmFibGluZyB0aGUgb3B0aW9uYWwgRXhjZWwgZXhwb3J0IGZvcm1hdFxuICAgKiB3aXRob3V0IGFwaV9tYWtlciBkZXBlbmRpbmcgb24gYSBzcHJlYWRzaGVldCBsaWJyYXJ5LiBSZXR1cm5zIGEgYFVpbnQ4QXJyYXlgIChvciBhIHByb21pc2Ugb2Ygb25lKS5cbiAgICogQHJldHVybnMgeygocm93czogQXJyYXk8QXJyYXk8dW5rbm93bj4+KSA9PiBVaW50OEFycmF5IHwgUHJvbWlzZTxVaW50OEFycmF5PikgfCB1bmRlZmluZWR9XG4gICAqL1xuICBnZXRFeHBvcnRYbHN4U2VyaWFsaXplcigpIHsgcmV0dXJuIHRoaXMuZ2xvYmFsLmV4cG9ydFhsc3hTZXJpYWxpemVyIH1cblxuICAvKipcbiAgICogQHBhcmFtIHsoKHJvd3M6IEFycmF5PEFycmF5PHVua25vd24+PikgPT4gVWludDhBcnJheSB8IFByb21pc2U8VWludDhBcnJheT4pIHwgdW5kZWZpbmVkfSBzZXJpYWxpemVyXG4gICAqL1xuICBzZXRFeHBvcnRYbHN4U2VyaWFsaXplcihzZXJpYWxpemVyKSB7IHRoaXMuZ2xvYmFsLmV4cG9ydFhsc3hTZXJpYWxpemVyID0gc2VyaWFsaXplciB9XG59XG5cbmZvciAoY29uc3QgYWNjZXNzb3JOYW1lIGluIGFjY2Vzc29ycykge1xuICBjb25zdCBhY2Nlc3NvckRhdGEgPSBhY2Nlc3NvcnNbYWNjZXNzb3JOYW1lXVxuICBjb25zdCBjYW1lbGl6ZWRBY2Nlc3NvciA9IGluZmxlY3Rpb24uY2FtZWxpemUoYWNjZXNzb3JOYW1lKVxuXG4gIEFwaU1ha2VyQ29uZmlnLnByb3RvdHlwZVtgc2V0JHtjYW1lbGl6ZWRBY2Nlc3Nvcn1gXSA9IGZ1bmN0aW9uIChuZXdWYWx1ZSkge1xuICAgIGNvbnN0IG9sZFZhbHVlID0gdGhpcy5nbG9iYWxbYWNjZXNzb3JOYW1lXVxuXG4gICAgdGhpcy5nbG9iYWxbYWNjZXNzb3JOYW1lXSA9IG5ld1ZhbHVlXG5cbiAgICBpZiAob2xkVmFsdWUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICB0aGlzLmV2ZW50cy5lbWl0KGBvbiR7Y2FtZWxpemVkQWNjZXNzb3J9Q2hhbmdlYCwge29sZFZhbHVlLCBuZXdWYWx1ZX0pXG4gICAgfVxuICB9XG5cbiAgQXBpTWFrZXJDb25maWcucHJvdG90eXBlW2BnZXQke2NhbWVsaXplZEFjY2Vzc29yfWBdID0gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICBpZiAodGhpcy5nbG9iYWxbYWNjZXNzb3JOYW1lXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAoYWNjZXNzb3JEYXRhLmRlZmF1bHQgIT09IHVuZGVmaW5lZCkgcmV0dXJuIGFjY2Vzc29yRGF0YS5kZWZhdWx0XG4gICAgICBpZiAoYWNjZXNzb3JEYXRhLnJlcXVpcmVkKSB0aHJvdyBuZXcgRXJyb3IoYCR7YWNjZXNzb3JOYW1lfSBoYXNuJ3QgYmVlbiBzZXRgKVxuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nbG9iYWxbYWNjZXNzb3JOYW1lXVxuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSBcImZ1bmN0aW9uXCIpIHJldHVybiB2YWx1ZSguLi5hcmdzKVxuXG4gICAgcmV0dXJuIHZhbHVlXG4gIH1cbn1cblxuY29uc3QgYXBpTWFrZXJDb25maWcgPSBuZXcgQXBpTWFrZXJDb25maWcoKVxuXG5leHBvcnQgZGVmYXVsdCBhcGlNYWtlckNvbmZpZ1xuIl19
@@ -2,7 +2,12 @@ export default class ApiMakerEventConnection extends React.PureComponent<any, an
2
2
  static defaultProps: {
3
3
  active: boolean;
4
4
  };
5
- static propTypes: ValidationMap<T>;
5
+ static propTypes: PropTypes.ValidationMap<{
6
+ active: boolean;
7
+ model: object;
8
+ event: string;
9
+ onCall: (...args: any[]) => any;
10
+ }>;
6
11
  constructor(props: any);
7
12
  componentDidMount(): void;
8
13
  subscription: import("./cable-subscription.js").default;
@@ -11,4 +16,5 @@ export default class ApiMakerEventConnection extends React.PureComponent<any, an
11
16
  onCall(...args: any[]): void;
12
17
  }
13
18
  import React from "react";
19
+ import PropTypes from "prop-types";
14
20
  //# sourceMappingURL=event-connection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-connection.d.ts","sourceRoot":"/src/","sources":["event-connection.jsx"],"names":[],"mappings":"AAMA;IACE;;MAEC;IAED,mCAKE;;IAEF,0BAEC;IADC,wDAA8G;IAGhH,6BAIC;IAED,cAEC;IAED,6BAIC;CACF;kBAlCiB,OAAO"}
1
+ {"version":3,"file":"event-connection.d.ts","sourceRoot":"/src/","sources":["event-connection.jsx"],"names":[],"mappings":"AAMA;IACE;;MAEC;IAED;;;;;OAKE;;IAEF,0BAEC;IADC,wDAA8G;IAGhH,6BAIC;IAED,cAEC;IAED,6BAIC;CACF;kBAlCiB,OAAO;sBADH,YAAY"}
@@ -1,5 +1,9 @@
1
1
  export default class ApiMakerEventModelClass extends React.PureComponent<any, any, any> {
2
- static propTypes: ValidationMap<T>;
2
+ static propTypes: PropTypes.ValidationMap<{
3
+ event: string;
4
+ modelClass: (...args: any[]) => any;
5
+ onCall: (...args: any[]) => any;
6
+ }>;
3
7
  constructor(props: any);
4
8
  componentDidMount(): void;
5
9
  componentWillUnmount(): void;
@@ -8,4 +12,5 @@ export default class ApiMakerEventModelClass extends React.PureComponent<any, an
8
12
  render(): any;
9
13
  }
10
14
  import React from "react";
15
+ import PropTypes from "prop-types";
11
16
  //# sourceMappingURL=event-model-class.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-model-class.d.ts","sourceRoot":"/src/","sources":["event-model-class.jsx"],"names":[],"mappings":"AAMA;IACE,mCAIE;;IAEF,0BAEC;IAED,6BAIC;IAED,gBAEC;IADC,sDAA2G;IAG7G,cAEC;CACF;kBA3BiB,OAAO"}
1
+ {"version":3,"file":"event-model-class.d.ts","sourceRoot":"/src/","sources":["event-model-class.jsx"],"names":[],"mappings":"AAMA;IACE;;;;OAIE;;IAEF,0BAEC;IAED,6BAIC;IAED,gBAEC;IADC,sDAA2G;IAG7G,cAEC;CACF;kBA3BiB,OAAO;sBADH,YAAY"}
@@ -0,0 +1,3 @@
1
+ export function cellToText(value: unknown): string;
2
+ export function cellToHtml(value: unknown): string;
3
+ //# sourceMappingURL=cell-value.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cell-value.d.ts","sourceRoot":"/src/","sources":["table/export/cell-value.js"],"names":[],"mappings":"AAwCO,kCAHI,OAAO,GACL,MAAM,CAEwF;AAOpG,kCAHI,OAAO,GACL,MAAM,CAE+C"}
@@ -0,0 +1,47 @@
1
+ // @ts-check
2
+ /* eslint-disable sort-imports */
3
+ import React from "react";
4
+ /**
5
+ * @param {unknown} value
6
+ * @returns {string}
7
+ */
8
+ const toText = (value) => (value === null || value === undefined ? "" : String(value));
9
+ /**
10
+ * Recursively extracts the text content of a React node without rendering it, so the export path stays
11
+ * lightweight and SSR-/test-safe (no react-dom/server). A column's custom `content` can return a React
12
+ * element even in "html" mode; this keeps such cells exporting their text instead of "[object Object]".
13
+ * @param {unknown} node
14
+ * @returns {string}
15
+ */
16
+ const reactNodeToText = (node) => {
17
+ if (node === null || node === undefined || typeof node === "boolean")
18
+ return "";
19
+ if (typeof node === "string" || typeof node === "number")
20
+ return String(node);
21
+ if (Array.isArray(node))
22
+ return node.map(reactNodeToText).join("");
23
+ if (React.isValidElement(node))
24
+ return reactNodeToText(/** @type {{props?: {children?: unknown}}} */ (node).props?.children);
25
+ return "";
26
+ };
27
+ /**
28
+ * @param {string} text
29
+ * @returns {string}
30
+ */
31
+ const escapeHtml = (text) => text
32
+ .replace(/&/g, "&amp;")
33
+ .replace(/</g, "&lt;")
34
+ .replace(/>/g, "&gt;");
35
+ /**
36
+ * Plain text value of a cell, for CSV/Excel.
37
+ * @param {unknown} value
38
+ * @returns {string}
39
+ */
40
+ export const cellToText = (value) => (React.isValidElement(value) ? reactNodeToText(value) : toText(value));
41
+ /**
42
+ * HTML-escaped text value of a cell, for the HTML export.
43
+ * @param {unknown} value
44
+ * @returns {string}
45
+ */
46
+ export const cellToHtml = (value) => escapeHtml(cellToText(value));
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC12YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsidGFibGUvZXhwb3J0L2NlbGwtdmFsdWUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLGlDQUFpQztBQUNqQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUE7QUFFekI7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0FBRXRGOzs7Ozs7R0FNRztBQUNILE1BQU0sZUFBZSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7SUFDL0IsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxTQUFTLElBQUksT0FBTyxJQUFJLEtBQUssU0FBUztRQUFFLE9BQU8sRUFBRSxDQUFBO0lBQy9FLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM3RSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQUUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUNsRSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO1FBQUUsT0FBTyxlQUFlLENBQUMsNkNBQTZDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFFNUgsT0FBTyxFQUFFLENBQUE7QUFDWCxDQUFDLENBQUE7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSTtLQUM5QixPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQztLQUN0QixPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztLQUNyQixPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0FBRXhCOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtBQUUzRzs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcbi8qIGVzbGludC1kaXNhYmxlIHNvcnQtaW1wb3J0cyAqL1xuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiXG5cbi8qKlxuICogQHBhcmFtIHt1bmtub3dufSB2YWx1ZVxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuY29uc3QgdG9UZXh0ID0gKHZhbHVlKSA9PiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCA/IFwiXCIgOiBTdHJpbmcodmFsdWUpKVxuXG4vKipcbiAqIFJlY3Vyc2l2ZWx5IGV4dHJhY3RzIHRoZSB0ZXh0IGNvbnRlbnQgb2YgYSBSZWFjdCBub2RlIHdpdGhvdXQgcmVuZGVyaW5nIGl0LCBzbyB0aGUgZXhwb3J0IHBhdGggc3RheXNcbiAqIGxpZ2h0d2VpZ2h0IGFuZCBTU1ItL3Rlc3Qtc2FmZSAobm8gcmVhY3QtZG9tL3NlcnZlcikuIEEgY29sdW1uJ3MgY3VzdG9tIGBjb250ZW50YCBjYW4gcmV0dXJuIGEgUmVhY3RcbiAqIGVsZW1lbnQgZXZlbiBpbiBcImh0bWxcIiBtb2RlOyB0aGlzIGtlZXBzIHN1Y2ggY2VsbHMgZXhwb3J0aW5nIHRoZWlyIHRleHQgaW5zdGVhZCBvZiBcIltvYmplY3QgT2JqZWN0XVwiLlxuICogQHBhcmFtIHt1bmtub3dufSBub2RlXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5jb25zdCByZWFjdE5vZGVUb1RleHQgPSAobm9kZSkgPT4ge1xuICBpZiAobm9kZSA9PT0gbnVsbCB8fCBub2RlID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIG5vZGUgPT09IFwiYm9vbGVhblwiKSByZXR1cm4gXCJcIlxuICBpZiAodHlwZW9mIG5vZGUgPT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIG5vZGUgPT09IFwibnVtYmVyXCIpIHJldHVybiBTdHJpbmcobm9kZSlcbiAgaWYgKEFycmF5LmlzQXJyYXkobm9kZSkpIHJldHVybiBub2RlLm1hcChyZWFjdE5vZGVUb1RleHQpLmpvaW4oXCJcIilcbiAgaWYgKFJlYWN0LmlzVmFsaWRFbGVtZW50KG5vZGUpKSByZXR1cm4gcmVhY3ROb2RlVG9UZXh0KC8qKiBAdHlwZSB7e3Byb3BzPzoge2NoaWxkcmVuPzogdW5rbm93bn19fSAqLyAobm9kZSkucHJvcHM/LmNoaWxkcmVuKVxuXG4gIHJldHVybiBcIlwiXG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHRleHRcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmNvbnN0IGVzY2FwZUh0bWwgPSAodGV4dCkgPT4gdGV4dFxuICAucmVwbGFjZSgvJi9nLCBcIiZhbXA7XCIpXG4gIC5yZXBsYWNlKC88L2csIFwiJmx0O1wiKVxuICAucmVwbGFjZSgvPi9nLCBcIiZndDtcIilcblxuLyoqXG4gKiBQbGFpbiB0ZXh0IHZhbHVlIG9mIGEgY2VsbCwgZm9yIENTVi9FeGNlbC5cbiAqIEBwYXJhbSB7dW5rbm93bn0gdmFsdWVcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBjZWxsVG9UZXh0ID0gKHZhbHVlKSA9PiAoUmVhY3QuaXNWYWxpZEVsZW1lbnQodmFsdWUpID8gcmVhY3ROb2RlVG9UZXh0KHZhbHVlKSA6IHRvVGV4dCh2YWx1ZSkpXG5cbi8qKlxuICogSFRNTC1lc2NhcGVkIHRleHQgdmFsdWUgb2YgYSBjZWxsLCBmb3IgdGhlIEhUTUwgZXhwb3J0LlxuICogQHBhcmFtIHt1bmtub3dufSB2YWx1ZVxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZXhwb3J0IGNvbnN0IGNlbGxUb0h0bWwgPSAodmFsdWUpID0+IGVzY2FwZUh0bWwoY2VsbFRvVGV4dCh2YWx1ZSkpXG4iXX0=
@@ -0,0 +1,53 @@
1
+ /**
2
+ * @typedef {object} ExportFileSink
3
+ * @property {(chunk: string | Uint8Array) => Promise<void>} write
4
+ * @property {() => Promise<void>} close
5
+ * @property {() => Promise<void>} abort
6
+ */
7
+ /**
8
+ * @typedef {object} FsWritableStream
9
+ * @property {(chunk: string | Uint8Array) => Promise<void>} write
10
+ * @property {() => Promise<void>} close
11
+ * @property {() => Promise<void>} abort
12
+ */
13
+ /**
14
+ * @typedef {object} FsFileHandle
15
+ * @property {() => Promise<FsWritableStream>} createWritable
16
+ */
17
+ /**
18
+ * @typedef {object} FsWindow
19
+ * @property {(options: object) => Promise<FsFileHandle>} [showSaveFilePicker]
20
+ */
21
+ /**
22
+ * Opens a streaming file sink in the browser. When the File System Access API is available (Chromium), the
23
+ * export is written straight to the user-chosen file so memory stays bounded. Otherwise it falls back to
24
+ * buffering the chunks and saving a Blob via file-saver (memory-bound, but works everywhere).
25
+ *
26
+ * Must be called from within a user-gesture handler so the save-file picker is allowed to open.
27
+ *
28
+ * @param {object} args
29
+ * @param {string} args.fileName
30
+ * @param {string} args.mimeType
31
+ * @returns {Promise<ExportFileSink>}
32
+ */
33
+ export default function openWebFileSink({ fileName, mimeType }: {
34
+ fileName: string;
35
+ mimeType: string;
36
+ }): Promise<ExportFileSink>;
37
+ export type ExportFileSink = {
38
+ write: (chunk: string | Uint8Array) => Promise<void>;
39
+ close: () => Promise<void>;
40
+ abort: () => Promise<void>;
41
+ };
42
+ export type FsWritableStream = {
43
+ write: (chunk: string | Uint8Array) => Promise<void>;
44
+ close: () => Promise<void>;
45
+ abort: () => Promise<void>;
46
+ };
47
+ export type FsFileHandle = {
48
+ createWritable: () => Promise<FsWritableStream>;
49
+ };
50
+ export type FsWindow = {
51
+ showSaveFilePicker?: (options: object) => Promise<FsFileHandle>;
52
+ };
53
+ //# sourceMappingURL=web-file-sink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-file-sink.d.ts","sourceRoot":"/src/","sources":["table/export/file-sinks/web-file-sink.js"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH;;;;;GAKG;AACH;;;GAGG;AACH;;;GAGG;AAEH;;;;;;;;;;;GAWG;AACH,gEAJG;IAAqB,QAAQ,EAArB,MAAM;IACO,QAAQ,EAArB,MAAM;CACd,GAAU,OAAO,CAAC,cAAc,CAAC,CAgDnC;;WA7Ea,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC;WAC7C,MAAM,OAAO,CAAC,IAAI,CAAC;WACnB,MAAM,OAAO,CAAC,IAAI,CAAC;;;WAInB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC;WAC7C,MAAM,OAAO,CAAC,IAAI,CAAC;WACnB,MAAM,OAAO,CAAC,IAAI,CAAC;;;oBAInB,MAAM,OAAO,CAAC,gBAAgB,CAAC;;;yBAI/B,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC"}
@@ -0,0 +1,75 @@
1
+ // @ts-check
2
+ import { saveAs } from "file-saver";
3
+ /**
4
+ * @typedef {object} ExportFileSink
5
+ * @property {(chunk: string | Uint8Array) => Promise<void>} write
6
+ * @property {() => Promise<void>} close
7
+ * @property {() => Promise<void>} abort
8
+ */
9
+ /**
10
+ * @typedef {object} FsWritableStream
11
+ * @property {(chunk: string | Uint8Array) => Promise<void>} write
12
+ * @property {() => Promise<void>} close
13
+ * @property {() => Promise<void>} abort
14
+ */
15
+ /**
16
+ * @typedef {object} FsFileHandle
17
+ * @property {() => Promise<FsWritableStream>} createWritable
18
+ */
19
+ /**
20
+ * @typedef {object} FsWindow
21
+ * @property {(options: object) => Promise<FsFileHandle>} [showSaveFilePicker]
22
+ */
23
+ /**
24
+ * Opens a streaming file sink in the browser. When the File System Access API is available (Chromium), the
25
+ * export is written straight to the user-chosen file so memory stays bounded. Otherwise it falls back to
26
+ * buffering the chunks and saving a Blob via file-saver (memory-bound, but works everywhere).
27
+ *
28
+ * Must be called from within a user-gesture handler so the save-file picker is allowed to open.
29
+ *
30
+ * @param {object} args
31
+ * @param {string} args.fileName
32
+ * @param {string} args.mimeType
33
+ * @returns {Promise<ExportFileSink>}
34
+ */
35
+ export default async function openWebFileSink({ fileName, mimeType }) {
36
+ const win = /** @type {FsWindow | undefined} */ (typeof window === "undefined" ? undefined : /** @type {unknown} */ (window));
37
+ if (win && typeof win.showSaveFilePicker === "function") {
38
+ const extension = fileName.includes(".") ? fileName.slice(fileName.lastIndexOf(".")) : "";
39
+ try {
40
+ const handle = await win.showSaveFilePicker({
41
+ suggestedName: fileName,
42
+ types: extension ? [{ accept: { [mimeType]: [extension] } }] : undefined
43
+ });
44
+ const writable = await handle.createWritable();
45
+ return {
46
+ write: (chunk) => writable.write(chunk),
47
+ close: () => writable.close(),
48
+ abort: () => writable.abort()
49
+ };
50
+ }
51
+ catch (error) {
52
+ // The user cancelled the picker - propagate so the export aborts quietly.
53
+ if (error && /** @type {Error} */ (error).name === "AbortError")
54
+ throw error;
55
+ // Any other problem (e.g. picker not usable in this context): fall back to the Blob path below.
56
+ }
57
+ }
58
+ /** @type {Array<string | Uint8Array>} */
59
+ const chunks = [];
60
+ return {
61
+ write: (chunk) => {
62
+ chunks.push(chunk);
63
+ return Promise.resolve();
64
+ },
65
+ close: () => {
66
+ saveAs(new Blob(chunks, { type: mimeType }), fileName);
67
+ return Promise.resolve();
68
+ },
69
+ abort: () => {
70
+ chunks.length = 0;
71
+ return Promise.resolve();
72
+ }
73
+ };
74
+ }
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViLWZpbGUtc2luay5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsidGFibGUvZXhwb3J0L2ZpbGUtc2lua3Mvd2ViLWZpbGUtc2luay5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBQ1osT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFlBQVksQ0FBQTtBQUVqQzs7Ozs7R0FLRztBQUNIOzs7OztHQUtHO0FBQ0g7OztHQUdHO0FBQ0g7OztHQUdHO0FBRUg7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssVUFBVSxlQUFlLENBQUMsRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDO0lBQ2hFLE1BQU0sR0FBRyxHQUFHLG1DQUFtQyxDQUFDLENBQUMsT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtJQUU3SCxJQUFJLEdBQUcsSUFBSSxPQUFPLEdBQUcsQ0FBQyxrQkFBa0IsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN4RCxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO1FBRXpGLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sR0FBRyxDQUFDLGtCQUFrQixDQUFDO2dCQUMxQyxhQUFhLEVBQUUsUUFBUTtnQkFDdkIsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLE1BQU0sRUFBRSxFQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBQyxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUzthQUNyRSxDQUFDLENBQUE7WUFDRixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQTtZQUU5QyxPQUFPO2dCQUNMLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQ3ZDLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFO2dCQUM3QixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRTthQUM5QixDQUFBO1FBQ0gsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZiwwRUFBMEU7WUFDMUUsSUFBSSxLQUFLLElBQUksb0JBQW9CLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssWUFBWTtnQkFBRSxNQUFNLEtBQUssQ0FBQTtZQUU1RSxnR0FBZ0c7UUFDbEcsQ0FBQztJQUNILENBQUM7SUFFRCx5Q0FBeUM7SUFDekMsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFBO0lBRWpCLE9BQU87UUFDTCxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7WUFFbEIsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDMUIsQ0FBQztRQUNELEtBQUssRUFBRSxHQUFHLEVBQUU7WUFDVixNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUMsSUFBSSxFQUFFLFFBQVEsRUFBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUE7WUFFcEQsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDMUIsQ0FBQztRQUNELEtBQUssRUFBRSxHQUFHLEVBQUU7WUFDVixNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQTtZQUVqQixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUMxQixDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcbmltcG9ydCB7c2F2ZUFzfSBmcm9tIFwiZmlsZS1zYXZlclwiXG5cbi8qKlxuICogQHR5cGVkZWYge29iamVjdH0gRXhwb3J0RmlsZVNpbmtcbiAqIEBwcm9wZXJ0eSB7KGNodW5rOiBzdHJpbmcgfCBVaW50OEFycmF5KSA9PiBQcm9taXNlPHZvaWQ+fSB3cml0ZVxuICogQHByb3BlcnR5IHsoKSA9PiBQcm9taXNlPHZvaWQ+fSBjbG9zZVxuICogQHByb3BlcnR5IHsoKSA9PiBQcm9taXNlPHZvaWQ+fSBhYm9ydFxuICovXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IEZzV3JpdGFibGVTdHJlYW1cbiAqIEBwcm9wZXJ0eSB7KGNodW5rOiBzdHJpbmcgfCBVaW50OEFycmF5KSA9PiBQcm9taXNlPHZvaWQ+fSB3cml0ZVxuICogQHByb3BlcnR5IHsoKSA9PiBQcm9taXNlPHZvaWQ+fSBjbG9zZVxuICogQHByb3BlcnR5IHsoKSA9PiBQcm9taXNlPHZvaWQ+fSBhYm9ydFxuICovXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IEZzRmlsZUhhbmRsZVxuICogQHByb3BlcnR5IHsoKSA9PiBQcm9taXNlPEZzV3JpdGFibGVTdHJlYW0+fSBjcmVhdGVXcml0YWJsZVxuICovXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IEZzV2luZG93XG4gKiBAcHJvcGVydHkgeyhvcHRpb25zOiBvYmplY3QpID0+IFByb21pc2U8RnNGaWxlSGFuZGxlPn0gW3Nob3dTYXZlRmlsZVBpY2tlcl1cbiAqL1xuXG4vKipcbiAqIE9wZW5zIGEgc3RyZWFtaW5nIGZpbGUgc2luayBpbiB0aGUgYnJvd3Nlci4gV2hlbiB0aGUgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQSSBpcyBhdmFpbGFibGUgKENocm9taXVtKSwgdGhlXG4gKiBleHBvcnQgaXMgd3JpdHRlbiBzdHJhaWdodCB0byB0aGUgdXNlci1jaG9zZW4gZmlsZSBzbyBtZW1vcnkgc3RheXMgYm91bmRlZC4gT3RoZXJ3aXNlIGl0IGZhbGxzIGJhY2sgdG9cbiAqIGJ1ZmZlcmluZyB0aGUgY2h1bmtzIGFuZCBzYXZpbmcgYSBCbG9iIHZpYSBmaWxlLXNhdmVyIChtZW1vcnktYm91bmQsIGJ1dCB3b3JrcyBldmVyeXdoZXJlKS5cbiAqXG4gKiBNdXN0IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBhIHVzZXItZ2VzdHVyZSBoYW5kbGVyIHNvIHRoZSBzYXZlLWZpbGUgcGlja2VyIGlzIGFsbG93ZWQgdG8gb3Blbi5cbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gYXJnc1xuICogQHBhcmFtIHtzdHJpbmd9IGFyZ3MuZmlsZU5hbWVcbiAqIEBwYXJhbSB7c3RyaW5nfSBhcmdzLm1pbWVUeXBlXG4gKiBAcmV0dXJucyB7UHJvbWlzZTxFeHBvcnRGaWxlU2luaz59XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIG9wZW5XZWJGaWxlU2luayh7ZmlsZU5hbWUsIG1pbWVUeXBlfSkge1xuICBjb25zdCB3aW4gPSAvKiogQHR5cGUge0ZzV2luZG93IHwgdW5kZWZpbmVkfSAqLyAodHlwZW9mIHdpbmRvdyA9PT0gXCJ1bmRlZmluZWRcIiA/IHVuZGVmaW5lZCA6IC8qKiBAdHlwZSB7dW5rbm93bn0gKi8gKHdpbmRvdykpXG5cbiAgaWYgKHdpbiAmJiB0eXBlb2Ygd2luLnNob3dTYXZlRmlsZVBpY2tlciA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgY29uc3QgZXh0ZW5zaW9uID0gZmlsZU5hbWUuaW5jbHVkZXMoXCIuXCIpID8gZmlsZU5hbWUuc2xpY2UoZmlsZU5hbWUubGFzdEluZGV4T2YoXCIuXCIpKSA6IFwiXCJcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBoYW5kbGUgPSBhd2FpdCB3aW4uc2hvd1NhdmVGaWxlUGlja2VyKHtcbiAgICAgICAgc3VnZ2VzdGVkTmFtZTogZmlsZU5hbWUsXG4gICAgICAgIHR5cGVzOiBleHRlbnNpb24gPyBbe2FjY2VwdDoge1ttaW1lVHlwZV06IFtleHRlbnNpb25dfX1dIDogdW5kZWZpbmVkXG4gICAgICB9KVxuICAgICAgY29uc3Qgd3JpdGFibGUgPSBhd2FpdCBoYW5kbGUuY3JlYXRlV3JpdGFibGUoKVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICB3cml0ZTogKGNodW5rKSA9PiB3cml0YWJsZS53cml0ZShjaHVuayksXG4gICAgICAgIGNsb3NlOiAoKSA9PiB3cml0YWJsZS5jbG9zZSgpLFxuICAgICAgICBhYm9ydDogKCkgPT4gd3JpdGFibGUuYWJvcnQoKVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBUaGUgdXNlciBjYW5jZWxsZWQgdGhlIHBpY2tlciAtIHByb3BhZ2F0ZSBzbyB0aGUgZXhwb3J0IGFib3J0cyBxdWlldGx5LlxuICAgICAgaWYgKGVycm9yICYmIC8qKiBAdHlwZSB7RXJyb3J9ICovIChlcnJvcikubmFtZSA9PT0gXCJBYm9ydEVycm9yXCIpIHRocm93IGVycm9yXG5cbiAgICAgIC8vIEFueSBvdGhlciBwcm9ibGVtIChlLmcuIHBpY2tlciBub3QgdXNhYmxlIGluIHRoaXMgY29udGV4dCk6IGZhbGwgYmFjayB0byB0aGUgQmxvYiBwYXRoIGJlbG93LlxuICAgIH1cbiAgfVxuXG4gIC8qKiBAdHlwZSB7QXJyYXk8c3RyaW5nIHwgVWludDhBcnJheT59ICovXG4gIGNvbnN0IGNodW5rcyA9IFtdXG5cbiAgcmV0dXJuIHtcbiAgICB3cml0ZTogKGNodW5rKSA9PiB7XG4gICAgICBjaHVua3MucHVzaChjaHVuaylcblxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgfSxcbiAgICBjbG9zZTogKCkgPT4ge1xuICAgICAgc2F2ZUFzKG5ldyBCbG9iKGNodW5rcywge3R5cGU6IG1pbWVUeXBlfSksIGZpbGVOYW1lKVxuXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgICB9LFxuICAgIGFib3J0OiAoKSA9PiB7XG4gICAgICBjaHVua3MubGVuZ3RoID0gMFxuXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Streaming CSV writer. Emits one chunk per call so the export driver can write each page straight to the
3
+ * file sink without holding the whole document in memory. RFC-4180 quoting, CRLF line breaks, and a UTF-8 BOM
4
+ * so Excel opens it with the right encoding.
5
+ */
6
+ export default class ApiMakerTableExportCsvWriter {
7
+ /**
8
+ * @param {Array<string>} labels
9
+ * @returns {string}
10
+ */
11
+ header(labels: Array<string>): string;
12
+ /**
13
+ * @param {Array<unknown>} values
14
+ * @returns {string}
15
+ */
16
+ row(values: Array<unknown>): string;
17
+ /** @returns {string} */
18
+ footer(): string;
19
+ /**
20
+ * @param {Array<unknown>} values
21
+ * @returns {string}
22
+ */
23
+ line(values: Array<unknown>): string;
24
+ /**
25
+ * @param {unknown} value
26
+ * @returns {string}
27
+ */
28
+ escape(value: unknown): string;
29
+ }
30
+ //# sourceMappingURL=csv-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csv-writer.d.ts","sourceRoot":"/src/","sources":["table/export/format-writers/csv-writer.js"],"names":[],"mappings":"AAKA;;;;GAIG;AACH;IACE;;;OAGG;IACH,eAHW,KAAK,CAAC,MAAM,CAAC,GACX,MAAM,CAIlB;IAED;;;OAGG;IACH,YAHW,KAAK,CAAC,OAAO,CAAC,GACZ,MAAM,CAIlB;IAED,wBAAwB;IACxB,UADc,MAAM,CAGnB;IAED;;;OAGG;IACH,aAHW,KAAK,CAAC,OAAO,CAAC,GACZ,MAAM,CAIlB;IAED;;;OAGG;IACH,cAHW,OAAO,GACL,MAAM,CAUlB;CACF"}
@@ -0,0 +1,47 @@
1
+ // @ts-check
2
+ import { cellToText } from "../cell-value.js";
3
+ const UTF8_BOM = "";
4
+ /**
5
+ * Streaming CSV writer. Emits one chunk per call so the export driver can write each page straight to the
6
+ * file sink without holding the whole document in memory. RFC-4180 quoting, CRLF line breaks, and a UTF-8 BOM
7
+ * so Excel opens it with the right encoding.
8
+ */
9
+ export default class ApiMakerTableExportCsvWriter {
10
+ /**
11
+ * @param {Array<string>} labels
12
+ * @returns {string}
13
+ */
14
+ header(labels) {
15
+ return UTF8_BOM + this.line(labels);
16
+ }
17
+ /**
18
+ * @param {Array<unknown>} values
19
+ * @returns {string}
20
+ */
21
+ row(values) {
22
+ return this.line(values);
23
+ }
24
+ /** @returns {string} */
25
+ footer() {
26
+ return "";
27
+ }
28
+ /**
29
+ * @param {Array<unknown>} values
30
+ * @returns {string}
31
+ */
32
+ line(values) {
33
+ return `${values.map((value) => this.escape(value)).join(",")}\r\n`;
34
+ }
35
+ /**
36
+ * @param {unknown} value
37
+ * @returns {string}
38
+ */
39
+ escape(value) {
40
+ const text = cellToText(value);
41
+ if ((/["\r\n,]/).test(text)) {
42
+ return `"${text.replace(/"/g, "\"\"")}"`;
43
+ }
44
+ return text;
45
+ }
46
+ }
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3N2LXdyaXRlci5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsidGFibGUvZXhwb3J0L2Zvcm1hdC13cml0ZXJzL2Nzdi13cml0ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQTtBQUUzQyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUE7QUFFcEI7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxPQUFPLE9BQU8sNEJBQTRCO0lBQy9DOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxNQUFNO1FBQ1gsT0FBTyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNyQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsR0FBRyxDQUFDLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDMUIsQ0FBQztJQUVELHdCQUF3QjtJQUN4QixNQUFNO1FBQ0osT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxDQUFDLE1BQU07UUFDVCxPQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFBO0lBQ3JFLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsS0FBSztRQUNWLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUU5QixJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDNUIsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUE7UUFDMUMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5pbXBvcnQge2NlbGxUb1RleHR9IGZyb20gXCIuLi9jZWxsLXZhbHVlLmpzXCJcblxuY29uc3QgVVRGOF9CT00gPSBcIu+7v1wiXG5cbi8qKlxuICogU3RyZWFtaW5nIENTViB3cml0ZXIuIEVtaXRzIG9uZSBjaHVuayBwZXIgY2FsbCBzbyB0aGUgZXhwb3J0IGRyaXZlciBjYW4gd3JpdGUgZWFjaCBwYWdlIHN0cmFpZ2h0IHRvIHRoZVxuICogZmlsZSBzaW5rIHdpdGhvdXQgaG9sZGluZyB0aGUgd2hvbGUgZG9jdW1lbnQgaW4gbWVtb3J5LiBSRkMtNDE4MCBxdW90aW5nLCBDUkxGIGxpbmUgYnJlYWtzLCBhbmQgYSBVVEYtOCBCT01cbiAqIHNvIEV4Y2VsIG9wZW5zIGl0IHdpdGggdGhlIHJpZ2h0IGVuY29kaW5nLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBcGlNYWtlclRhYmxlRXhwb3J0Q3N2V3JpdGVyIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7QXJyYXk8c3RyaW5nPn0gbGFiZWxzXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBoZWFkZXIobGFiZWxzKSB7XG4gICAgcmV0dXJuIFVURjhfQk9NICsgdGhpcy5saW5lKGxhYmVscylcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge0FycmF5PHVua25vd24+fSB2YWx1ZXNcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHJvdyh2YWx1ZXMpIHtcbiAgICByZXR1cm4gdGhpcy5saW5lKHZhbHVlcylcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7c3RyaW5nfSAqL1xuICBmb290ZXIoKSB7XG4gICAgcmV0dXJuIFwiXCJcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge0FycmF5PHVua25vd24+fSB2YWx1ZXNcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIGxpbmUodmFsdWVzKSB7XG4gICAgcmV0dXJuIGAke3ZhbHVlcy5tYXAoKHZhbHVlKSA9PiB0aGlzLmVzY2FwZSh2YWx1ZSkpLmpvaW4oXCIsXCIpfVxcclxcbmBcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3Vua25vd259IHZhbHVlXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBlc2NhcGUodmFsdWUpIHtcbiAgICBjb25zdCB0ZXh0ID0gY2VsbFRvVGV4dCh2YWx1ZSlcblxuICAgIGlmICgoL1tcIlxcclxcbixdLykudGVzdCh0ZXh0KSkge1xuICAgICAgcmV0dXJuIGBcIiR7dGV4dC5yZXBsYWNlKC9cIi9nLCBcIlxcXCJcXFwiXCIpfVwiYFxuICAgIH1cblxuICAgIHJldHVybiB0ZXh0XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Streaming HTML-table writer. Emits the table head, one `<tr>` per row, and the closing tags as separate
3
+ * chunks so the export driver can write each page to the file sink incrementally. Cells that are React
4
+ * elements (from a column's custom `content`) are rendered to markup; other values are escaped text.
5
+ */
6
+ export default class ApiMakerTableExportHtmlWriter {
7
+ /**
8
+ * @param {Array<string>} labels
9
+ * @returns {string}
10
+ */
11
+ header(labels: Array<string>): string;
12
+ /**
13
+ * @param {Array<unknown>} values
14
+ * @returns {string}
15
+ */
16
+ row(values: Array<unknown>): string;
17
+ /** @returns {string} */
18
+ footer(): string;
19
+ }
20
+ //# sourceMappingURL=html-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-writer.d.ts","sourceRoot":"/src/","sources":["table/export/format-writers/html-writer.js"],"names":[],"mappings":"AAGA;;;;GAIG;AACH;IACE;;;OAGG;IACH,eAHW,KAAK,CAAC,MAAM,CAAC,GACX,MAAM,CAMlB;IAED;;;OAGG;IACH,YAHW,KAAK,CAAC,OAAO,CAAC,GACZ,MAAM,CAMlB;IAED,wBAAwB;IACxB,UADc,MAAM,CAGnB;CACF"}
@@ -0,0 +1,30 @@
1
+ // @ts-check
2
+ import { cellToHtml } from "../cell-value.js";
3
+ /**
4
+ * Streaming HTML-table writer. Emits the table head, one `<tr>` per row, and the closing tags as separate
5
+ * chunks so the export driver can write each page to the file sink incrementally. Cells that are React
6
+ * elements (from a column's custom `content`) are rendered to markup; other values are escaped text.
7
+ */
8
+ export default class ApiMakerTableExportHtmlWriter {
9
+ /**
10
+ * @param {Array<string>} labels
11
+ * @returns {string}
12
+ */
13
+ header(labels) {
14
+ const cells = labels.map((label) => `<th>${cellToHtml(label)}</th>`).join("");
15
+ return `<table><thead><tr>${cells}</tr></thead><tbody>`;
16
+ }
17
+ /**
18
+ * @param {Array<unknown>} values
19
+ * @returns {string}
20
+ */
21
+ row(values) {
22
+ const cells = values.map((value) => `<td>${cellToHtml(value)}</td>`).join("");
23
+ return `<tr>${cells}</tr>`;
24
+ }
25
+ /** @returns {string} */
26
+ footer() {
27
+ return "</tbody></table>";
28
+ }
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC13cml0ZXIuanMiLCJzb3VyY2VSb290IjoiL3NyYy8iLCJzb3VyY2VzIjpbInRhYmxlL2V4cG9ydC9mb3JtYXQtd3JpdGVycy9odG1sLXdyaXRlci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBQ1osT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtCQUFrQixDQUFBO0FBRTNDOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsT0FBTyxPQUFPLDZCQUE2QjtJQUNoRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsTUFBTTtRQUNYLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7UUFFN0UsT0FBTyxxQkFBcUIsS0FBSyxzQkFBc0IsQ0FBQTtJQUN6RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsR0FBRyxDQUFDLE1BQU07UUFDUixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBRTdFLE9BQU8sT0FBTyxLQUFLLE9BQU8sQ0FBQTtJQUM1QixDQUFDO0lBRUQsd0JBQXdCO0lBQ3hCLE1BQU07UUFDSixPQUFPLGtCQUFrQixDQUFBO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuaW1wb3J0IHtjZWxsVG9IdG1sfSBmcm9tIFwiLi4vY2VsbC12YWx1ZS5qc1wiXG5cbi8qKlxuICogU3RyZWFtaW5nIEhUTUwtdGFibGUgd3JpdGVyLiBFbWl0cyB0aGUgdGFibGUgaGVhZCwgb25lIGA8dHI+YCBwZXIgcm93LCBhbmQgdGhlIGNsb3NpbmcgdGFncyBhcyBzZXBhcmF0ZVxuICogY2h1bmtzIHNvIHRoZSBleHBvcnQgZHJpdmVyIGNhbiB3cml0ZSBlYWNoIHBhZ2UgdG8gdGhlIGZpbGUgc2luayBpbmNyZW1lbnRhbGx5LiBDZWxscyB0aGF0IGFyZSBSZWFjdFxuICogZWxlbWVudHMgKGZyb20gYSBjb2x1bW4ncyBjdXN0b20gYGNvbnRlbnRgKSBhcmUgcmVuZGVyZWQgdG8gbWFya3VwOyBvdGhlciB2YWx1ZXMgYXJlIGVzY2FwZWQgdGV4dC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQXBpTWFrZXJUYWJsZUV4cG9ydEh0bWxXcml0ZXIge1xuICAvKipcbiAgICogQHBhcmFtIHtBcnJheTxzdHJpbmc+fSBsYWJlbHNcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIGhlYWRlcihsYWJlbHMpIHtcbiAgICBjb25zdCBjZWxscyA9IGxhYmVscy5tYXAoKGxhYmVsKSA9PiBgPHRoPiR7Y2VsbFRvSHRtbChsYWJlbCl9PC90aD5gKS5qb2luKFwiXCIpXG5cbiAgICByZXR1cm4gYDx0YWJsZT48dGhlYWQ+PHRyPiR7Y2VsbHN9PC90cj48L3RoZWFkPjx0Ym9keT5gXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtBcnJheTx1bmtub3duPn0gdmFsdWVzXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICByb3codmFsdWVzKSB7XG4gICAgY29uc3QgY2VsbHMgPSB2YWx1ZXMubWFwKCh2YWx1ZSkgPT4gYDx0ZD4ke2NlbGxUb0h0bWwodmFsdWUpfTwvdGQ+YCkuam9pbihcIlwiKVxuXG4gICAgcmV0dXJuIGA8dHI+JHtjZWxsc308L3RyPmBcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7c3RyaW5nfSAqL1xuICBmb290ZXIoKSB7XG4gICAgcmV0dXJuIFwiPC90Ym9keT48L3RhYmxlPlwiXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Excel (.xlsx) writer. xlsx is a zipped binary that can't be appended chunk-by-chunk, so this buffers the
3
+ * rows and serializes the whole workbook in `footer()`. To keep api_maker free of a heavy spreadsheet
4
+ * dependency, the actual serialization is provided by the host app via
5
+ * `apiMakerConfig.setExportXlsxSerializer(rows => Uint8Array)`. Best for moderate row counts — use CSV for
6
+ * very large exports.
7
+ */
8
+ export default class ApiMakerTableExportXlsxWriter {
9
+ rows: unknown[][];
10
+ /**
11
+ * @param {Array<string>} labels
12
+ * @returns {null}
13
+ */
14
+ header(labels: Array<string>): null;
15
+ /**
16
+ * @param {Array<unknown>} values
17
+ * @returns {null}
18
+ */
19
+ row(values: Array<unknown>): null;
20
+ /** @returns {Promise<Uint8Array>} */
21
+ footer(): Promise<Uint8Array>;
22
+ }
23
+ //# sourceMappingURL=xlsx-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xlsx-writer.d.ts","sourceRoot":"/src/","sources":["table/export/format-writers/xlsx-writer.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH;IAEI,kBAAqD;IAGvD;;;OAGG;IACH,eAHW,KAAK,CAAC,MAAM,CAAC,GACX,IAAI,CAMhB;IAED;;;OAGG;IACH,YAHW,KAAK,CAAC,OAAO,CAAC,GACZ,IAAI,CAMhB;IAED,qCAAqC;IACrC,UADc,OAAO,CAAC,UAAU,CAAC,CAShC;CACF"}