@apple-pie/slice 0.1.3 → 0.1.5

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 (126) hide show
  1. package/README.md +47 -77
  2. package/dist/cjs/chunks/{Button-hg5kGC1P.js → Button-Ck4syxwn.js} +4 -2
  3. package/dist/cjs/chunks/{ButtonBar-C9Nm9faU.js → ButtonBar-Cx9Xwddh.js} +1 -1
  4. package/dist/cjs/chunks/{Camera-Dx_PT3pS.js → Camera-BrLRwcw1.js} +1 -1
  5. package/dist/cjs/chunks/{Card-AgEMKJ4O.js → Card-CYDP4vAN.js} +1 -1
  6. package/dist/cjs/chunks/{CheckBox-CLMxlUff.js → CheckBox-DYG1fNWy.js} +1 -1
  7. package/dist/cjs/chunks/{Chip-CIy_Xe3i.js → Chip-CqOwsrmt.js} +1 -1
  8. package/dist/cjs/chunks/{DropDown-FZb52YxR.js → DropDown-Bo0bxkFk.js} +1 -1
  9. package/dist/cjs/chunks/{FileList-BQgcnKPP.js → FileList-bA8PoGOh.js} +1 -1
  10. package/dist/cjs/chunks/{Grouper-Bgc1wrQM.js → Grouper-BszVihfB.js} +1 -1
  11. package/dist/cjs/chunks/{IconButton-CBWmUZxR.js → IconButton-yWq-C437.js} +1 -1
  12. package/dist/cjs/chunks/{ProgressIndicator-qjya_Yb5.js → ProgressIndicator-Dvq4eIWW.js} +1 -1
  13. package/dist/cjs/chunks/{PromptInput-ZqHQUfXw.js → PromptInput-Hgh6995X.js} +1 -1
  14. package/dist/cjs/chunks/{RadioButton-Ce9uf54a.js → RadioButton-Cu-laBV5.js} +1 -1
  15. package/dist/cjs/chunks/{RadioButtonList-dhPr-Uhs.js → RadioButtonList-COS7jfsC.js} +1 -1
  16. package/dist/cjs/chunks/SSEConnection-B_yE8cXz.js +140 -0
  17. package/dist/cjs/chunks/{Slider-CrjpZooG.js → Slider-BeXrWjVx.js} +36 -36
  18. package/dist/cjs/chunks/{TabBar-DuwypMB6.js → TabBar-DCRr3l9L.js} +1 -1
  19. package/dist/cjs/chunks/{TextArea-BhzVGfKA.js → TextArea-DM0aHGGt.js} +1 -1
  20. package/dist/cjs/chunks/{TextField-hIjxrOG9.js → TextField-DQgpDpR1.js} +18 -16
  21. package/dist/cjs/chunks/{Toast-DMUM1wuL.js → Toast-D-Y1Ytnb.js} +1 -1
  22. package/dist/cjs/chunks/{UploadArea-B4GA06LW.js → UploadArea-Y_B35qjZ.js} +1 -1
  23. package/dist/cjs/chunks/WSConnection-DCBuJGmb.js +206 -0
  24. package/dist/cjs/chunks/{_types-C_zOsCbB.js → _types-NyUTfBLR.js} +25 -7
  25. package/dist/cjs/chunks/{sseStore-Dg0WuXsI.js → sseStore-CIIeshjm.js} +3 -3
  26. package/dist/cjs/chunks/windowStore-CCxCOUqa.js +156 -0
  27. package/dist/cjs/components/Button/index.js +3 -3
  28. package/dist/cjs/components/ButtonBar/index.js +3 -3
  29. package/dist/cjs/components/Camera/index.js +2 -2
  30. package/dist/cjs/components/Card/index.js +2 -2
  31. package/dist/cjs/components/CheckBox/index.js +2 -2
  32. package/dist/cjs/components/Chip/index.js +2 -2
  33. package/dist/cjs/components/DropDown/index.js +2 -2
  34. package/dist/cjs/components/FileList/index.js +3 -3
  35. package/dist/cjs/components/Grouper/index.js +2 -2
  36. package/dist/cjs/components/Icon/index.js +1 -1
  37. package/dist/cjs/components/IconButton/index.js +2 -2
  38. package/dist/cjs/components/Progress/index.js +2 -2
  39. package/dist/cjs/components/PromptInput/index.js +5 -5
  40. package/dist/cjs/components/RadioButton/index.js +2 -2
  41. package/dist/cjs/components/RadioButtonList/index.js +3 -3
  42. package/dist/cjs/components/Slider/index.js +1 -1
  43. package/dist/cjs/components/TabBar/index.js +3 -3
  44. package/dist/cjs/components/TextArea/index.js +4 -4
  45. package/dist/cjs/components/Textfield/index.js +5 -5
  46. package/dist/cjs/components/Toast/index.js +2 -2
  47. package/dist/cjs/components/UploadArea/index.js +4 -4
  48. package/dist/cjs/hooks/useWindow.js +46 -11
  49. package/dist/cjs/index.js +2 -2
  50. package/dist/cjs/stores/SSE.js +2 -2
  51. package/dist/cjs/stores/WS.js +62 -0
  52. package/dist/cjs/stores/window.js +14 -3
  53. package/dist/cjs/stores.js +15 -4
  54. package/dist/cjs/utils/index.js +2 -2
  55. package/dist/cjs/utils/objects/index.js +4 -138
  56. package/dist/esm/chunks/{Button-DJDS7Yad.mjs → Button-DexmN81C.mjs} +5 -3
  57. package/dist/esm/chunks/{ButtonBar-DIsqJmrS.mjs → ButtonBar-C-LwBxlY.mjs} +1 -1
  58. package/dist/esm/chunks/{Camera-BvJJ5cd-.mjs → Camera-DdUBZi52.mjs} +1 -1
  59. package/dist/esm/chunks/{Card-DjHdCav5.mjs → Card-DUfnTA5v.mjs} +1 -1
  60. package/dist/esm/chunks/{CheckBox-C1LPehvl.mjs → CheckBox-Bnd3UAt0.mjs} +1 -1
  61. package/dist/esm/chunks/{Chip-ByaaWpFx.mjs → Chip-BJS4oJBL.mjs} +1 -1
  62. package/dist/esm/chunks/{DropDown-CM01mO_W.mjs → DropDown-CbX16ETP.mjs} +1 -1
  63. package/dist/esm/chunks/{FileList-CmlXqPXl.mjs → FileList-E5uvcN2J.mjs} +2 -2
  64. package/dist/esm/chunks/{Grouper-DNmAYWdR.mjs → Grouper-X9OursiT.mjs} +1 -1
  65. package/dist/esm/chunks/{IconButton-C8RBNFzh.mjs → IconButton-B5WEf-v5.mjs} +1 -1
  66. package/dist/esm/chunks/{ProgressIndicator-h11R3FG1.mjs → ProgressIndicator-DeLwB3Rb.mjs} +1 -1
  67. package/dist/esm/chunks/{PromptInput-DSHVUuEf.mjs → PromptInput-BdMotrXA.mjs} +2 -2
  68. package/dist/esm/chunks/{RadioButton-_lo_FJ8g.mjs → RadioButton-D6kP8p0n.mjs} +1 -1
  69. package/dist/esm/chunks/{RadioButtonList-CLHJxrI_.mjs → RadioButtonList-guQECpwi.mjs} +1 -1
  70. package/dist/esm/chunks/SSEConnection-Dj9P0SWE.mjs +140 -0
  71. package/dist/esm/chunks/{Slider-Bih21QiT.mjs → Slider-ZuSvETfo.mjs} +37 -37
  72. package/dist/esm/chunks/{TabBar-CDDzA_m1.mjs → TabBar-BYtGaj_A.mjs} +2 -2
  73. package/dist/esm/chunks/{TextArea-CyVBzMoN.mjs → TextArea-D88dZrXm.mjs} +1 -1
  74. package/dist/esm/chunks/{TextField-CYI2vbvO.mjs → TextField-DvTB_JoS.mjs} +20 -18
  75. package/dist/esm/chunks/{Toast-ovxR12_-.mjs → Toast-BdlopzJ6.mjs} +1 -1
  76. package/dist/esm/chunks/{UploadArea-Kez3VD4d.mjs → UploadArea--i-bbRIJ.mjs} +3 -3
  77. package/dist/esm/chunks/WSConnection-DlYSitff.mjs +206 -0
  78. package/dist/esm/chunks/{_types-CTmvSEX0.mjs → _types-C8GP_aSD.mjs} +20 -2
  79. package/dist/esm/chunks/{sseStore-m3IPyLwJ.mjs → sseStore-DdqmnAAf.mjs} +2 -2
  80. package/dist/esm/chunks/windowStore-BOTh1g37.mjs +148 -0
  81. package/dist/esm/components/Button/index.mjs +3 -3
  82. package/dist/esm/components/ButtonBar/index.mjs +3 -3
  83. package/dist/esm/components/Camera/index.mjs +2 -2
  84. package/dist/esm/components/Card/index.mjs +2 -2
  85. package/dist/esm/components/CheckBox/index.mjs +2 -2
  86. package/dist/esm/components/Chip/index.mjs +2 -2
  87. package/dist/esm/components/DropDown/index.mjs +2 -2
  88. package/dist/esm/components/FileList/index.mjs +3 -3
  89. package/dist/esm/components/Grouper/index.mjs +2 -2
  90. package/dist/esm/components/Icon/index.mjs +1 -1
  91. package/dist/esm/components/IconButton/index.mjs +2 -2
  92. package/dist/esm/components/Progress/index.mjs +2 -2
  93. package/dist/esm/components/PromptInput/index.mjs +5 -5
  94. package/dist/esm/components/RadioButton/index.mjs +2 -2
  95. package/dist/esm/components/RadioButtonList/index.mjs +3 -3
  96. package/dist/esm/components/Slider/index.mjs +1 -1
  97. package/dist/esm/components/TabBar/index.mjs +3 -3
  98. package/dist/esm/components/TextArea/index.mjs +4 -4
  99. package/dist/esm/components/Textfield/index.mjs +5 -5
  100. package/dist/esm/components/Toast/index.mjs +2 -2
  101. package/dist/esm/components/UploadArea/index.mjs +4 -4
  102. package/dist/esm/hooks/useWindow.mjs +47 -11
  103. package/dist/esm/index.mjs +21 -21
  104. package/dist/esm/stores/SSE.mjs +2 -2
  105. package/dist/esm/stores/WS.mjs +59 -0
  106. package/dist/esm/stores/window.mjs +3 -1
  107. package/dist/esm/stores.mjs +5 -5
  108. package/dist/esm/utils/index.mjs +3 -1
  109. package/dist/esm/utils/objects/index.mjs +4 -139
  110. package/dist/types/components/Icon/_types.d.ts +1 -0
  111. package/dist/types/components/Slider/_types.d.ts +0 -2
  112. package/dist/types/hooks/index.d.ts +1 -1
  113. package/dist/types/hooks/useWindow/useWindow.d.ts +19 -0
  114. package/dist/types/index.d.ts +1 -1
  115. package/dist/types/stores/WS/_types.d.ts +17 -0
  116. package/dist/types/stores/WS/index.d.ts +2 -0
  117. package/dist/types/stores/WS/wsStore.d.ts +19 -0
  118. package/dist/types/stores/window/_types.d.ts +5 -0
  119. package/dist/types/stores/window/index.d.ts +3 -2
  120. package/dist/types/stores/window/windowStore.d.ts +8 -0
  121. package/dist/types/utils/index.d.ts +2 -2
  122. package/dist/types/utils/objects/WSConnection/WSConnection.d.ts +147 -0
  123. package/dist/types/utils/objects/index.d.ts +2 -0
  124. package/package.json +1 -1
  125. package/dist/cjs/chunks/windowStore-RaJswiHM.js +0 -70
  126. package/dist/esm/chunks/windowStore-CwW0i_le.mjs +0 -71
