@wemake4u/form-player-se 1.0.31 → 1.0.32

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 (36) hide show
  1. package/esm2022/lib/components/actionsCellRenderer/actionsCellRenderer.component.mjs +29 -16
  2. package/esm2022/lib/components/hostCellRenderer/hostCellRenderer.component.mjs +3 -2
  3. package/esm2022/lib/directives/grid.directive.mjs +82 -24
  4. package/esm2022/lib/directives/validationpatch.directive.mjs +44 -2
  5. package/esm2022/lib/dynamic-fields/dynamic-fields.component.mjs +24 -11
  6. package/esm2022/lib/dynamic-form/dynamic-form.component.mjs +24 -19
  7. package/esm2022/lib/services/cache.service.mjs +86 -0
  8. package/esm2022/lib/services/dialog.service.mjs +2 -2
  9. package/esm2022/lib/services/formatter.service.mjs +2 -2
  10. package/esm2022/lib/services/function.service.mjs +14 -3
  11. package/esm2022/lib/services/grid.service.mjs +46 -26
  12. package/esm2022/lib/services/programmability.service.mjs +27 -30
  13. package/esm2022/lib/services/scope.service.mjs +3 -2
  14. package/esm2022/lib/services/toast.service.mjs +2 -2
  15. package/esm2022/lib/services/validation.service.mjs +2 -2
  16. package/esm2022/lib/services/weak.service.mjs +6 -1
  17. package/esm2022/lib/utils/bound.mjs +12 -0
  18. package/esm2022/lib/utils/groupByRow.mjs +2 -1
  19. package/esm2022/lib/utils/proxy.mjs +55 -0
  20. package/fesm2022/wemake4u-form-player-se.mjs +420 -142
  21. package/fesm2022/wemake4u-form-player-se.mjs.map +1 -1
  22. package/lib/components/actionsCellRenderer/actionsCellRenderer.component.d.ts +4 -0
  23. package/lib/directives/grid.directive.d.ts +17 -4
  24. package/lib/directives/validationpatch.directive.d.ts +9 -0
  25. package/lib/dynamic-fields/dynamic-fields.component.d.ts +5 -4
  26. package/lib/dynamic-form/dynamic-form.component.d.ts +5 -3
  27. package/lib/services/cache.service.d.ts +21 -0
  28. package/lib/services/function.service.d.ts +2 -0
  29. package/lib/services/grid.service.d.ts +11 -5
  30. package/lib/services/programmability.service.d.ts +4 -3
  31. package/lib/services/weak.service.d.ts +1 -0
  32. package/lib/utils/{functions.d.ts → bound.d.ts} +0 -1
  33. package/lib/utils/groupByRow.d.ts +1 -0
  34. package/lib/utils/proxy.d.ts +2 -0
  35. package/package.json +1 -1
  36. package/esm2022/lib/utils/functions.mjs +0 -31
