jsf.js_next_gen 4.0.0-RC.33 → 4.0.0-RC.35

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jsf.js_next_gen",
3
- "version": "4.0.0-RC.33",
3
+ "version": "4.0.0-RC.35",
4
4
  "description": "A next generation typescript reimplementation of jsf.js",
5
5
  "main": "dist/window/faces.js",
6
6
  "scripts": {
@@ -48,6 +48,6 @@
48
48
  "webpack-dev-server": "^4.11.1"
49
49
  },
50
50
  "dependencies": {
51
- "mona-dish": "^0.24.9"
51
+ "mona-dish": "^0.26.0"
52
52
  }
53
53
  }
@@ -1,5 +1,5 @@
1
1
  import {ArrayCollector, Config, DomQuery, DQ, LazyStream, Stream} from "mona-dish";
2
- import {ExtConfig, ExtDomQuery} from "./ExtDomQuery";
2
+ import {ExtDomQuery} from "./ExtDomQuery";
3
3
  import {$faces, EMPTY_STR} from "../core/Const";
4
4
 
5
5
  /*
@@ -59,35 +59,46 @@ export function decodeEncodedValues(encoded: string): Stream<string[]> {
59
59
  }
60
60
 
61
61
 
62
+ /**
63
+ * gets all the input files and their corresponding file objects
64
+ * @param dataSource
65
+ */
62
66
  export function resolveFiles(dataSource: DQ): Stream<[string, File]> {
67
+
68
+ const expandFilesArr = ([key, files]) => Stream.of(...files).map(file => [key, file]);
69
+ const remapFileInput = fileInput => [fileInput.name.value || fileInput.id.value, fileInput.filesFromElem(0)];
63
70
  return dataSource
64
71
  .querySelectorAllDeep("input[type='file']")
65
72
  .stream
66
- .map(fileInput => [fileInput.name.value || fileInput.id.value, fileInput.filesFromElem(0)])
67
- .flatMap(([key, files]) => {
68
- return Stream.of(...files).map(file => [key, file])
69
- });
73
+ .map(remapFileInput)
74
+ .flatMap(expandFilesArr);
70
75
  }
71
76
 
72
77
 
