@amimpact/willy-utils 1.8.2 → 1.8.4

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/dist/form.js CHANGED
@@ -45,20 +45,25 @@ var convertObjectToFormData = function (data, form, namespace) {
45
45
  // Array
46
46
  }
47
47
  else if (model[propertyName] instanceof Array) {
48
- model[propertyName].forEach(function (element, index) {
49
- var tempFormKey = "".concat(formKey, "[").concat(index, "]");
50
- if (element instanceof File) {
51
- formData.append(tempFormKey, element);
52
- }
53
- else {
54
- if (typeof element === 'object') {
55
- (0, exports.convertObjectToFormData)(element, formData, tempFormKey);
48
+ if (model[propertyName].length === 0) {
49
+ formData.append(formKey, '');
50
+ }
51
+ else {
52
+ model[propertyName].forEach(function (element, index) {
53
+ var tempFormKey = "".concat(formKey, "[").concat(index, "]");
54
+ if (element instanceof File) {
55
+ formData.append(tempFormKey, element);
56
56
  }
57
57
  else {
58
- formData.append(tempFormKey, element.toString());
58
+ if (typeof element === 'object') {
59
+ (0, exports.convertObjectToFormData)(element, formData, tempFormKey);
60
+ }
61
+ else {
62
+ formData.append(tempFormKey, element.toString());
63
+ }
59
64
  }
60
- }
61
- });
65
+ });
66
+ }
62
67
  // Object en geen File
63
68
  }
64
69
  else if (typeof model[propertyName] === 'object' &&
package/dist/index.d.ts CHANGED
@@ -3,5 +3,5 @@ import { formatCraftDate, formatDateFromNow, formatNewDate, formatUTCDate, parse
3
3
  import { convertObjectToFormData } from './form';
4
4
  import { bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, downloadFile, getNestedSet, getUrlsFromString, isHoverableDevice, isPlainObject, isTouchDevice, isValidUrl, observeResize, wrap } from './misc';
5
5
  import { $, $$, getParents } from './selectors';
6
- import { isCraftActionUrl, isInternalLink, isExternalUrl, isAsset } from './url';
7
- export { $, $$, bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, createCookie, downloadFile, eraseCookie, formatCraftDate, convertObjectToFormData, formatDateFromNow, formatNewDate, formatUTCDate, getNestedSet, getParents, getUrlsFromString, isAsset, isCraftActionUrl, isExternalUrl, isHoverableDevice, isInternalLink, isPlainObject, isTouchDevice, isValidUrl, observeResize, parseISODuration, readCookie, wrap, };
6
+ import { isCraftActionUrl, isInternalLink, isExternalUrl, isAsset, slugify } from './url';
7
+ export { $, $$, bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, createCookie, downloadFile, eraseCookie, formatCraftDate, convertObjectToFormData, formatDateFromNow, formatNewDate, formatUTCDate, getNestedSet, getParents, getUrlsFromString, isAsset, isCraftActionUrl, isExternalUrl, isHoverableDevice, isInternalLink, isPlainObject, isTouchDevice, isValidUrl, observeResize, parseISODuration, readCookie, slugify, wrap, };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wrap = exports.readCookie = exports.parseISODuration = exports.observeResize = exports.isValidUrl = exports.isTouchDevice = exports.isPlainObject = exports.isInternalLink = exports.isHoverableDevice = exports.isExternalUrl = exports.isCraftActionUrl = exports.isAsset = exports.getUrlsFromString = exports.getParents = exports.getNestedSet = exports.formatUTCDate = exports.formatNewDate = exports.formatDateFromNow = exports.convertObjectToFormData = exports.formatCraftDate = exports.eraseCookie = exports.downloadFile = exports.createCookie = exports.convertHexToRGBA = exports.checkForScrollbars = exports.capitalize = exports.bytesToSize = exports.$$ = exports.$ = void 0;
3
+ exports.wrap = exports.slugify = exports.readCookie = exports.parseISODuration = exports.observeResize = exports.isValidUrl = exports.isTouchDevice = exports.isPlainObject = exports.isInternalLink = exports.isHoverableDevice = exports.isExternalUrl = exports.isCraftActionUrl = exports.isAsset = exports.getUrlsFromString = exports.getParents = exports.getNestedSet = exports.formatUTCDate = exports.formatNewDate = exports.formatDateFromNow = exports.convertObjectToFormData = exports.formatCraftDate = exports.eraseCookie = exports.downloadFile = exports.createCookie = exports.convertHexToRGBA = exports.checkForScrollbars = exports.capitalize = exports.bytesToSize = exports.$$ = exports.$ = void 0;
4
4
  var cookie_1 = require("./cookie");
5
5
  Object.defineProperty(exports, "createCookie", { enumerable: true, get: function () { return cookie_1.createCookie; } });
6
6
  Object.defineProperty(exports, "readCookie", { enumerable: true, get: function () { return cookie_1.readCookie; } });
@@ -36,3 +36,4 @@ Object.defineProperty(exports, "isCraftActionUrl", { enumerable: true, get: func
36
36
  Object.defineProperty(exports, "isInternalLink", { enumerable: true, get: function () { return url_1.isInternalLink; } });
37
37
  Object.defineProperty(exports, "isExternalUrl", { enumerable: true, get: function () { return url_1.isExternalUrl; } });
38
38
  Object.defineProperty(exports, "isAsset", { enumerable: true, get: function () { return url_1.isAsset; } });
39
+ Object.defineProperty(exports, "slugify", { enumerable: true, get: function () { return url_1.slugify; } });
package/dist/url.d.ts CHANGED
@@ -23,3 +23,7 @@ export declare const isPhoneOrEmailLink: (url: string) => boolean;
23
23
  * Checken of url een bestand is, om deze ook in een nieuw venster te openen
24
24
  */
25
25
  export declare const isAsset: (url: string) => boolean;
26
+ /**
27
+ * Maak een slug van een string
28
+ */
29
+ export declare const slugify: (str: string) => string;
package/dist/url.js CHANGED
@@ -9,7 +9,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
9
9
  return to.concat(ar || Array.prototype.slice.call(from));
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.isAsset = exports.isPhoneOrEmailLink = exports.isCraftActionUrl = exports.isExternalUrl = exports.isInternalLink = void 0;
12
+ exports.slugify = exports.isAsset = exports.isPhoneOrEmailLink = exports.isCraftActionUrl = exports.isExternalUrl = exports.isInternalLink = void 0;
13
13
  /**
14
14
  * Bepalen of een link een intern is, zodat bij Vue apps bijv een router-link gemaakt kan worden
15
15
  * https://dennisreimann.de/articles/delegating-html-links-to-vue-router.html
@@ -120,3 +120,15 @@ var isAsset = function (url) {
120
120
  return false;
121
121
  };
122
122
  exports.isAsset = isAsset;
123
+ /**
124
+ * Maak een slug van een string
125
+ */
126
+ var slugify = function (str) {
127
+ return str
128
+ .toLowerCase()
129
+ .trim()
130
+ .replace(/[^\w\s-]/g, '')
131
+ .replace(/[\s_-]+/g, '-')
132
+ .replace(/^-+|-+$/g, '');
133
+ };
134
+ exports.slugify = slugify;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amimpact/willy-utils",
3
- "version": "1.8.2",
3
+ "version": "1.8.4",
4
4
  "description": "Javascript utils",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",