@mapomodule/utils 1.0.0 → 2.0.0-beta.2

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 (73) hide show
  1. package/README.md +33 -0
  2. package/dist/debounce.js +19 -0
  3. package/dist/debounce.js.map +1 -0
  4. package/dist/deepMerge.js +31 -0
  5. package/dist/deepMerge.js.map +1 -0
  6. package/dist/formatDate.js +23 -0
  7. package/dist/formatDate.js.map +1 -0
  8. package/dist/formatters.js +43 -0
  9. package/dist/formatters.js.map +1 -0
  10. package/dist/index.js +12 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/jsonSchema/conditionals.js +326 -0
  13. package/dist/jsonSchema/conditionals.js.map +1 -0
  14. package/dist/jsonSchema/index.js +3 -0
  15. package/dist/jsonSchema/index.js.map +1 -0
  16. package/dist/jsonSchema/resolve.js +133 -0
  17. package/dist/jsonSchema/resolve.js.map +1 -0
  18. package/dist/jsonSchema/types.js +2 -0
  19. package/dist/jsonSchema/types.js.map +1 -0
  20. package/dist/menuHelpers.js +56 -0
  21. package/dist/menuHelpers.js.map +1 -0
  22. package/dist/nestedValue.js +53 -0
  23. package/dist/nestedValue.js.map +1 -0
  24. package/dist/normalizeEndpoint.js +39 -0
  25. package/dist/normalizeEndpoint.js.map +1 -0
  26. package/dist/objectDiff.js +58 -0
  27. package/dist/objectDiff.js.map +1 -0
  28. package/dist/objectHelpers.js +93 -0
  29. package/dist/objectHelpers.js.map +1 -0
  30. package/dist/slotNamespace.js +15 -0
  31. package/dist/slotNamespace.js.map +1 -0
  32. package/dist/types/debounce.d.ts +11 -0
  33. package/dist/types/debounce.d.ts.map +1 -0
  34. package/dist/types/deepMerge.d.ts +12 -0
  35. package/dist/types/deepMerge.d.ts.map +1 -0
  36. package/dist/types/formatDate.d.ts +11 -0
  37. package/dist/types/formatDate.d.ts.map +1 -0
  38. package/dist/types/formatters.d.ts +15 -0
  39. package/dist/types/formatters.d.ts.map +1 -0
  40. package/dist/types/index.d.ts +14 -0
  41. package/dist/types/index.d.ts.map +1 -0
  42. package/dist/types/jsonSchema/conditionals.d.ts +40 -0
  43. package/dist/types/jsonSchema/conditionals.d.ts.map +1 -0
  44. package/dist/types/jsonSchema/index.d.ts +15 -0
  45. package/dist/types/jsonSchema/index.d.ts.map +1 -0
  46. package/dist/types/jsonSchema/resolve.d.ts +41 -0
  47. package/dist/types/jsonSchema/resolve.d.ts.map +1 -0
  48. package/dist/types/jsonSchema/types.d.ts +43 -0
  49. package/dist/types/jsonSchema/types.d.ts.map +1 -0
  50. package/dist/types/menuHelpers.d.ts +22 -0
  51. package/dist/types/menuHelpers.d.ts.map +1 -0
  52. package/dist/types/nestedValue.d.ts +25 -0
  53. package/dist/types/nestedValue.d.ts.map +1 -0
  54. package/dist/types/normalizeEndpoint.d.ts +28 -0
  55. package/dist/types/normalizeEndpoint.d.ts.map +1 -0
  56. package/dist/types/objectDiff.d.ts +12 -0
  57. package/dist/types/objectDiff.d.ts.map +1 -0
  58. package/dist/types/objectHelpers.d.ts +33 -0
  59. package/dist/types/objectHelpers.d.ts.map +1 -0
  60. package/dist/types/slotNamespace.d.ts +12 -0
  61. package/dist/types/slotNamespace.d.ts.map +1 -0
  62. package/package.json +41 -7
  63. package/CHANGELOG.md +0 -182
  64. package/helpers/cssVariables.js +0 -12
  65. package/helpers/datetime.js +0 -68
  66. package/helpers/debounce.js +0 -42
  67. package/helpers/formatters.js +0 -52
  68. package/helpers/menu.js +0 -15
  69. package/helpers/objHelpers.js +0 -118
  70. package/helpers/slots.js +0 -9
  71. package/index.js +0 -13
  72. package/loaders/dummy-loader.js +0 -1
  73. package/plugins/v-draggable-modals.js +0 -39