73
- export function fixKeyWithoutVal(keyVal: any[]) {
74
- return keyVal.length < 3 ? [keyVal?.[0] ?? [], keyVal?.[1] ?? []] : keyVal;
78
+ export function fixEmmptyParameters(keyVal: any[]): [string, any] {
79
+ return (keyVal.length < 3 ? [keyVal?.[0] ?? [], keyVal?.[1] ?? []] : keyVal) as [string, any];
75
80
  }
76
81
 
77
82
  /**
78
- * gets all the inputs under the form parentItem
79
- * as stream
83
+ * returns the decoded viewState from parentItem
80
84
  * @param parentItem
81
85
  */
82
- export function getFormInputsAsStream(parentItem: DomQuery): Stream<string[] | [string, File]> {
83
- //encoded String
86
+ function resolveViewState(parentItem: DomQuery): Stream<string[] | [string, File]> {
84
87
  const viewStateStr = $faces().getViewState(parentItem.getAsElem(0).value);
85
88
 
86
89
  // we now need to decode it and then merge it into the target buf
87
90
  // which hosts already our overrides (aka do not override what is already there(
88
91
  // after that we need to deal with form elements on a separate level
89
- const standardInputs: Stream<string[] | [string, File]> = decodeEncodedValues(viewStateStr);
92
+ return decodeEncodedValues(viewStateStr);
93
+ }
94
+
95
+ /**
96
+ * gets all the inputs under the form parentItem
97
+ * as stream
98
+ * @param parentItem
99
+ */
100
+ export function getFormInputsAsStream(parentItem: DomQuery): Stream<string[] | [string, File]> {
101
+ const standardInputs = resolveViewState(parentItem);
90
102
  const fileInputs = resolveFiles(parentItem);
91
- const allInputs = standardInputs.concat(fileInputs as any)
92
- return allInputs;
103
+ return standardInputs.concat(fileInputs as any)
93
104
  }
@@ -13,14 +13,12 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import {ArrayCollector, Config, DQ, Stream} from "mona-dish";
17
- import {$faces, $nsp, EMPTY_STR, IDENT_ALL, IDENT_FORM, IDENT_NONE, P_VIEWSTATE} from "../core/Const";
18
- import {ExtConfig} from "../util/ExtDomQuery";
16
+ import {Config, DQ, FormDataCollector, Stream} from "mona-dish";
17
+ import {$nsp, EMPTY_STR, IDENT_NONE, P_VIEWSTATE} from "../core/Const";
18
+
19
19
  import {
20
- decodeEncodedValues,
21
20
  encodeFormData,
22
- resolveFiles,
23
- fixKeyWithoutVal, getFormInputsAsStream
21
+ fixEmmptyParameters, getFormInputsAsStream
24
22
  } from "../util/FileUtils";
25
23
 
26
24
 
@@ -28,7 +26,6 @@ type ParamsMapper<V, K> = (key: V, item: K) => [V, K];
28
26
  const defaultParamsMapper: ParamsMapper<string, any> = (key, item) => [key, item];
29
27
 
30
28
 
31
-
32
29
  /**
33
30
  * A unified form data class
34
31
  * which builds upon our configuration.
@@ -80,35 +77,29 @@ export class XhrFormData extends Config {
80
77
  toFormData(): FormData {
81
78
  /*
82
79
  * expands key: [item1, item2]
83
- * to: [{key: item1}, {key, item2}]
80
+ * to: [{key: key, value: item1}, {key: key, value: item2}]
84
81
  */
85
82
  let expandAssocArray = ([key, item]) =>
86
- Stream.of(...(item as Array<any>)).map(item => {
87
- return {key, item};
83
+ Stream.of(...(item as Array<any>)).map(value => {
84
+ return {key, value};
88
85
  });
89
86
 
90
87
  /*
91
88
  * remaps the incoming {key, value} tuples
92
89
  * to naming container prefixed keys and values
93
90
  */
94
- let remapForNamingContainer = ({key, item}) => {
91
+ let remapForNamingContainer = ({key, value}) => {
95
92
  key = this.remapKeyForNamingContainer(key);
96
- return {key, item}
93
+ return {key, value}
97
94
  };
98
95
 
99
96
  /*
100
97
  * collects everything into a FormData object
101
98
  */
102
- let ret: any = new FormData();
103
- let collectFormData = ({key, item}) => {
104
- ret.append(key, item)
105
- };
106
-
107
- Stream.ofAssoc(this.value)
99
+ return Stream.ofAssoc(this.value)
108
100
  .flatMap(expandAssocArray)
109
101
  .map(remapForNamingContainer)
110
- .each(collectFormData)
111
- return ret;
102
+ .collect(new FormDataCollector() as any);
112
103
  }
113
104
 
114
105
  /**
@@ -155,10 +146,13 @@ export class XhrFormData extends Config {
155
146
  private encodeSubmittableFields(parentItem: DQ, partialIds ?: string[]) {
156
147
 
157
148
  const formInputs = getFormInputsAsStream(parentItem);
149
+ const mergeIntoThis = ([key, value]) => this.append(key).value = value;
150
+ const namingContainerRemap = ([key, value]) => this.paramsMapper(key as string, value);
151
+
158
152
  formInputs
159
- .map(fixKeyWithoutVal)
160
- .map(([key, value]) => this.paramsMapper(key as string, value))
161
- .each(([key, value]) => this.append(key).value = value);
153
+ .map(fixEmmptyParameters)
154
+ .map(namingContainerRemap)
155
+ .each(mergeIntoThis);
162
156
  }
163
157
 
164
158
  private remapKeyForNamingContainer(key: string): string {
@@ -120,10 +120,6 @@ describe('javax.ajax.request test suite', () => {
120
120
  expect(!!called["func5"]).to.be.false;
121
121
 
122
122
  });
123
-
124
-
125
-
126
-
127
123
  });
128
124
 
129
125
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFormInputsAsStream = exports.fixKeyWithoutVal = exports.resolveFiles = exports.decodeEncodedValues = exports.encodeFormData = void 0;
3
+ exports.getFormInputsAsStream = exports.fixEmmptyParameters = exports.resolveFiles = exports.decodeEncodedValues = exports.encodeFormData = void 0;
4
4
  const mona_dish_1 = require("mona-dish");
5
5
  const ExtDomQuery_1 = require("./ExtDomQuery");
6
6
  const Const_1 = require("../core/Const");
@@ -52,36 +52,45 @@ function decodeEncodedValues(encoded) {
52
52
  .map(splitKeyValuePair);
53
53
  }
54
54
  exports.decodeEncodedValues = decodeEncodedValues;
55
+ /**
56
+ * gets all the input files and their corresponding file objects
57
+ * @param dataSource
58
+ */
55
59
  function resolveFiles(dataSource) {
60
+ const expandFilesArr = ([key, files]) => mona_dish_1.Stream.of(...files).map(file => [key, file]);
61
+ const remapFileInput = fileInput => [fileInput.name.value || fileInput.id.value, fileInput.filesFromElem(0)];
56
62
  return dataSource
57
63
  .querySelectorAllDeep("input[type='file']")
58
64
  .stream
59
- .map(fileInput => [fileInput.name.value || fileInput.id.value, fileInput.filesFromElem(0)])
60
- .flatMap(([key, files]) => {
61
- return mona_dish_1.Stream.of(...files).map(file => [key, file]);
62
- });
65
+ .map(remapFileInput)
66
+ .flatMap(expandFilesArr);
63
67
  }
64
68
  exports.resolveFiles = resolveFiles;
65
- function fixKeyWithoutVal(keyVal) {
69
+ function fixEmmptyParameters(keyVal) {
66
70
  var _a, _b;
67
- return keyVal.length < 3 ? [(_a = keyVal === null || keyVal === void 0 ? void 0 : keyVal[0]) !== null && _a !== void 0 ? _a : [], (_b = keyVal === null || keyVal === void 0 ? void 0 : keyVal[1]) !== null && _b !== void 0 ? _b : []] : keyVal;
71
+ return (keyVal.length < 3 ? [(_a = keyVal === null || keyVal === void 0 ? void 0 : keyVal[0]) !== null && _a !== void 0 ? _a : [], (_b = keyVal === null || keyVal === void 0 ? void 0 : keyVal[1]) !== null && _b !== void 0 ? _b : []] : keyVal);
68
72
  }
69
- exports.fixKeyWithoutVal = fixKeyWithoutVal;
73
+ exports.fixEmmptyParameters = fixEmmptyParameters;
70
74
  /**
71
- * gets all the inputs under the form parentItem
72
- * as stream
75
+ * returns the decoded viewState from parentItem
73
76
  * @param parentItem
74
77
  */
75
- function getFormInputsAsStream(parentItem) {
76
- //encoded String
78
+ function resolveViewState(parentItem) {
77
79
  const viewStateStr = (0, Const_1.$faces)().getViewState(parentItem.getAsElem(0).value);
78
80
  // we now need to decode it and then merge it into the target buf
79
81
  // which hosts already our overrides (aka do not override what is already there(
80
82
  // after that we need to deal with form elements on a separate level
81
- const standardInputs = decodeEncodedValues(viewStateStr);
83
+ return decodeEncodedValues(viewStateStr);
84
+ }
85
+ /**
86
+ * gets all the inputs under the form parentItem
87
+ * as stream
88
+ * @param parentItem
89
+ */
90
+ function getFormInputsAsStream(parentItem) {
91
+ const standardInputs = resolveViewState(parentItem);
82
92
  const fileInputs = resolveFiles(parentItem);
83
- const allInputs = standardInputs.concat(fileInputs);
84
- return allInputs;
93
+ return standardInputs.concat(fileInputs);
85
94
  }
86
95
  exports.getFormInputsAsStream = getFormInputsAsStream;
87
96
  //# sourceMappingURL=FileUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileUtils.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/FileUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileUtils.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/FileUtils.ts"],"names":[],"mappings":"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"}
@@ -72,31 +72,26 @@ class XhrFormData extends mona_dish_1.Config {
72
72
  toFormData() {
73
73
  /*
74
74
  * expands key: [item1, item2]
75
- * to: [{key: item1}, {key, item2}]
75
+ * to: [{key: key, value: item1}, {key: key, value: item2}]
76
76
  */
77
- let expandAssocArray = ([key, item]) => mona_dish_1.Stream.of(...item).map(item => {
78
- return { key, item };
77
+ let expandAssocArray = ([key, item]) => mona_dish_1.Stream.of(...item).map(value => {
78
+ return { key, value };
79
79
  });
80
80
  /*
81
81
  * remaps the incoming {key, value} tuples
82
82
  * to naming container prefixed keys and values
83
83
  */
84
- let remapForNamingContainer = ({ key, item }) => {
84
+ let remapForNamingContainer = ({ key, value }) => {
85
85
  key = this.remapKeyForNamingContainer(key);
86
- return { key, item };
86
+ return { key, value };
87
87
  };
88
88
  /*
89
89
  * collects everything into a FormData object
90
90
  */
91
- let ret = new FormData();
92
- let collectFormData = ({ key, item }) => {
93
- ret.append(key, item);
94
- };
95
- mona_dish_1.Stream.ofAssoc(this.value)
91
+ return mona_dish_1.Stream.ofAssoc(this.value)
96
92
  .flatMap(expandAssocArray)
97
93
  .map(remapForNamingContainer)
98
- .each(collectFormData);
99
- return ret;
94
+ .collect(new mona_dish_1.FormDataCollector());
100
95
  }
101
96
  /**
102
97
  * returns an encoded string representation of our xhr form data
@@ -138,10 +133,12 @@ class XhrFormData extends mona_dish_1.Config {
138
133
  */
139
134
  encodeSubmittableFields(parentItem, partialIds) {
140
135
  const formInputs = (0, FileUtils_1.getFormInputsAsStream)(parentItem);
136
+ const mergeIntoThis = ([key, value]) => this.append(key).value = value;
137
+ const namingContainerRemap = ([key, value]) => this.paramsMapper(key, value);
141
138
  formInputs
142
- .map(FileUtils_1.fixKeyWithoutVal)
143
- .map(([key, value]) => this.paramsMapper(key, value))
144
- .each(([key, value]) => this.append(key).value = value);
139
+ .map(FileUtils_1.fixEmmptyParameters)
140
+ .map(namingContainerRemap)
141
+ .each(mergeIntoThis);
145
142
  }
146
143
  remapKeyForNamingContainer(key) {
147
144
  return this.paramsMapper(key, "")[0];
@@ -1 +1 @@
1
- {"version":3,"file":"XhrFormData.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/xhrCore/XhrFormData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XhrFormData.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/xhrCore/XhrFormData.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ImplTest_23.spec.js","sourceRoot":"","sources":["../../../src/main/typescript/test/impl/ImplTest_23.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImplTest_23.spec.js","sourceRoot":"","sources":["../../../src/main/typescript/test/impl/ImplTest_23.spec.ts"],"names":[],"mappings":"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"}