@apple-pie/slice 0.1.6 → 0.1.8

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 (179) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/chunks/{Avatar-YNcGDUzr.js → Avatar-8XLnVICd.js} +6 -4
  3. package/dist/cjs/chunks/{AvatarGroup-Dn5R1XIU.js → AvatarGroup-BhKZvX8M.js} +1 -1
  4. package/dist/cjs/chunks/{Button-Ck4syxwn.js → Button-D8_eyuOA.js} +9 -6
  5. package/dist/cjs/chunks/{ButtonBar-Cx9Xwddh.js → ButtonBar-DwMLfvi8.js} +11 -15
  6. package/dist/cjs/chunks/{Camera-BrLRwcw1.js → Camera-CxHdYGEa.js} +11 -8
  7. package/dist/cjs/chunks/{Card-CYDP4vAN.js → Card-D4YkmNC7.js} +5 -8
  8. package/dist/cjs/chunks/{CheckBox-DYG1fNWy.js → CheckBox-CmTQ6KW1.js} +9 -14
  9. package/dist/cjs/chunks/{Chip-CqOwsrmt.js → Chip-CwMJOnBV.js} +5 -5
  10. package/dist/cjs/chunks/{DivInput-C73sqUF3.js → DivInput-DdZA8S1k.js} +1 -1
  11. package/dist/cjs/chunks/{DocIcons-B5TcBqSH.js → DocIcons-BZI6JMyw.js} +1 -1
  12. package/dist/cjs/chunks/{DrggablePanel-BzvBBhS7.js → DrggablePanel-CkhCXqKv.js} +1 -1
  13. package/dist/cjs/chunks/{DropDown-Bo0bxkFk.js → DropDown-Ce8aU2va.js} +2 -2
  14. package/dist/cjs/chunks/{FileIcon-hYwcre20.js → FileIcon-CZLe2S2l.js} +3 -3
  15. package/dist/cjs/chunks/{FileList-bA8PoGOh.js → FileList-tivoUJSP.js} +11 -4
  16. package/dist/cjs/chunks/{Grouper-BszVihfB.js → Grouper-BbovOSYw.js} +8 -7
  17. package/dist/cjs/chunks/{_types-NyUTfBLR.js → Icon-N0YJuKQf.js} +68 -44
  18. package/dist/cjs/chunks/{IconButton-yWq-C437.js → IconButton-BXotgG2u.js} +9 -6
  19. package/dist/cjs/chunks/{Label-D15cIroT.js → Label-CZvJbATa.js} +16 -11
  20. package/dist/cjs/chunks/{Overlay-DL0EJDyk.js → Overlay-BX6vXX9F.js} +1 -1
  21. package/dist/cjs/chunks/{Pager-TUxcWbmn.js → Pager-Da9AqSFN.js} +1 -1
  22. package/dist/cjs/chunks/{ProgressIndicator-Dvq4eIWW.js → ProgressIndicator-opbbADog.js} +2 -2
  23. package/dist/cjs/chunks/{PromptInput-Hgh6995X.js → PromptInput-tA4fpOTk.js} +1 -1
  24. package/dist/cjs/chunks/{RadioButton-Cu-laBV5.js → RadioButton-B8GIKGm-.js} +9 -10
  25. package/dist/cjs/chunks/{RadioButtonList-COS7jfsC.js → RadioButtonList-3o1IvhdC.js} +11 -5
  26. package/dist/cjs/chunks/{SSEConnection-B_yE8cXz.js → SSEConnection-C-1OzEOp.js} +29 -15
  27. package/dist/cjs/chunks/{Slider-BeXrWjVx.js → Slider-CnXBacf-.js} +65 -36
  28. package/dist/cjs/chunks/{Switch-Xqf0vwul.js → Switch-BiTshVLM.js} +6 -3
  29. package/dist/cjs/chunks/{TabBar-DCRr3l9L.js → TabBar-DZ2y7owf.js} +48 -12
  30. package/dist/cjs/chunks/{TextArea-DM0aHGGt.js → TextArea-DXcMRUfI.js} +1 -1
  31. package/dist/cjs/chunks/{TextField-DQgpDpR1.js → TextField-CkfTNM6_.js} +11 -6
  32. package/dist/cjs/chunks/{Tip-ik8-p4_4.js → Tip-59T3TUN4.js} +1 -1
  33. package/dist/cjs/chunks/{Toast-D-Y1Ytnb.js → Toast-skIBuJ3b.js} +2 -2
  34. package/dist/cjs/chunks/{UploadArea-Y_B35qjZ.js → UploadArea-B8mJRc0a.js} +15 -10
  35. package/dist/cjs/chunks/{WSConnection-DCBuJGmb.js → WSConnection-DrOC8Z0R.js} +32 -23
  36. package/dist/cjs/chunks/_types-BD6txsj1.js +118 -0
  37. package/dist/cjs/chunks/{colors-uej0anrN.js → colors-njquvHkx.js} +1 -1
  38. package/dist/cjs/chunks/debounce-BF4i6uIC.js +18 -0
  39. package/dist/cjs/chunks/{misc-C-M6KKsH.js → misc-BTF7BCZW.js} +21 -12
  40. package/dist/cjs/chunks/{sseStore-CIIeshjm.js → sseStore-1OeJ9TRP.js} +1 -1
  41. package/dist/cjs/components/Avatar/index.js +2 -2
  42. package/dist/cjs/components/AvatarGroup/index.js +2 -2
  43. package/dist/cjs/components/Button/index.js +3 -3
  44. package/dist/cjs/components/ButtonBar/index.js +3 -3
  45. package/dist/cjs/components/Camera/index.js +4 -4
  46. package/dist/cjs/components/Card/index.js +5 -6
  47. package/dist/cjs/components/CheckBox/index.js +6 -7
  48. package/dist/cjs/components/Chip/index.js +2 -2
  49. package/dist/cjs/components/DivInput/index.js +2 -2
  50. package/dist/cjs/components/DocIcon/index.js +1 -1
  51. package/dist/cjs/components/DraggablePanel/index.js +2 -2
  52. package/dist/cjs/components/DropDown/index.js +2 -2
  53. package/dist/cjs/components/FileIcon/index.js +2 -2
  54. package/dist/cjs/components/FileList/index.js +4 -4
  55. package/dist/cjs/components/Grouper/index.js +3 -3
  56. package/dist/cjs/components/Icon/index.js +3 -8
  57. package/dist/cjs/components/IconButton/index.js +3 -3
  58. package/dist/cjs/components/Label/index.js +2 -2
  59. package/dist/cjs/components/Overlay/index.js +1 -1
  60. package/dist/cjs/components/Pager/index.js +2 -2
  61. package/dist/cjs/components/Progress/index.js +3 -3
  62. package/dist/cjs/components/PromptInput/index.js +6 -6
  63. package/dist/cjs/components/RadioButton/index.js +2 -2
  64. package/dist/cjs/components/RadioButtonList/index.js +7 -7
  65. package/dist/cjs/components/Slider/index.js +4 -3
  66. package/dist/cjs/components/Switch/index.js +1 -1
  67. package/dist/cjs/components/TabBar/index.js +3 -3
  68. package/dist/cjs/components/TextArea/index.js +6 -7
  69. package/dist/cjs/components/Textfield/index.js +5 -5
  70. package/dist/cjs/components/Tip/index.js +2 -2
  71. package/dist/cjs/components/Toast/index.js +2 -2
  72. package/dist/cjs/components/UploadArea/index.js +6 -6
  73. package/dist/cjs/hooks/useTrackRenders.js +1 -1
  74. package/dist/cjs/index.js +9 -14
  75. package/dist/cjs/stores/SSE.js +2 -2
  76. package/dist/cjs/stores/WS.js +1 -1
  77. package/dist/cjs/stores.js +2 -2
  78. package/dist/cjs/utils/index.js +4 -3
  79. package/dist/cjs/utils/objects/index.js +1 -1
  80. package/dist/esm/chunks/{Avatar-CDMV6f9w.mjs → Avatar-DGRMsHdO.mjs} +7 -5
  81. package/dist/esm/chunks/{AvatarGroup-BZ18GwhK.mjs → AvatarGroup-C9Ka1e9P.mjs} +1 -1
  82. package/dist/esm/chunks/{Button-DexmN81C.mjs → Button-DAvVj4YV.mjs} +8 -5
  83. package/dist/esm/chunks/{ButtonBar-C-LwBxlY.mjs → ButtonBar-Cw73kooJ.mjs} +11 -15
  84. package/dist/esm/chunks/{Camera-DdUBZi52.mjs → Camera-BrdJGlv6.mjs} +12 -9
  85. package/dist/esm/chunks/{Card-DUfnTA5v.mjs → Card-DGlv1PII.mjs} +4 -7
  86. package/dist/esm/chunks/{CheckBox-Bnd3UAt0.mjs → CheckBox-B7UCZvRv.mjs} +9 -14
  87. package/dist/esm/chunks/{Chip-BJS4oJBL.mjs → Chip-BPF7fBba.mjs} +5 -3
  88. package/dist/esm/chunks/{DivInput-B7BliU1p.mjs → DivInput-Ch9XjfWd.mjs} +1 -1
  89. package/dist/esm/chunks/{DocIcons-BxtcXsWI.mjs → DocIcons-B4xsPrXM.mjs} +1 -1
  90. package/dist/esm/chunks/{DrggablePanel-DvactFf5.mjs → DrggablePanel-Ddi0vPRp.mjs} +1 -1
  91. package/dist/esm/chunks/{DropDown-CbX16ETP.mjs → DropDown-Cvf2d_3u.mjs} +1 -1
  92. package/dist/esm/chunks/{FileIcon-CC_k5dUW.mjs → FileIcon-ePouoJpT.mjs} +3 -3
  93. package/dist/esm/chunks/{FileList-E5uvcN2J.mjs → FileList-BHCGzX_0.mjs} +11 -6
  94. package/dist/esm/chunks/{Grouper-X9OursiT.mjs → Grouper-B_FutfjV.mjs} +6 -5
  95. package/dist/esm/chunks/{_types-C8GP_aSD.mjs → Icon-C92f63Ib.mjs} +69 -46
  96. package/dist/esm/chunks/{IconButton-B5WEf-v5.mjs → IconButton-4O5S9S9G.mjs} +9 -6
  97. package/dist/esm/chunks/{Label-DOvquc82.mjs → Label-7ezP3eHw.mjs} +16 -11
  98. package/dist/esm/chunks/{Overlay-Cw9o1fHb.mjs → Overlay-TOzZXnwF.mjs} +1 -1
  99. package/dist/esm/chunks/{Pager-BX4TMwD_.mjs → Pager-BlLYeA2F.mjs} +1 -1
  100. package/dist/esm/chunks/{ProgressIndicator-DeLwB3Rb.mjs → ProgressIndicator-BVwQNOcV.mjs} +1 -1
  101. package/dist/esm/chunks/{PromptInput-BdMotrXA.mjs → PromptInput-pKwwzyAd.mjs} +2 -2
  102. package/dist/esm/chunks/{RadioButton-D6kP8p0n.mjs → RadioButton-COEnChNW.mjs} +9 -10
  103. package/dist/esm/chunks/{RadioButtonList-guQECpwi.mjs → RadioButtonList-De3rbLQb.mjs} +12 -6
  104. package/dist/esm/chunks/{SSEConnection-Dj9P0SWE.mjs → SSEConnection-DcA3wFsO.mjs} +29 -14
  105. package/dist/esm/chunks/{Slider-ZuSvETfo.mjs → Slider-DL2iuNlh.mjs} +69 -34
  106. package/dist/esm/chunks/{Switch-nWg2Ykea.mjs → Switch-Cv6LABsW.mjs} +6 -3
  107. package/dist/esm/chunks/{TabBar-BYtGaj_A.mjs → TabBar-qiozE5zA.mjs} +49 -13
  108. package/dist/esm/chunks/{TextArea-D88dZrXm.mjs → TextArea-yF2pGeel.mjs} +1 -1
  109. package/dist/esm/chunks/{TextField-DvTB_JoS.mjs → TextField-CgnPj6oK.mjs} +11 -6
  110. package/dist/esm/chunks/{Tip-B-cDOFvV.mjs → Tip-CroDIKO4.mjs} +1 -1
  111. package/dist/esm/chunks/{Toast-BdlopzJ6.mjs → Toast-CM493gMR.mjs} +2 -2
  112. package/dist/esm/chunks/{UploadArea--i-bbRIJ.mjs → UploadArea-BNf1y8Ep.mjs} +18 -13
  113. package/dist/esm/chunks/{WSConnection-DlYSitff.mjs → WSConnection-D9mpsVdc.mjs} +32 -23
  114. package/dist/esm/chunks/_types-C2C2Zwd0.mjs +118 -0
  115. package/dist/esm/chunks/{colors-DR9fLI5X.mjs → colors-FQ0uNQcW.mjs} +2 -2
  116. package/dist/esm/chunks/debounce-Bst1jxMS.mjs +19 -0
  117. package/dist/esm/chunks/{misc-cg9I7drO.mjs → misc-N8KLjOXc.mjs} +22 -12
  118. package/dist/esm/chunks/{sseStore-DdqmnAAf.mjs → sseStore-2JIpEKfz.mjs} +1 -1
  119. package/dist/esm/components/Avatar/index.mjs +2 -2
  120. package/dist/esm/components/AvatarGroup/index.mjs +3 -3
  121. package/dist/esm/components/Button/index.mjs +4 -4
  122. package/dist/esm/components/ButtonBar/index.mjs +4 -4
  123. package/dist/esm/components/Camera/index.mjs +5 -5
  124. package/dist/esm/components/Card/index.mjs +3 -3
  125. package/dist/esm/components/CheckBox/index.mjs +5 -5
  126. package/dist/esm/components/Chip/index.mjs +3 -3
  127. package/dist/esm/components/DivInput/index.mjs +2 -2
  128. package/dist/esm/components/DocIcon/index.mjs +1 -1
  129. package/dist/esm/components/DraggablePanel/index.mjs +2 -2
  130. package/dist/esm/components/DropDown/index.mjs +3 -3
  131. package/dist/esm/components/FileIcon/index.mjs +2 -2
  132. package/dist/esm/components/FileList/index.mjs +5 -5
  133. package/dist/esm/components/Grouper/index.mjs +3 -3
  134. package/dist/esm/components/Icon/index.mjs +4 -2
  135. package/dist/esm/components/IconButton/index.mjs +3 -3
  136. package/dist/esm/components/Label/index.mjs +2 -2
  137. package/dist/esm/components/Overlay/index.mjs +1 -1
  138. package/dist/esm/components/Pager/index.mjs +2 -2
  139. package/dist/esm/components/Progress/index.mjs +3 -3
  140. package/dist/esm/components/PromptInput/index.mjs +7 -7
  141. package/dist/esm/components/RadioButton/index.mjs +3 -3
  142. package/dist/esm/components/RadioButtonList/index.mjs +4 -4
  143. package/dist/esm/components/Slider/index.mjs +4 -2
  144. package/dist/esm/components/Switch/index.mjs +1 -1
  145. package/dist/esm/components/TabBar/index.mjs +4 -4
  146. package/dist/esm/components/TextArea/index.mjs +5 -5
  147. package/dist/esm/components/Textfield/index.mjs +6 -6
  148. package/dist/esm/components/Tip/index.mjs +2 -2
  149. package/dist/esm/components/Toast/index.mjs +3 -3
  150. package/dist/esm/components/UploadArea/index.mjs +6 -6
  151. package/dist/esm/hooks/useTrackRenders.mjs +1 -1
  152. package/dist/esm/index.mjs +38 -34
  153. package/dist/esm/stores/SSE.mjs +2 -2
  154. package/dist/esm/stores/WS.mjs +1 -1
  155. package/dist/esm/stores.mjs +2 -2
  156. package/dist/esm/utils/index.mjs +6 -4
  157. package/dist/esm/utils/objects/index.mjs +2 -2
  158. package/dist/types/components/Button/Button.d.ts +3 -3
  159. package/dist/types/components/Button/_types.d.ts +2 -2
  160. package/dist/types/components/Camera/_types.d.ts +1 -0
  161. package/dist/types/components/Card/_types.d.ts +1 -1
  162. package/dist/types/components/Chip/_types.d.ts +1 -2
  163. package/dist/types/components/Grouper/_types.d.ts +1 -1
  164. package/dist/types/components/Icon/_types.d.ts +116 -83
  165. package/dist/types/components/Icon/index.d.ts +1 -1
  166. package/dist/types/components/IconButton/_types.d.ts +2 -2
  167. package/dist/types/components/Label/_types.d.ts +1 -1
  168. package/dist/types/components/RadioButton/_types.d.ts +2 -1
  169. package/dist/types/components/Switch/_types.d.ts +1 -1
  170. package/dist/types/components/TabBar/_types.d.ts +2 -0
  171. package/dist/types/index.d.ts +1 -1
  172. package/dist/types/utils/functions/colors.d.ts +2 -2
  173. package/dist/types/utils/functions/debounce.d.ts +1 -2
  174. package/dist/types/utils/functions/files.d.ts +7 -1
  175. package/dist/types/utils/functions/misc.d.ts +19 -11
  176. package/dist/types/utils/index.d.ts +3 -2
  177. package/dist/types/utils/objects/SSEConnection/SSEConnection.d.ts +29 -8
  178. package/dist/types/utils/objects/WSConnection/WSConnection.d.ts +32 -20
  179. package/package.json +1 -1