@@ -1,52 +0,0 @@
1
- function humanFileSize(bytes, si = false, dp = 1) {
2
- const thresh = si ? 1000 : 1024;
3
-
4
- if (Math.abs(bytes) < thresh) {
5
- return bytes + " B";
6
- }
7
-
8
- const units = si
9
- ? ["kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]
10
- : ["KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB"];
11
- let u = -1;
12
- const r = 10 ** dp;
13
-
14
- do {
15
- bytes /= thresh;
16
- ++u;
17
- } while (
18
- Math.round(Math.abs(bytes) * r) / r >= thresh &&
19
- u < units.length - 1
20
- );
21
-
22
- return bytes.toFixed(dp) + " " + units[u];
23
- };
24
-
25
- function slugify(str) {
26
- str = str || "";
27
- str = str.replace(/^\s+|\s+$/g, ''); // trim
28
- str = str.toLowerCase();
29
-
30
- // remove accents, swap ñ for n, etc
31
- var from = "àáäâèéëêìíïîòóöôùúüûñç·/_,:;";
32
- var to = "aaaaeeeeiiiioooouuuunc------";
33
- for (var i = 0, l = from.length; i < l; i++) {
34
- str = str.replace(new RegExp(from.charAt(i), 'g'), to.charAt(i));
35
- }
36
-
37
- str = str.replace(/[^a-z0-9 -]/g, '') // remove invalid chars
38
- .replace(/\s+/g, '-') // collapse whitespace and replace by -
39
- .replace(/-+/g, '-'); // collapse dashes
40
-
41
- return str;
42
- };
43
-
44
- function titleCase(string) {
45
- return (string && string[0].toUpperCase() + string.slice(1).toLowerCase()) || "";
46
- };
47
-
48
- module.exports = {
49
- humanFileSize,
50
- slugify,
51
- titleCase,
52
- }
package/helpers/menu.js DELETED
@@ -1,15 +0,0 @@
1
- function calcMaxMenuNestDepth(node, currentDepth = 0) {
2
- if (!node?.nodes || node?.nodes?.length === 0) {
3
- return currentDepth;
4
- }
5
- let maxDepth = currentDepth;
6
- for (const childNode of node.nodes) {
7
- const childDepth = calcMaxMenuNestDepth(childNode, currentDepth + 1);
8
- maxDepth = Math.max(maxDepth, childDepth);
9
- }
10
- return maxDepth;
11
- }
12
-
13
- module.exports = {
14
- calcMaxMenuNestDepth
15
- }
@@ -1,118 +0,0 @@
1
- var Vue = require('vue')
2
- Vue = Vue.default || Vue
3
-
4
- function deepClone(obj) {
5
- const clone = obj instanceof Array ? Object.assign([]) : Object.assign({});
6
- for (const i in obj) {
7
- if (obj[i] != null && typeof (obj[i]) == 'object' && !(isFileOrBlob(obj[i])) && !(obj[i] instanceof Date)) {
8
- clone[i] = deepClone(obj[i]);
9
- } else {
10
- clone[i] = obj[i];
11
- }
12
- }
13
- return clone;
14
- }
15
-
16
- function getPointed(obj, kpointed, def) {
17
- const result = kpointed.split(".").reduce((o, k) => typeof (o) == 'object' ? (o || {})[k] : o, obj)
18
- return result === undefined ? def : result
19
- }
20
-
21
- function setPointed(obj, kpointed, val) {
22
- const arr = typeof kpointed == 'string' ? kpointed.split(".") : kpointed
23
- if (arr.length == 1) {
24
- Vue.set(obj, arr[0], val)
25
- return obj
26
- }
27
- Vue.set(obj, arr[0], obj[arr[0]] || {})
28
- return setPointed(obj[arr[0]], arr.slice(1), val)
29
- }
30
-
31
- function filterObj(obj, kpointedArr) {
32
- return (kpointedArr || []).reduce((acc, kpointed) => {
33
- setPointed(acc, kpointed, getPointed(obj, kpointed))
34
- return acc
35
- }, {})
36
- }
37
-
38
- function isFileInstance(input) {
39
- if ('File' in window && input instanceof File)
40
- return true;
41
- else return false;
42
- }
43
-
44
- function isBlobInstance(input) {
45
- if ('Blob' in window && input instanceof Blob)
46
- return true;
47
- else return false;
48
- }
49
-
50
- function isFileOrBlob(input) {
51
- return isFileInstance(input) || isBlobInstance(input)
52
- }
53
-
54
- function filesInObject(obj) {
55
- return findPropPaths(obj, ({ val }) => isFileOrBlob(val))
56
- }
57
-
58
- function findPropPaths(obj, predicate) {
59
- const discoveredObjects = [];
60
- const path = [];
61
- const results = [];
62
- if (!obj && (typeof obj !== "object" || Array.isArray(obj))) {
63
- throw new TypeError("First argument of findPropPaths is not the correct type Object");
64
- }
65
- if (typeof predicate !== "function") {
66
- throw new TypeError("Predicate is not a function");
67
- }
68
- (function find(obj) {
69
- for (const key in obj) {
70
- if (predicate({ val: obj[key], obj, path, key }) === true) {
71
- path.push(key);
72
- results.push(path.join("."));
73
- path.pop();
74
- }
75
- const o = obj[key];
76
- if (o && typeof o === "object") {
77
- if (!discoveredObjects.find(obj => obj === o)) {
78
- path.push(key);
79
- discoveredObjects.push(o);
80
- find(o);
81
- path.pop();
82
- }
83
- }
84
- }
85
- }(obj));
86
- return results;
87
- }
88
-
89
- function diffObjs(obj1, obj2, clone=deepClone) {
90
- const a = obj1 && clone(obj1) || obj2 && obj2.__proto__.constructor();
91
- const b = obj2 && clone(obj2) || obj1 && obj1.__proto__.constructor();
92
- for (const i in b) {
93
- if (JSON.stringify(a[i]) === JSON.stringify(b[i])) {
94
- delete b[i];
95
- } else if (b[i] && !Array.isArray(b[i]) && typeof b[i] == 'object') {
96
- const diff = diffObjs(a[i], b[i], (v) => v);
97
- if (diff !== undefined){
98
- b[i] = diff;
99
- } else {
100
- delete b[i];
101
- };
102
- };
103
- }
104
- return b && Object.keys(b).length ? b : undefined;
105
- }
106
-
107
- module.exports = {
108
- deepClone,
109
- getPointed,
110
- setPointed,
111
- filterObj,
112
- isFileInstance,
113
- isBlobInstance,
114
- isFileOrBlob,
115
- filesInObject,
116
- findPropPaths,
117
- diffObjs
118
- }
package/helpers/slots.js DELETED
@@ -1,9 +0,0 @@
1
- function nameSpacedSlots(slots, scope) {
2
- return Object.keys(slots)
3
- .filter((name) => name.startsWith(scope))
4
- .map((name) => name.replace(scope, ""));
5
- }
6
-
7
- module.exports = {
8
- nameSpacedSlots
9
- }
package/index.js DELETED
@@ -1,13 +0,0 @@
1
- const auth = require('./helpers/auth');
2
- const debounce = require('./helpers/debounce');
3
- const formatters = require('./helpers/formatters');
4
- const objHelpers = require('./helpers/objHelpers');
5
- const VDraggableModals = require('./plugins/v-draggable-modals');
6
-
7
- module.exports = {
8
- auth,
9
- debounce,
10
- formatters,
11
- objHelpers,
12
- VDraggableModals,
13
- }
@@ -1 +0,0 @@
1
- module.exports = function (source, map) { this.callback(null, "export default function (Component) {}", map) }
@@ -1,39 +0,0 @@
1
- module.exports = function () {
2
- const d = {};
3
- document.addEventListener("mousedown", e => {
4
- const closestDialog = e.target.closest(".v-dialog.v-dialog--active");
5
- if (e.button === 0 && closestDialog != null && closestDialog.querySelector(".v-card__title")?.contains(e.target)) {
6
- d.el = closestDialog;
7
- d.mouseStartX = e.clientX;
8
- d.mouseStartY = e.clientY;
9
- d.elStartX = d.el.getBoundingClientRect().left;
10
- d.elStartY = d.el.getBoundingClientRect().top;
11
- d.el.style.position = "fixed";
12
- d.el.style.margin = 0;
13
- d.oldTransition = d.el.style.transition;
14
- d.el.style.transition = "none"
15
- }
16
- });
17
- document.addEventListener("mousemove", e => {
18
- if (d.el === undefined) return;
19
- d.el.style.left = Math.min(
20
- Math.max(d.elStartX + e.clientX - d.mouseStartX, 0),
21
- window.innerWidth - d.el.getBoundingClientRect().width
22
- ) + "px";
23
- d.el.style.top = Math.min(
24
- Math.max(d.elStartY + e.clientY - d.mouseStartY, 0),
25
- window.innerHeight - d.el.getBoundingClientRect().height
26
- ) + "px";
27
- });
28
- document.addEventListener("mouseup", () => {
29
- if (d.el === undefined) return;
30
- d.el.style.transition = d.oldTransition;
31
- d.el = undefined
32
- });
33
- setInterval(() => {
34
- const dialog = document.querySelector(".v-dialog.v-dialog--active");
35
- if (dialog === null) return;
36
- dialog.style.left = Math.min(parseInt(dialog.style.left), window.innerWidth - dialog.getBoundingClientRect().width) + "px";
37
- dialog.style.top = Math.min(parseInt(dialog.style.top), window.innerHeight - dialog.getBoundingClientRect().height) + "px";
38
- }, 100);
39
- }