@@ -10,7 +10,7 @@ import "../theme/colors.mjs";
10
10
 
11
11
  import "../hooks/useWindow.mjs";
12
12
 
13
- import { I as IconButton } from "./IconButton-C8RBNFzh.mjs";
13
+ import { I as IconButton } from "./IconButton-B5WEf-v5.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -16,7 +16,7 @@ import { a as addOpacity } from "./colors-DR9fLI5X.mjs";
16
16
 
17
17
  import { A as Avatar } from "./Avatar-CDMV6f9w.mjs";
18
18
 
19
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
19
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
20
20
 
21
21
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
22
22
 
@@ -4,7 +4,7 @@ import { jsxs, jsx } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useCallback, useMemo } from "react";
6
6
 
7
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
7
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
8
8
 
9
9
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
10
10
 
@@ -12,7 +12,7 @@ import "../theme/colors.mjs";
12
12
 
13
13
  import "../hooks/useWindow.mjs";
14
14
 
15
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
15
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
16
16
 
17
17
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
18
18
 
@@ -10,7 +10,7 @@ import "../theme/colors.mjs";
10
10
 
11
11
  import "../hooks/useWindow.mjs";
12
12
 
13
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
13
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
14
14
 
15
15
  import { T as ToolTipType } from "./sharedTypes-tn9-uJvb.mjs";