@@ -38,6 +38,9 @@ interface WSConnectionStandardOptions<TMessage = unknown> extends WSConnectionOp
38
38
  onMessageCallback?: WSStandardMessageCallback<TMessage>;
39
39
  }
40
40
  export type WSConnectionOptions<TMessage = unknown> = WSConnectionStandardOptions<TMessage> | WSConnectionUnifiedOptions<TMessage>;
41
+ /**
42
+ * Manage a WebSocket connection with optional unified events, retries, and keep-alive pings.
43
+ */
41
44
  export declare class WSConnection<TMessage = unknown> {
42
45
  private readonly url;
43
46
  private readonly autoReconnect;
@@ -57,90 +60,99 @@ export declare class WSConnection<TMessage = unknown> {
57
60
  private reconnectIntervalTimer;
58
61
  private reconnectAttemptsCount;
59
62
  private manuallyClosed;
63
+ /**
64
+ * Report whether the underlying socket is currently open.
65
+ */
60
66
  get connected(): boolean;
67
+ /**
68
+ * Expose the underlying WebSocket instance.
69
+ */
61
70
  get connection(): WebSocket | null;
71
+ /**
72
+ * Initialize the socket connection and configure its runtime options.
73
+ */
62
74
  constructor(options: WSConnectionOptions<TMessage>);
63
75
  /**
64
- * Gracefully handle sending messages
76
+ * Send a string or JSON-serializable payload through the socket.
65
77
  */
66
78
  send(message: unknown): void;
67
79
  /**
68
- * Gracefully expose socket close
80
+ * Close the socket intentionally and stop any reconnect attempts.
69
81
  */
70
82
  close(closeEvent: {
71
83
  code: number;
72
84
  reason: string;
73
85
  }): void;
74
86
  /**
75
- * Emit the parsed message content for standard mode
87
+ * Emit parsed message data when standard callback mode is enabled.
76
88
  */
77
89
  private emitParsedMessage;
78
90
  /**
79
- * Emit a unified message if the unified flag is on
91
+ * Emit a unified event object when unified callback mode is enabled.
80
92
  */
81
93
  private emitUnifiedMessage;
82
94
  /**
83
- * Emit error
95
+ * Forward an error event through both direct and unified callbacks.
84
96
  */
85
97
  private emitErrorEvent;
86
98
  /**
87
- * Safe JSON parse message content
99
+ * Parse incoming message data, falling back to raw socket payloads when needed.
88
100
  */
89
101
  private parseEventData;
90
102
  /**
91
- * Open handler
103
+ * Initialize connection state after the socket opens.
92
104
  */
93
105
  private readonly onOpen;
94
106
  /**
95
- * Message handler
107
+ * Parse and emit each incoming socket message.
96
108
  */
97
109
  private readonly onMessage;
98
110
  /**
99
- * Close handler with the reconnection logic as needed
111
+ * Clean up the socket and trigger reconnect logic after unexpected closes.
100
112
  */
101
113
  private readonly onClose;
102
114
  /**
103
- * Error handler
115
+ * Normalize socket errors before forwarding them to consumers.
104
116
  */
105
117
  private readonly onError;
106
118
  /**
107
- * Attach socket listeners
119
+ * Attach the connection lifecycle listeners to the current socket.
108
120
  */
109
121
  private attachEventListeners;
110
122
  /**
111
- * set keep alive pings
123
+ * Start periodic ping messages to keep the socket active.
112
124
  */
113
125
  private setKeepAlive;
114
126
  /**
115
- * Clear keep alive pings
127
+ * Stop the active keep-alive timer if one is running.
116
128
  */
117
129
  private clearKeepAliveTimer;
118
130
  /**
119
- * Clear reconnect timer
131
+ * Stop the active reconnect timer if one is running.
120
132
  */
121
133
  private clearReconnectTimer;
122
134
  /**
123
- * detach all event listeners
135
+ * Detach all lifecycle listeners from the current socket.
124
136
  */
125
137
  private detachEventListeners;
126
138
  /**
127
- * Connect the socket
139
+ * Open a new socket connection when one is not already active.
128
140
  */
129
141
  private connect;
130
142
  /**
131
- * Reconnect logic
143
+ * Schedule the next reconnect attempt when reconnects are allowed.
132
144
  */
133
145
  private reconnect;
134
146
  /**
135
- * Calculate reconnect delay with fall off
147
+ * Calculate the reconnect delay, optionally using exponential backoff.
136
148
  */
137
149
  private getReconnectDelay;
138
150
  /**
139
- * Determine if should reconnect based on the close event and props
151
+ * Decide whether a close event should trigger a reconnect attempt.
140
152
  */
141
153
  private shouldReconnect;
142
154
  /**
143
- * Internal close socket - does not reset retry logic
155
+ * Close the current socket instance and release its timers and listeners.
144
156
  */
145
157
  private closeSocket;
146
158
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apple-pie/slice",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.mjs",
6
6
  "exports": {