@leonabcd123/modern-caps-lock 2.2.0 → 2.2.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.
package/lib/index.js CHANGED
@@ -13,20 +13,28 @@ function getCurrentOs() {
13
13
  if (isPlatform("Linux")) {
14
14
  return "Linux";
15
15
  }
16
- if (isPlatform("Windows")) {
16
+ if (isPlatform("Win")) {
17
17
  return "Windows";
18
18
  }
19
19
  return "Unknown";
20
20
  }
21
+ let previousCapsState = false;
21
22
  let capsState = false;
22
23
  const os = getCurrentOs();
23
24
  let onCapsChangeCallback;
25
+ function shouldCallCallback() {
26
+ let callCallback = previousCapsState !== capsState;
27
+ previousCapsState = capsState;
28
+ return callCallback;
29
+ }
24
30
  function getCapsLockModifierState(event) {
25
31
  return event.getModifierState("CapsLock");
26
32
  }
27
33
  document.addEventListener("mousedown", (event) => {
28
34
  capsState = getCapsLockModifierState(event);
29
- onCapsChangeCallback(capsState);
35
+ if (shouldCallCallback()) {
36
+ onCapsChangeCallback(capsState);
37
+ }
30
38
  });
31
39
  document.addEventListener("keyup", (event) => {
32
40
  if (os === "Mac") {
@@ -45,13 +53,17 @@ document.addEventListener("keyup", (event) => {
45
53
  else if (event.key !== "CapsLock") {
46
54
  capsState = getCapsLockModifierState(event);
47
55
  }
48
- onCapsChangeCallback(capsState);
56
+ if (shouldCallCallback()) {
57
+ onCapsChangeCallback(capsState);
58
+ }
49
59
  });
50
60
  document.addEventListener("keydown", (event) => {
51
61
  if (os === "Mac") {
52
62
  if (event.key === "CapsLock") {
53
63
  capsState = true;
54
- onCapsChangeCallback(capsState);
64
+ if (shouldCallCallback()) {
65
+ onCapsChangeCallback(capsState);
66
+ }
55
67
  }
56
68
  }
57
69
  else if (os === "Linux") {
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAuEA,oCAEC;AAED,4CAEC;AA7ED,SAAS,UAAU,CAAC,UAAkB;IACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;IACpC,OAAO,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,YAAY;IACnB,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,IAAI,SAAS,GAAG,KAAK,CAAC;AACtB,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC;AAC1B,IAAI,oBAAkD,CAAC;AAEvD,SAAS,wBAAwB,CAAC,KAAiC;IACjE,OAAO,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAC5C,CAAC;AAED,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;IAE/C,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC5C,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;IAC3C,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QAEjB,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAC7B,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;aAAM,CAAC;YAGN,IAAI,SAAS,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC;gBAClC,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QAE5B,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;SAAM,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;QAEpC,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IACD,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;IAC7C,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QAEjB,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAC7B,SAAS,GAAG,IAAI,CAAC;YACjB,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;SAAM,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;QAI1B,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAC7B,SAAS,GAAG,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,SAAgB,YAAY;IAC1B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,gBAAgB,CAAC,QAAsC;IACrE,oBAAoB,GAAG,QAAQ,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leonabcd123/modern-caps-lock",
3
- "version": "2.2.0",
3
+ "version": "2.2.2",
4
4
  "description": "A package that allows you to know whether caps lock is active or not",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",