16
16
 
@@ -10,7 +10,7 @@ import "../theme/colors.mjs";
10
10
 
11
11
  import "../hooks/useWindow.mjs";
12
12
 
13
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
13
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -8,9 +8,9 @@ import { s as setStyle, a as accessibleKeyDown } from "./misc-cg9I7drO.mjs";
8
8
 
9
9
  import { F as FileIcon } from "./FileIcon-CC_k5dUW.mjs";
10
10
 
11
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
11
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
12
12
 
13
- import { P as ProgressIndicator } from "./ProgressIndicator-h11R3FG1.mjs";
13
+ import { P as ProgressIndicator } from "./ProgressIndicator-DeLwB3Rb.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -14,7 +14,7 @@ import "../hooks/useWindow.mjs";
14
14
 
15
15
  import { B as Badge } from "./Badge-DyICxZP2.mjs";
16
16
 
17
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
17
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
18
18
 
19
19
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
20
20
 
@@ -10,7 +10,7 @@ import { B as Badge } from "./Badge-DyICxZP2.mjs";
10
10
 
11
11
  import { D as Dot } from "./Dot-CLGwQu-i.mjs";
12
12
 
13
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
13
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
14
14
 
15
15
  import { T as ToolTipType } from "./sharedTypes-tn9-uJvb.mjs";
16
16
 
@@ -10,7 +10,7 @@ import "../hooks/useWindow.mjs";
10
10
 
11
11
  import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
12
12
 
13
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
13
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -8,9 +8,9 @@ import "../theme/colors.mjs";
8
8
 
9
9
  import "../hooks/useWindow.mjs";
10
10
 
11
- import { B as Button } from "./Button-DJDS7Yad.mjs";
11
+ import { B as Button } from "./Button-DexmN81C.mjs";
12
12
 
13
- import { F as FileList } from "./FileList-CmlXqPXl.mjs";
13
+ import { F as FileList } from "./FileList-E5uvcN2J.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -6,7 +6,7 @@ import React, { useState, useEffect, useCallback, useMemo } from "react";
6
6
 
7
7
  import { s as setStyle } from "./misc-cg9I7drO.mjs";
8
8
 
9
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
9
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
10
10
 
11
11
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
12
12
 
@@ -4,7 +4,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useState, useEffect, useCallback, useMemo } from "react";
6
6
 
7
- import { R as RadioButton } from "./RadioButton-_lo_FJ8g.mjs";
7
+ import { R as RadioButton } from "./RadioButton-D6kP8p0n.mjs";
8
8
 
9
9
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
10
10
 