@@ -0,0 +1,55 @@
1
+ export function bindFunction(fn, context) {
2
+ if (fn.bind && context && fn.prototype !== undefined) {
3
+ return fn.bind(context);
4
+ }
5
+ return (...args) => fn.apply(context, args);
6
+ }
7
+ export function toProxy(instance, seen = new WeakMap()) {
8
+ if (instance === null || typeof instance !== 'object')
9
+ return instance;
10
+ if (seen.has(instance))
11
+ return seen.get(instance);
12
+ const proxy = new Proxy(instance, {
13
+ get: (target, property, receiver) => {
14
+ let value;
15
+ try {
16
+ value = Reflect.get(target, property, receiver);
17
+ }
18
+ catch {
19
+ return undefined;
20
+ }
21
+ if (typeof property === 'symbol' || property === 'toJSON')
22
+ return value;
23
+ if (typeof value === 'function') {
24
+ return bindFunction(value, instance);
25
+ }
26
+ if (typeof value === 'object' && value !== null) {
27
+ if (value instanceof Date || value instanceof RegExp || value instanceof Map || value instanceof Set) {
28
+ return value;
29
+ }
30
+ if (Array.isArray(value)) {
31
+ if (seen.has(value))
32
+ return seen.get(value);
33
+ const arrayProxy = new Proxy(value, {
34
+ get(arrTarget, index, arrReceiver) {
35
+ const item = Reflect.get(arrTarget, index, arrReceiver);
36
+ return typeof item === 'object' && item !== null
37
+ ? toProxy(item, seen)
38
+ : item;
39
+ }
40
+ });
41
+ seen.set(value, arrayProxy);
42
+ return arrayProxy;
43
+ }
44
+ return toProxy(value, seen);
45
+ }
46
+ return value;
47
+ },
48
+ has(target, key) {
49
+ return key in target;
50
+ }
51
+ });
52
+ seen.set(instance, proxy);
53
+ return proxy;
54
+ }
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJveHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi91dGlscy9wcm94eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsWUFBWSxDQUFDLEVBQVksRUFBRSxPQUFZO0lBQ3JELElBQUksRUFBRSxDQUFDLElBQUksSUFBSSxPQUFPLElBQUksRUFBRSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUNyRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUNELE9BQU8sQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDckQsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPLENBQUMsUUFBYSxFQUFFLElBQUksR0FBRyxJQUFJLE9BQU8sRUFBRTtJQUN6RCxJQUFJLFFBQVEsS0FBSyxJQUFJLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUTtRQUFFLE9BQU8sUUFBUSxDQUFDO0lBQ3ZFLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFBRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1FBQ2hDLEdBQUcsRUFBRSxDQUFDLE1BQVcsRUFBRSxRQUFxQixFQUFFLFFBQWEsRUFBRSxFQUFFO1lBQ3pELElBQUksS0FBVSxDQUFDO1lBQ2YsSUFBSSxDQUFDO2dCQUNILEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDbEQsQ0FBQztZQUFDLE1BQU0sQ0FBQztnQkFDUCxPQUFPLFNBQVMsQ0FBQztZQUNuQixDQUFDO1lBRUQsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLElBQUksUUFBUSxLQUFLLFFBQVE7Z0JBQUUsT0FBTyxLQUFLLENBQUM7WUFFeEUsSUFBSSxPQUFPLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztnQkFDaEMsT0FBTyxZQUFZLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7WUFFRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ2hELElBQUksS0FBSyxZQUFZLElBQUksSUFBSSxLQUFLLFlBQVksTUFBTSxJQUFJLEtBQUssWUFBWSxHQUFHLElBQUksS0FBSyxZQUFZLEdBQUcsRUFBRSxDQUFDO29CQUNyRyxPQUFPLEtBQUssQ0FBQztnQkFDZixDQUFDO2dCQUVELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUN6QixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO3dCQUFFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDNUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO3dCQUNsQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXOzRCQUMvQixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7NEJBQ3hELE9BQU8sT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksS0FBSyxJQUFJO2dDQUM5QyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7Z0NBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUM7d0JBQ1gsQ0FBQztxQkFDRixDQUFDLENBQUM7b0JBQ0gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7b0JBQzVCLE9BQU8sVUFBVSxDQUFDO2dCQUNwQixDQUFDO2dCQUVELE9BQU8sT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM5QixDQUFDO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHO1lBQ2IsT0FBTyxHQUFHLElBQUksTUFBTSxDQUFDO1FBQ3ZCLENBQUM7S0FDRixDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gYmluZEZ1bmN0aW9uKGZuOiBGdW5jdGlvbiwgY29udGV4dDogYW55KSB7XHJcbiAgaWYgKGZuLmJpbmQgJiYgY29udGV4dCAmJiBmbi5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgcmV0dXJuIGZuLmJpbmQoY29udGV4dCk7XHJcbiAgfVxyXG4gIHJldHVybiAoLi4uYXJnczogYW55W10pID0+IGZuLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdG9Qcm94eShpbnN0YW5jZTogYW55LCBzZWVuID0gbmV3IFdlYWtNYXAoKSk6IGFueSB7ICBcclxuICBpZiAoaW5zdGFuY2UgPT09IG51bGwgfHwgdHlwZW9mIGluc3RhbmNlICE9PSAnb2JqZWN0JykgcmV0dXJuIGluc3RhbmNlO1xyXG4gIGlmIChzZWVuLmhhcyhpbnN0YW5jZSkpIHJldHVybiBzZWVuLmdldChpbnN0YW5jZSk7XHJcblxyXG4gIGNvbnN0IHByb3h5ID0gbmV3IFByb3h5KGluc3RhbmNlLCB7XHJcbiAgICBnZXQ6ICh0YXJnZXQ6IGFueSwgcHJvcGVydHk6IFByb3BlcnR5S2V5LCByZWNlaXZlcjogYW55KSA9PiB7XHJcbiAgICAgIGxldCB2YWx1ZTogYW55O1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHZhbHVlID0gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wZXJ0eSwgcmVjZWl2ZXIpO1xyXG4gICAgICB9IGNhdGNoIHtcclxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAodHlwZW9mIHByb3BlcnR5ID09PSAnc3ltYm9sJyB8fCBwcm9wZXJ0eSA9PT0gJ3RvSlNPTicpIHJldHVybiB2YWx1ZTtcclxuXHJcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICByZXR1cm4gYmluZEZ1bmN0aW9uKHZhbHVlLCBpbnN0YW5jZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSB8fCB2YWx1ZSBpbnN0YW5jZW9mIFJlZ0V4cCB8fCB2YWx1ZSBpbnN0YW5jZW9mIE1hcCB8fCB2YWx1ZSBpbnN0YW5jZW9mIFNldCkge1xyXG4gICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgICAgICBpZiAoc2Vlbi5oYXModmFsdWUpKSByZXR1cm4gc2Vlbi5nZXQodmFsdWUpO1xyXG4gICAgICAgICAgY29uc3QgYXJyYXlQcm94eSA9IG5ldyBQcm94eSh2YWx1ZSwge1xyXG4gICAgICAgICAgICBnZXQoYXJyVGFyZ2V0LCBpbmRleCwgYXJyUmVjZWl2ZXIpIHtcclxuICAgICAgICAgICAgICBjb25zdCBpdGVtID0gUmVmbGVjdC5nZXQoYXJyVGFyZ2V0LCBpbmRleCwgYXJyUmVjZWl2ZXIpO1xyXG4gICAgICAgICAgICAgIHJldHVybiB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcgJiYgaXRlbSAhPT0gbnVsbFxyXG4gICAgICAgICAgICAgICAgPyB0b1Byb3h5KGl0ZW0sIHNlZW4pXHJcbiAgICAgICAgICAgICAgICA6IGl0ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgc2Vlbi5zZXQodmFsdWUsIGFycmF5UHJveHkpO1xyXG4gICAgICAgICAgcmV0dXJuIGFycmF5UHJveHk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdG9Qcm94eSh2YWx1ZSwgc2Vlbik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH0sXHJcbiAgICBoYXModGFyZ2V0LCBrZXkpIHtcclxuICAgICAgcmV0dXJuIGtleSBpbiB0YXJnZXQ7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHNlZW4uc2V0KGluc3RhbmNlLCBwcm94eSk7XHJcbiAgcmV0dXJuIHByb3h5O1xyXG59XHJcbiJdfQ==