@symbo.ls/utils 2.11.421 → 2.11.429

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.
@@ -342,10 +342,10 @@ var require_array = __commonJS({
342
342
  return [].concat(...arrays);
343
343
  };
344
344
  var mergeArray = (arr, excludeFrom = []) => {
345
- return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepClone)(c, excludeFrom), excludeFrom), {});
345
+ return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepCloneWithExtend)(c, excludeFrom), excludeFrom), {});
346
346
  };
347
347
  var mergeAndCloneIfArray = (obj) => {
348
- return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepClone)(obj);
348
+ return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepCloneWithExtend)(obj);
349
349
  };
350
350
  var cutArrayBeforeValue = (arr, value) => {
351
351
  const index = arr.indexOf(value);
@@ -451,6 +451,8 @@ var require_string = __commonJS({
451
451
  __export2(string_exports, {
452
452
  customDecodeURIComponent: () => customDecodeURIComponent,
453
453
  customEncodeURIComponent: () => customEncodeURIComponent,
454
+ decodeNewlines: () => decodeNewlines,
455
+ encodeNewlines: () => encodeNewlines,
454
456
  findKeyPosition: () => findKeyPosition,
455
457
  lowercaseFirstLetter: () => lowercaseFirstLetter,
456
458
  replaceLiteralsWithObjectFields: () => replaceLiteralsWithObjectFields,
@@ -554,6 +556,12 @@ var require_string = __commonJS({
554
556
  return char;
555
557
  });
556
558
  };
559
+ var encodeNewlines = (str) => {
560
+ return str.split("\n").join("/////n").split("`").join("/////tilde").split("$").join("/////dlrsgn");
561
+ };
562
+ var decodeNewlines = (encodedStr) => {
563
+ return encodedStr.split("/////n").join("\n").split("/////tilde").join("`").split("/////dlrsgn").join("$");
564
+ };
557
565
  var customEncodeURIComponent = (str) => {
558
566
  return str.split("").map((char) => {
559
567
  if (/[^a-zA-Z0-9\s]/.test(char)) {
@@ -986,7 +994,7 @@ var require_object = __commonJS({
986
994
  };
987
995
  var overwriteDeep = (obj, params, excludeFrom = []) => {
988
996
  for (const e in params) {
989
- if (e === "__proto__")
997
+ if (e === "__ref")
990
998
  continue;
991
999
  if (excludeFrom.includes(e) || e.startsWith("__"))
992
1000
  continue;
package/dist/cjs/index.js CHANGED
@@ -342,10 +342,10 @@ var require_array = __commonJS({
342
342
  return [].concat(...arrays);
343
343
  };
344
344
  var mergeArray = (arr, excludeFrom = []) => {
345
- return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepClone)(c, excludeFrom), excludeFrom), {});
345
+ return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepCloneWithExtend)(c, excludeFrom), excludeFrom), {});
346
346
  };
347
347
  var mergeAndCloneIfArray = (obj) => {
348
- return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepClone)(obj);
348
+ return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepCloneWithExtend)(obj);
349
349
  };
350
350
  var cutArrayBeforeValue = (arr, value) => {
351
351
  const index = arr.indexOf(value);
@@ -451,6 +451,8 @@ var require_string = __commonJS({
451
451
  __export2(string_exports, {
452
452
  customDecodeURIComponent: () => customDecodeURIComponent,
453
453
  customEncodeURIComponent: () => customEncodeURIComponent,
454
+ decodeNewlines: () => decodeNewlines,
455
+ encodeNewlines: () => encodeNewlines,
454
456
  findKeyPosition: () => findKeyPosition,
455
457
  lowercaseFirstLetter: () => lowercaseFirstLetter,
456
458
  replaceLiteralsWithObjectFields: () => replaceLiteralsWithObjectFields,
@@ -554,6 +556,12 @@ var require_string = __commonJS({
554
556
  return char;
555
557
  });
556
558
  };
559
+ var encodeNewlines = (str) => {
560
+ return str.split("\n").join("/////n").split("`").join("/////tilde").split("$").join("/////dlrsgn");
561
+ };
562
+ var decodeNewlines = (encodedStr) => {
563
+ return encodedStr.split("/////n").join("\n").split("/////tilde").join("`").split("/////dlrsgn").join("$");
564
+ };
557
565
  var customEncodeURIComponent = (str) => {
558
566
  return str.split("").map((char) => {
559
567
  if (/[^a-zA-Z0-9\s]/.test(char)) {
@@ -986,7 +994,7 @@ var require_object = __commonJS({
986
994
  };
987
995
  var overwriteDeep = (obj, params, excludeFrom = []) => {
988
996
  for (const e in params) {
989
- if (e === "__proto__")
997
+ if (e === "__ref")
990
998
  continue;
991
999
  if (excludeFrom.includes(e) || e.startsWith("__"))
992
1000
  continue;
@@ -1522,6 +1530,7 @@ var require_cjs = __commonJS({
1522
1530
  var src_exports = {};
1523
1531
  __export(src_exports, {
1524
1532
  arrayzeValue: () => arrayzeValue,
1533
+ copyJavaScriptToClipboard: () => copyJavaScriptToClipboard,
1525
1534
  copyStringToClipboard: () => copyStringToClipboard,
1526
1535
  fibonacciNumberByIndex: () => fibonacciNumberByIndex,
1527
1536
  findClosestNumber: () => findClosestNumber,
@@ -1663,15 +1672,22 @@ var loadJavascript = (body, async = false, doc = document, type = "text/javascri
1663
1672
  var isPhoto = (format) => ["jpeg", "gif", "jpg", "png", "tiff", "woff"].includes(format);
1664
1673
 
1665
1674
  // src/index.js
1666
- var copyStringToClipboard = (str) => {
1667
- const el = document.createElement("textarea");
1668
- el.value = str;
1669
- el.setAttribute("readonly", "");
1670
- el.style = { position: "absolute", left: "-9999px" };
1671
- document.body.appendChild(el);
1672
- el.select();
1673
- document.execCommand("copy");
1674
- document.body.removeChild(el);
1675
+ var copyStringToClipboard = async (str) => {
1676
+ try {
1677
+ await navigator.clipboard.writeText(str);
1678
+ } catch (err) {
1679
+ console.warn("Failed to copy text: ", err);
1680
+ }
1681
+ };
1682
+ var copyJavaScriptToClipboard = async (jsCode) => {
1683
+ try {
1684
+ const blob = new Blob([jsCode], { type: "text/javascript" });
1685
+ const clipboardItem = new window.ClipboardItem({ "text/plain": blob });
1686
+ await navigator.clipboard.write([clipboardItem]);
1687
+ console.log("JavaScript code copied to clipboard as text/javascript");
1688
+ } catch (err) {
1689
+ console.error("Failed to copy JavaScript code: ", err);
1690
+ }
1675
1691
  };
1676
1692
  var removeChars = (str) => {
1677
1693
  return str.replace(/[^a-zA-Z0-9_]/g, "");
@@ -342,10 +342,10 @@ var require_array = __commonJS({
342
342
  return [].concat(...arrays);
343
343
  };
344
344
  var mergeArray = (arr, excludeFrom = []) => {
345
- return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepClone)(c, excludeFrom), excludeFrom), {});
345
+ return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepCloneWithExtend)(c, excludeFrom), excludeFrom), {});
346
346
  };
347
347
  var mergeAndCloneIfArray = (obj) => {
348
- return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepClone)(obj);
348
+ return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepCloneWithExtend)(obj);
349
349
  };
350
350
  var cutArrayBeforeValue = (arr, value) => {
351
351
  const index = arr.indexOf(value);
@@ -451,6 +451,8 @@ var require_string = __commonJS({
451
451
  __export2(string_exports, {
452
452
  customDecodeURIComponent: () => customDecodeURIComponent,
453
453
  customEncodeURIComponent: () => customEncodeURIComponent,
454
+ decodeNewlines: () => decodeNewlines,
455
+ encodeNewlines: () => encodeNewlines,
454
456
  findKeyPosition: () => findKeyPosition,
455
457
  lowercaseFirstLetter: () => lowercaseFirstLetter,
456
458
  replaceLiteralsWithObjectFields: () => replaceLiteralsWithObjectFields,
@@ -554,6 +556,12 @@ var require_string = __commonJS({
554
556
  return char;
555
557
  });
556
558
  };
559
+ var encodeNewlines = (str) => {
560
+ return str.split("\n").join("/////n").split("`").join("/////tilde").split("$").join("/////dlrsgn");
561
+ };
562
+ var decodeNewlines = (encodedStr) => {
563
+ return encodedStr.split("/////n").join("\n").split("/////tilde").join("`").split("/////dlrsgn").join("$");
564
+ };
557
565
  var customEncodeURIComponent = (str) => {
558
566
  return str.split("").map((char) => {
559
567
  if (/[^a-zA-Z0-9\s]/.test(char)) {
@@ -986,7 +994,7 @@ var require_object = __commonJS({
986
994
  };
987
995
  var overwriteDeep = (obj, params, excludeFrom = []) => {
988
996
  for (const e in params) {
989
- if (e === "__proto__")
997
+ if (e === "__ref")
990
998
  continue;
991
999
  if (excludeFrom.includes(e) || e.startsWith("__"))
992
1000
  continue;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symbo.ls/utils",
3
- "version": "2.11.421",
3
+ "version": "2.11.429",
4
4
  "author": "symbo.ls",
5
5
  "files": [
6
6
  "src",
@@ -26,5 +26,5 @@
26
26
  "dependencies": {
27
27
  "@domql/utils": "latest"
28
28
  },
29
- "gitHead": "c8c0374c888db13ddd96d6602f441ab80f13c203"
29
+ "gitHead": "ff81d19b0ad978bbba24590f269a7bdbb6799798"
30
30
  }
package/src/index.js CHANGED
@@ -9,15 +9,29 @@ export * from './fibonacci'
9
9
  export * from './load'
10
10
  export * from './files'
11
11
 
12
- export const copyStringToClipboard = str => {
13
- const el = document.createElement('textarea')
14
- el.value = str
15
- el.setAttribute('readonly', '')
16
- el.style = { position: 'absolute', left: '-9999px' }
17
- document.body.appendChild(el)
18
- el.select()
19
- document.execCommand('copy')
20
- document.body.removeChild(el)
12
+ export const copyStringToClipboard = async (str) => {
13
+ try {
14
+ await navigator.clipboard.writeText(str)
15
+ } catch (err) {
16
+ console.warn('Failed to copy text: ', err)
17
+ }
18
+ }
19
+
20
+ export const copyJavaScriptToClipboard = async (jsCode) => {
21
+ try {
22
+ // Create a Blob for the JavaScript code with the 'text/javascript' MIME type
23
+ const blob = new Blob([jsCode], { type: 'text/javascript' })
24
+
25
+ // Create a ClipboardItem with the 'text/javascript' Blob
26
+ const clipboardItem = new window.ClipboardItem({ 'text/plain': blob })
27
+
28
+ // Copy the ClipboardItem to the clipboard
29
+ await navigator.clipboard.write([clipboardItem])
30
+
31
+ console.log('JavaScript code copied to clipboard as text/javascript')
32
+ } catch (err) {
33
+ console.error('Failed to copy JavaScript code: ', err)
34
+ }
21
35
  }
22
36
 
23
37
  export const removeChars = str => {