@@ -0,0 +1,140 @@
1
+ class SSEConnection {
2
+ /**
3
+ * Whether the underlying EventSource is currently open.
4
+ */
5
+ get connected() {
6
+ var _a;
7
+ return (null === (_a = this.sseConnection) || void 0 === _a ? void 0 : _a.readyState) === EventSource.OPEN;
8
+ }
9
+ /**
10
+ * Direct access to the underlying EventSource instance.
11
+ */ get connection() {
12
+ return this.sseConnection;
13
+ }
14
+ /**
15
+ * Create an SEE connection instance
16
+ */ constructor(options) {
17
+ var _a, _b, _c;
18
+ this.sseConnection = null, this.customEventHandlers = new Map, this.unifiedOnMessage = !1,
19
+ /**
20
+ * One message received
21
+ */
22
+ this.onMessage = event => {
23
+ const data = this.parseEventData(event.data);
24
+ this.emitUnifiedMessage({
25
+ type: "message",
26
+ data: data,
27
+ event: event
28
+ }), this.emitParsedMessage(data), this.shouldCloseFromMessage(event.data, data) && this.closeFromConnectionEvent();
29
+ },
30
+ /**
31
+ * On error event
32
+ */
33
+ this.onError = event => {
34
+ var _a;
35
+ null === (_a = this.onErrorCallback) || void 0 === _a || _a.call(this, event), this.emitUnifiedMessage({
36
+ type: "error",
37
+ event: event
38
+ });
39
+ },
40
+ /**
41
+ * On open event
42
+ */
43
+ this.onOpen = event => {
44
+ var _a;
45
+ null === (_a = this.onOpenCallback) || void 0 === _a || _a.call(this, event), this.emitUnifiedMessage({
46
+ type: "open",
47
+ event: event
48
+ });
49
+ },
50
+ /**
51
+ * Close the SSE connection and release resources.
52
+ */
53
+ this.close = () => {
54
+ this.sseConnection && (this.detachAllEventListeners(this.sseConnection), this.sseConnection.close(),
55
+ this.sseConnection = null);
56
+ }, this.url = null !== (_a = null == options ? void 0 : options.url) && void 0 !== _a ? _a : "",
57
+ this.options = null !== (_b = null == options ? void 0 : options.options) && void 0 !== _b ? _b : void 0,
58
+ this.unifiedOnMessage = null !== (_c = null == options ? void 0 : options.unifiedOnMessage) && void 0 !== _c && _c,
59
+ this.onMessageCallback = null == options ? void 0 : options.onMessageCallback, this.onErrorCallback = null == options ? void 0 : options.onErrorCallback,
60
+ this.onOpenCallback = null == options ? void 0 : options.onOpenCallback, this.onCloseCallback = null == options ? void 0 : options.onCloseCallback,
61
+ this.connectionClose = null == options ? void 0 : options.connectionClose, (null == options ? void 0 : options.customEvents) ? this.customEvents = Array.isArray(null == options ? void 0 : options.customEvents) ? options.customEvents : [ options.customEvents ] : this.customEvents = [],
62
+ this.sseConnection = new EventSource(this.url, this.options), this.attachDefaultEventListeners(this.sseConnection),
63
+ this.customEvents.length > 0 && this.attachCustomEventListeners(this.customEvents);
64
+ }
65
+ /**
66
+ * Safely parse SSE event data. Falls back to the raw string when the payload is not JSON.
67
+ */ parseEventData(rawData) {
68
+ try {
69
+ return JSON.parse(rawData);
70
+ } catch (_a) {
71
+ return rawData;
72
+ }
73
+ }
74
+ /**
75
+ * Attach default SEE events
76
+ */ attachDefaultEventListeners(connection) {
77
+ connection.addEventListener("message", this.onMessage), connection.addEventListener("error", this.onError),
78
+ connection.addEventListener("open", this.onOpen);
79
+ }
80
+ emitParsedMessage(data) {
81
+ var _a;
82
+ this.unifiedOnMessage || null === (_a = this.onMessageCallback) || void 0 === _a || _a.call(this, data);
83
+ }
84
+ emitUnifiedMessage(message) {
85
+ var _a;
86
+ this.unifiedOnMessage && (null === (_a = this.onMessageCallback) || void 0 === _a || _a.call(this, message));
87
+ }
88
+ emitCloseEvent(event) {
89
+ var _a;
90
+ null === (_a = this.onCloseCallback) || void 0 === _a || _a.call(this, event), this.emitUnifiedMessage({
91
+ type: "close",
92
+ event: event
93
+ });
94
+ }
95
+ closeFromConnectionEvent() {
96
+ const closeEvent = new Event("close");
97
+ this.emitCloseEvent(closeEvent), this.close();
98
+ }
99
+ shouldCloseFromMessage(rawData, data) {
100
+ var _a;
101
+ return !!(null === (_a = this.connectionClose) || void 0 === _a ? void 0 : _a.message) && (rawData === this.connectionClose.message || data === this.connectionClose.message);
102
+ }
103
+ emitUnifiedCustomMessage(customEvent, data, event) {
104
+ this.emitUnifiedMessage({
105
+ type: customEvent.name,
106
+ data: data,
107
+ event: event
108
+ });
109
+ }
110
+ /**
111
+ * Attach custom event listeners to the SSE connection
112
+ */ attachCustomEventListener(customEvent) {
113
+ var _a;
114
+ if (!this.sseConnection) return;
115
+ const handler = eventInfo => {
116
+ var _a, _b;
117
+ const data = this.parseEventData(eventInfo.data);
118
+ null === (_a = customEvent.handler) || void 0 === _a || _a.call(customEvent, data),
119
+ this.emitUnifiedCustomMessage(customEvent, data, eventInfo), (null === (_b = this.connectionClose) || void 0 === _b ? void 0 : _b.event) === customEvent.name && this.closeFromConnectionEvent();
120
+ }, currentHandlers = null !== (_a = this.customEventHandlers.get(customEvent.name)) && void 0 !== _a ? _a : [];
121
+ currentHandlers.push(handler), this.customEventHandlers.set(customEvent.name, currentHandlers),
122
+ this.sseConnection.addEventListener(customEvent.name, handler);
123
+ }
124
+ /**
125
+ * Attach custom event listeners to the SSE connection
126
+ */ attachCustomEventListeners(customEvents) {
127
+ const events = Array.isArray(customEvents) ? customEvents : [ customEvents ];
128
+ for (const event of events) this.attachCustomEventListener(event);
129
+ }
130
+ /**
131
+ * Clean up listeners
132
+ */ detachAllEventListeners(connection) {
133
+ connection.removeEventListener("message", this.onMessage), connection.removeEventListener("error", this.onError),
134
+ connection.removeEventListener("open", this.onOpen);
135
+ for (const [eventName, handlers] of this.customEventHandlers.entries()) for (const handler of handlers) connection.removeEventListener(eventName, handler);
136
+ this.customEventHandlers.clear();
137
+ }
138
+ }
139
+
140
+ export { SSEConnection as S };
@@ -1,6 +1,6 @@
1
1
  import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
2
2
 
3
- import { jsx } from "react/jsx-runtime";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useRef, useMemo, useCallback, useEffect } from "react";
6
6
 
@@ -13,12 +13,12 @@ import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
13
13
  /**
14
14
  * General debounce utility with delay setting and cancel/flush methods
15
15
  * to clear a "debounce" or immediately "execute" the debounced function
16
- */ var css_wrapper = "Slider-module_wrapper__KCCs1", css_track = "Slider-module_track__kaJkL flexBox-module_rowStart__4tcxS", css_trackHead = "Slider-module_trackHead__W-UdG", css_trackBg = "Slider-module_trackBg__7zfqm flexBox-module_rowStart__4tcxS";
16
+ */ var css_wrapper = "Slider-module_wrapper__KCCs1", css_trackBg = "Slider-module_trackBg__7zfqm flexBox-module_rowStart__4tcxS", css_track = "Slider-module_track__kaJkL flexBox-module_rowStart__4tcxS", css_trackHead = "Slider-module_trackHead__W-UdG", css_trackWrapper = "Slider-module_trackWrapper__Ot0Wh flexBox-module_rowStart__4tcxS";
17
17
 
18
- styleInject(".flexBox-module_row__z24tF {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__5FEvi {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__4tcxS {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__rVdVm {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__ezvMq {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__C7P44 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__PKcrG {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__ERfp7 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__lLJuc {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.Slider-module_wrapper__KCCs1 {\n\tposition: relative;\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: var(--slider-padding);\n\tmargin: 0;\n\twidth: var(--slider-width);\n\theight: var(--slider-height);\n\tmin-height: var(--slider-touch-height);\n\tcursor: var(--slider-cursor);\n}\n\n.Slider-module_track__kaJkL {\n\tposition: relative;\n\twidth: 0;\n\theight: 100%;\n\tbackground-color: var(--slider-progress-color);\n\toverflow: visible;\n\tpointer-events: none;\n\tborder-radius: 100px;\n}\n\n.Slider-module_trackHead__W-UdG {\n\tposition: absolute;\n\tdisplay: var(--slider-head-display);\n\tbackground-color: var(--slider-head-color);\n\tpointer-events: none;\n\tborder-radius: var(--slider-head-radius);\n\tmax-width: var(--slider-head-width);\n\tmax-height: var(--slider-head-size);\n\tmin-width: var(--slider-head-width);\n\tmin-height: var(--slider-head-size);\n\ttop: 50%;\n\ttransform: translateY(-50%) translateX(-50%);\n}\n\n.Slider-module_trackBg__7zfqm {\n\twidth: 100%;\n\theight: var(--slider-height);\n\tbackground-color: var(--slider-track-color);\n\tpointer-events: none;\n\tborder-radius: 100px;\n}\n");
18
+ styleInject(".flexBox-module_row__z24tF {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__5FEvi {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__4tcxS {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__rVdVm {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__ezvMq {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__C7P44 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__PKcrG {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__ERfp7 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__lLJuc {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.Slider-module_wrapper__KCCs1 {\n\tposition: relative;\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0 var(--slider-padding);\n\tmargin: 0;\n\twidth: var(--slider-width);\n\theight: auto;\n\tmin-height: var(--slider-touch-height);\n\tcursor: var(--slider-cursor);\n\tbackground: transparent;\n}\n\n.Slider-module_trackBg__7zfqm {\n\tposition: relative;\n\twidth: 100%;\n\theight: var(--slider-height);\n\tbackground-color: var(--slider-track-color);\n\toverflow: visible;\n\tborder-radius: 100px;\n}\n\n.Slider-module_track__kaJkL {\n\tposition: relative;\n\twidth: 0;\n\theight: var(--slider-height);\n\tbackground-color: var(--slider-progress-color);\n\toverflow: visible;\n\tborder-radius: 100px;\n}\n\n.Slider-module_trackHead__W-UdG {\n\tposition: absolute;\n\tdisplay: var(--slider-head-display);\n\tbackground-color: var(--slider-head-color);\n\tborder-radius: var(--slider-head-radius);\n\tmax-width: var(--slider-head-width);\n\tmax-height: var(--slider-head-size);\n\tmin-width: var(--slider-head-width);\n\tmin-height: var(--slider-head-size);\n\ttop: 50%;\n\ttransform: translateY(-50%) translateX(-50%);\n}\n\n.Slider-module_trackWrapper__Ot0Wh {\n\tposition: relative;\n\twidth: 100%;\n\theight: var(--slider-height);\n\tmin-height: var(--slider-touch-height);\n\tbackground-color: transparent;\n\tborder-radius: 100px;\n\toverflow: visible;\n}\n");
19
19
 
20
20
  const Slider = React.memo(props => {
21
- const {value: value = 25, scaleMin: scaleMin = 0, scaleMax: scaleMax = 100, width: width, height: height = 2, touchHeight: touchHeight = 24, trackHeadSize: trackHeadSize = 7, headType: headType = "round", trackHeadWidth: trackHeadWidth = 4, cursor: cursor = "default", headColor: headColor = "var(--core-text-primary)", trackColor: trackColor = "var(--core-surface-secondary)", progressColor: progressColor = "var(--core-text-primary)", onChange: onChange = () => null, onDragChange: onDragChange = () => null} = props, divAttributes = __rest(props, [ "value", "scaleMin", "scaleMax", "width", "height", "touchHeight", "trackHeadSize", "headType", "trackHeadWidth", "cursor", "headColor", "trackColor", "progressColor", "onChange", "onDragChange" ]), {id: divId, className: className, style: style} = divAttributes, rest = __rest(divAttributes, [ "id", "className", "style" ]), divStyle = null != style ? style : {}, divClass = className ? ` ${className}` : "", ref = useRef(null), track = useRef(null), head = useRef(null), absProgressRef = useRef(value), relativeProgressRef = useRef(value / scaleMax), didMount = useRef(!1), size = useObserveResize(ref, {
21
+ const {value: value = 25, scaleMin: scaleMin = 0, scaleMax: scaleMax = 100, width: width, height: height = 2, touchHeight: touchHeight = 24, trackHeadSize: trackHeadSize = 7, cursor: cursor = "default", headColor: headColor = "var(--core-text-primary)", trackColor: trackColor = "var(--core-surface-secondary)", progressColor: progressColor = "var(--core-text-primary)", onChange: onChange = () => null, onDragChange: onDragChange = () => null} = props, divAttributes = __rest(props, [ "value", "scaleMin", "scaleMax", "width", "height", "touchHeight", "trackHeadSize", "cursor", "headColor", "trackColor", "progressColor", "onChange", "onDragChange" ]), {id: divId, className: className, style: style} = divAttributes, rest = __rest(divAttributes, [ "id", "className", "style" ]), divStyle = null != style ? style : {}, divClass = className ? ` ${className}` : "", ref = useRef(null), track = useRef(null), head = useRef(null), absProgressRef = useRef(value), relativeProgressRef = useRef(value / scaleMax), didMount = useRef(!1), size = useObserveResize(ref, {
22
22
  ignore: "height"
23
23
  }), debouncedOnChange = function(func, delay) {
24
24
  let timeoutId = null, lastArgs = null;
@@ -35,21 +35,19 @@ const Slider = React.memo(props => {
35
35
  }, debounced;
36
36
  }((value, percent) => {
37
37
  onChange(value, percent);
38
- }, 0), padding = useMemo(() => "none" !== headType && trackHeadSize ? trackHeadSize / 2 : 0, [ headType, trackHeadSize ]), setTrackAndHead = useCallback((pixelPos, max = !1) => {
39
- const tr = track.current, hd = head.current;
40
- let adjustment = 0;
41
- 0 === pixelPos && (adjustment = padding), max && (adjustment = -padding), tr && hd && (tr.style.width = `${pixelPos}px`,
42
- hd.style.left = `${pixelPos - padding + adjustment}px`), didMount.current = !0;
43
- }, [ padding ]), initialProgress = useCallback(current => {
38
+ }, 0), padding = useMemo(() => trackHeadSize ? Math.ceil(trackHeadSize / 2) : 0, [ trackHeadSize ]), setTrackAndHead = useCallback(pixelPos => {
39
+ const hd = head.current, tr = track.current;
40
+ hd && (hd.style.left = `${pixelPos}px`), tr && (tr.style.width = `${pixelPos}px`),
41
+ didMount.current = !0;
42
+ }, []), initialProgress = useCallback(current => {
44
43
  if (!(null == ref ? void 0 : ref.current)) return;
45
44
  const sliderWidth = ref.current.getBoundingClientRect().width;
46
45
  let adjustedCurrent = current;
47
46
  (adjustedCurrent > scaleMax || adjustedCurrent < scaleMin) && (console.warn("Slider outside range. Adjusted to mid point."),
48
47
  adjustedCurrent = (scaleMax - scaleMin) / 2);
49
48
  const normalized = (adjustedCurrent - scaleMin) / (scaleMax - scaleMin), pixelPos = normalized * sliderWidth;
50
- absProgressRef.current = adjustedCurrent, relativeProgressRef.current = normalized;
51
- const max = 1 === relativeProgressRef.current;
52
- setTrackAndHead(pixelPos, max), didMount.current = !0;
49
+ absProgressRef.current = adjustedCurrent, relativeProgressRef.current = normalized,
50
+ setTrackAndHead(pixelPos), didMount.current = !0;
53
51
  }, [ scaleMax, scaleMin, setTrackAndHead ]), progress = useCallback(posX => {
54
52
  const el = null == ref ? void 0 : ref.current;
55
53
  if (!el) return {
@@ -61,11 +59,11 @@ const Slider = React.memo(props => {
61
59
  }, [ scaleMax, scaleMin ]), updateSlider = useCallback(e => {
62
60
  const newPos = pointerPosition(e), el = null == ref ? void 0 : ref.current;
63
61
  if (!el) return 0;
64
- const rect = el.getBoundingClientRect(), sliderWidth = rect.width;
62
+ const rect = el.getBoundingClientRect(), sliderWidth = Math.floor(rect.width);
65
63
  let pos = newPos - rect.x;
66
- pos > sliderWidth - padding ? pos = sliderWidth : pos < padding && (pos = 0);
67
- return setTrackAndHead(pos, pos === sliderWidth), pos;
68
- }, [ setTrackAndHead, padding ]), handleMouseMove = useCallback(e => {
64
+ return pos > sliderWidth ? pos = sliderWidth : pos < 0 && (pos = 0), setTrackAndHead(pos),
65
+ pos;
66
+ }, [ setTrackAndHead ]), handleMouseMove = useCallback(e => {
69
67
  e.preventDefault();
70
68
  if (null == ref ? void 0 : ref.current) {
71
69
  const pos = updateSlider(e);
@@ -93,48 +91,50 @@ const Slider = React.memo(props => {
93
91
  useEffect(() => {
94
92
  didMount.current && value === absProgressRef.current || initialProgress(value);
95
93
  }, [ value, initialProgress ]), useEffect(() => {
96
- const el = null == ref ? void 0 : ref.current;
94
+ const el = null == ref ? void 0 : ref.current, hl = null == head ? void 0 : head.current;
97
95
  return null == el || el.addEventListener("mousedown", handleMouseDown, !1), null == el || el.addEventListener("touchstart", handleMouseDown, !1),
96
+ null == hl || hl.addEventListener("mousedown", handleMouseDown, !1), null == hl || hl.addEventListener("touchstart", handleMouseDown, !1),
98
97
  () => {
99
- null == el || el.removeEventListener("mousedown", handleMouseDown, !1), null == el || el.removeEventListener("touchstart", handleMouseDown, !1);
98
+ null == el || el.removeEventListener("mousedown", handleMouseDown, !1), null == el || el.removeEventListener("touchstart", handleMouseDown, !1),
99
+ null == hl || hl.removeEventListener("mousedown", handleMouseDown, !1), null == hl || hl.removeEventListener("touchstart", handleMouseDown, !1);
100
100
  };
101
101
  }, [ handleMouseDown ]), useEffect(() => {
102
102
  var _a;
103
103
  const sliderWidth = null === (_a = null == ref ? void 0 : ref.current) || void 0 === _a ? void 0 : _a.offsetWidth;
104
- if (!sliderWidth || 0 === size.width) return;
105
- const max = 1 === relativeProgressRef.current;
106
- setTrackAndHead(relativeProgressRef.current * sliderWidth, max);
104
+ sliderWidth && 0 !== size.width && setTrackAndHead(relativeProgressRef.current * sliderWidth);
107
105
  }, [ size.width, setTrackAndHead ]);
108
- const trackHeadColor = useMemo(() => "none" === headType ? "transparent" : null != headColor ? headColor : "var(--core-text-primary)", [ headColor, headType ]), headSize = useMemo(() => "none" === headType ? height : trackHeadSize, [ trackHeadSize, headType, height ]), headWidth = useMemo(() => "round" === headType ? trackHeadSize : trackHeadWidth, [ headType, trackHeadSize, trackHeadWidth ]), setWidth = useMemo(() => width && "string" == typeof width ? "auto" === width ? "100%" : width : `${null != width ? width : 100}px`, [ width ]), cssVars = useMemo(() => ({
106
+ const trackHeadColor = useMemo(() => trackHeadSize && 0 !== trackHeadSize ? null != headColor ? headColor : "var(--core-text-primary)" : "transparent", [ headColor, trackHeadSize ]), setWidth = useMemo(() => width && "string" == typeof width ? "auto" === width ? "100%" : width : `${null != width ? width : 100}px`, [ width ]), cssVars = useMemo(() => ({
109
107
  "--slider-padding": `${padding}px`,
110
108
  "--slider-width": setWidth,
111
109
  "--slider-height": `${height}px`,
112
110
  "--slider-touch-height": `${touchHeight}px`,
113
111
  "--slider-cursor": cursor,
114
112
  "--slider-head-display": height ? "block" : "none",
115
- "--slider-head-radius": "round" === headType ? "100%" : "0px",
116
- "--slider-head-size": `${headSize}px`,
117
- "--slider-head-width": `${headWidth}px`,
113
+ "--slider-head-radius": "100%",
114
+ "--slider-head-size": `${null != trackHeadSize ? trackHeadSize : 0}px`,
115
+ "--slider-head-width": `${null != trackHeadSize ? trackHeadSize : 0}px`,
118
116
  "--slider-head-color": trackHeadColor,
119
117
  "--slider-progress-color": null != progressColor ? progressColor : "var(--core-text-primary)",
120
118
  "--slider-track-color": null != trackColor ? trackColor : "var(--core-surface-secondary)"
121
- }), [ padding, height, touchHeight, cursor, headWidth, progressColor, trackColor, headSize, trackHeadColor, headType, setWidth ]);
119
+ }), [ padding, height, touchHeight, cursor, progressColor, trackColor, trackHeadSize, trackHeadColor, setWidth ]);
122
120
  return jsx("div", Object.assign({
123
121
  id: divId,
124
122
  className: `${css_wrapper}${divClass}`,
125
- style: Object.assign(Object.assign({}, divStyle), cssVars),
126
- ref: ref
123
+ style: Object.assign(Object.assign({}, divStyle), cssVars)
127
124
  }, rest, {
128
- children: jsx("div", {
129
- className: css_trackBg,
130
- children: jsx("div", {
131
- className: css_track,
132
- ref: track,
125
+ children: jsxs("div", {
126
+ ref: ref,
127
+ className: css_trackWrapper,
128
+ children: [ jsx("div", {
129
+ className: css_trackBg,
133
130
  children: jsx("div", {
134
- className: css_trackHead,
135
- ref: head
131
+ className: css_track,
132
+ ref: track
136
133
  })
137
- })
134
+ }), jsx("div", {
135
+ className: css_trackHead,
136
+ ref: head
137
+ }) ]
138
138
  })
139
139
  }));
140
140
  });
@@ -12,9 +12,9 @@ import "../hooks/useWindow.mjs";
12
12
 
13
13
  import { B as Badge } from "./Badge-DyICxZP2.mjs";
14
14
 
15
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
15
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
16
16
 
17
- import { I as IconButton } from "./IconButton-C8RBNFzh.mjs";
17
+ import { I as IconButton } from "./IconButton-B5WEf-v5.mjs";
18
18
 
19
19
  import { T as ToolTipType } from "./sharedTypes-tn9-uJvb.mjs";
20
20
 
@@ -4,7 +4,7 @@ import { jsxs, jsx } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useState, useRef, useCallback, useEffect, useMemo } from "react";
6
6
 
7
- import { B as Button } from "./Button-DJDS7Yad.mjs";
7
+ import { B as Button } from "./Button-DexmN81C.mjs";
8
8
 
9
9
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
10
10
 
@@ -12,11 +12,11 @@ import "../theme/colors.mjs";
12
12
 
13
13
  import "../hooks/useWindow.mjs";
14
14
 
15
- import { B as Button } from "./Button-DJDS7Yad.mjs";
15
+ import { B as Button } from "./Button-DexmN81C.mjs";
16
16
 
17
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
17
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
18
18
 
19
- import { I as IconButton } from "./IconButton-C8RBNFzh.mjs";
19
+ import { I as IconButton } from "./IconButton-B5WEf-v5.mjs";
20
20
 
21
21
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
22
22
 
@@ -66,7 +66,7 @@ const MOTION_CONFIG = {
66
66
  error: "var(--feedback-warning)",
67
67
  placeholder: "var(--core-text-disabled)",
68
68
  disabled: "var(--core-text-disabled)",
69
- label: "var(--core-text-tertiary)"
69
+ label: "var(--core-text-primary)"
70
70
  }, iconLeft: iconLeft = null, clearButton: clearButton = {
71
71
  size: 20
72
72
  }, clearBlurs: clearBlurs = !1, disabled: disabled = !1, inputType: inputType = "text"} = props, divAttributes = __rest(props, [ "name", "value", "label", "labelSize", "textSize", "placeholder", "focused", "onSubmit", "onChange", "onBlur", "onFocus", "onKeydown", "onAction", "onPaste", "onClear", "onValidate", "actionButton", "maxLength", "size", "padding", "borderRadius", "editable", "textAlign", "isValid", "inline", "noShow", "borderType", "validate", "borderColor", "backgroundColor", "color", "iconLeft", "clearButton", "clearBlurs", "disabled", "inputType" ]), {id: divId, className: className, style: style} = divAttributes, rest = __rest(divAttributes, [ "id", "className", "style" ]), divStyle = null != style ? style : {}, divClass = className ? ` ${className}` : "", input = useRef(null), [text, setText] = useState(value), [isFocused, setIsFocused] = useState(focused), [valid, setValid] = useState(isValid), [show, setShow] = useState(!1);
@@ -85,17 +85,19 @@ const MOTION_CONFIG = {
85
85
  (null == input ? void 0 : input.current) && (clearBlurs || input.current.focus(),
86
86
  setText(""), textIsValid("")), onChange(""), onClear();
87
87
  }, [ clearBlurs, onChange, onClear, textIsValid ]), handleValueChange = useCallback(newValue => {
88
- setText(newValue), onChange(newValue), valid || textIsValid(text);
89
- }, [ onChange, textIsValid, text, valid ]), handleBlur = useCallback(() => {
90
- textIsValid(text), setIsFocused(!1), onBlur(text);
91
- }, [ text, onBlur, textIsValid ]), handleKeyDown = useCallback(e => {
88
+ disabled || (setText(newValue), onChange(newValue), valid || textIsValid(text));
89
+ }, [ onChange, textIsValid, text, valid, disabled ]), handleBlur = useCallback(() => {
90
+ disabled || (textIsValid(text), setIsFocused(!1), onBlur(text));
91
+ }, [ text, onBlur, textIsValid, disabled ]), handleKeyDown = useCallback(e => {
92
92
  var _a;
93
- if ("Enter" === e.key && (handleBlur(), onSubmit(text), null === (_a = input.current) || void 0 === _a || _a.blur()),
94
- disabled) return e.preventDefault(), !0;
95
- onKeydown(e.key, e);
93
+ if (!disabled) {
94
+ if ("Enter" === e.key && (handleBlur(), onSubmit(text), null === (_a = input.current) || void 0 === _a || _a.blur()),
95
+ disabled) return e.preventDefault(), !0;
96
+ onKeydown(e.key, e);
97
+ }
96
98
  }, [ text, disabled, onSubmit, onKeydown, handleBlur ]), handleFocus = useCallback(() => {
97
- setIsFocused(!0), onFocus(text);
98
- }, [ text, onFocus ]), toggleShow = useCallback(() => {
99
+ disabled || (setIsFocused(!0), onFocus(text));
100
+ }, [ text, onFocus, disabled ]), toggleShow = useCallback(() => {
99
101
  setShow(prev => !prev);
100
102
  }, []), iconContainerStyle = useMemo(() => iconLeft ? {
101
103
  width: iconLeft.size,
@@ -113,7 +115,7 @@ const MOTION_CONFIG = {
113
115
  var _a, _b, _c;
114
116
  return validate && !valid ? null !== (_a = color.error) && void 0 !== _a ? _a : "var(--core-text-primary)" : isFocused ? null !== (_b = color.focused) && void 0 !== _b ? _b : "var(--core-text-primary)" : null !== (_c = color.blurred) && void 0 !== _c ? _c : "var(--core-text-primary)";
115
117
  }, [ isFocused, valid, color, validate ]), setTextAlign = useMemo(() => null != textAlign ? textAlign : "left", [ textAlign ]), setShowOpacity = useMemo(() => "password" !== inputType ? "0" : isFocused ? "1" : "0.5", [ inputType, isFocused ]), cssVars = useMemo(() => {
116
- var _a, _b;
118
+ var _a;
117
119
  return {
118
120
  "--tf-width": setStyleValue(size.width),
119
121
  "--tf-height": setStyleValue(size.height),
@@ -123,12 +125,12 @@ const MOTION_CONFIG = {
123
125
  "--tf-bg-color": setBackgroundColor,
124
126
  "--tf-box-shadow": setBoxShadow,
125
127
  "--tf-color": textColor,
126
- "--tf-label-color": null !== (_a = color.label) && void 0 !== _a ? _a : "var(--core-text-disabled)",
128
+ "--tf-label-color": disabled ? "var(--core-text-disabled)" : color.label,
127
129
  "--tf-text-align": setTextAlign,
128
130
  "--tf-show-opacity": setShowOpacity,
129
- "--tf-placeholder-color": null !== (_b = color.placeholder) && void 0 !== _b ? _b : "var(--core-text-disabled)"
131
+ "--tf-placeholder-color": null !== (_a = color.placeholder) && void 0 !== _a ? _a : "var(--core-text-disabled)"
130
132
  };
131
- }, [ size, padding, label, borderRadius, setStyleValue, setBackgroundColor, setBoxShadow, textColor, setTextAlign, setShowOpacity, color ]);
133
+ }, [ size, padding, label, borderRadius, setStyleValue, setBackgroundColor, setBoxShadow, textColor, setTextAlign, setShowOpacity, color, disabled ]);
132
134
  return jsxs("div", Object.assign({
133
135
  id: divId,
134
136
  className: `${css.wrapper}${divClass}`,
@@ -163,7 +165,7 @@ const MOTION_CONFIG = {
163
165
  onFocus: handleFocus,
164
166
  onBlur: handleBlur,
165
167
  onMouseDown: e => e.stopPropagation(),
166
- disabled: !editable,
168
+ disabled: !editable || disabled,
167
169
  maxLength: maxLength
168
170
  }), jsx(AnimatePresence, {
169
171
  initial: !1,
@@ -14,7 +14,7 @@ import "../hooks/useWindow.mjs";
14
14
 
15
15
  import { s as setStyle, f as filterClasses, a as accessibleKeyDown } from "./misc-cg9I7drO.mjs";
16
16
 
17
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
17
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
18
18
 
19
19
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
20
20
 
@@ -4,11 +4,11 @@ import React, { useState, useRef, useCallback, useMemo } from "react";
4
4
 
5
5
  import { s as setStyle, a as accessibleKeyDown } from "./misc-cg9I7drO.mjs";
6
6
 
7
- import { F as FileList } from "./FileList-CmlXqPXl.mjs";
7
+ import { F as FileList } from "./FileList-E5uvcN2J.mjs";
8
8
 
9
- import { I as Icon } from "./_types-CTmvSEX0.mjs";
9
+ import { I as Icon } from "./_types-C8GP_aSD.mjs";
10
10
 
11
- import { P as ProgressIndicator } from "./ProgressIndicator-h11R3FG1.mjs";
11
+ import { P as ProgressIndicator } from "./ProgressIndicator-DeLwB3Rb.mjs";
12
12
 
13
13
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
14
14