@loudy/lib 0.0.5 → 0.0.6

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/index.d.mts CHANGED
@@ -1,3 +1,13 @@
1
+ //#region src/signals.d.ts
2
+ type Signal<T> = {
3
+ get(): T;
4
+ set(value: T): void;
5
+ subscribe(fn: (value: T) => void): () => void;
6
+ };
7
+ declare function signal<T>(initialValue: T): Signal<T>;
8
+ declare function computed<T>(fn: () => T): Signal<T>;
9
+ declare function effect(fn: () => void): void;
10
+ //#endregion
1
11
  //#region src/index.d.ts
2
12
  declare function $(elementName: string): LoudLibElement | null;
3
13
  declare class LoudLibElement {
@@ -12,4 +22,4 @@ declare class LoudLibElement {
12
22
  }
13
23
  type EventHandlers = { [K in Extract<keyof GlobalEventHandlers, `on${string}`>]: K extends `on${infer E}` ? E : never }[Extract<keyof GlobalEventHandlers, `on${string}`>];
14
24
  //#endregion
15
- export { $ };
25
+ export { $, Signal, computed, effect, signal };
package/dist/index.mjs CHANGED
@@ -1,36 +1 @@
1
- //#region src/index.ts
2
- function $(elementName) {
3
- const element = document.querySelector(elementName);
4
- return element ? new LoudLibElement(element) : null;
5
- }
6
- var LoudLibElement = class {
7
- constructor(element) {
8
- this.element = element;
9
- }
10
- element;
11
- on(event, fn) {
12
- this.element.addEventListener(event, fn);
13
- return this;
14
- }
15
- addClass(className) {
16
- this.element.classList.add(className);
17
- return this;
18
- }
19
- hidden = false;
20
- hide() {
21
- this.element.style.display = "none";
22
- this.hidden = true;
23
- return this;
24
- }
25
- show() {
26
- this.element.style.display = "";
27
- this.hidden = false;
28
- return this;
29
- }
30
- toggle() {
31
- return this.hidden ? this.show() : this.hide();
32
- }
33
- };
34
-
35
- //#endregion
36
- export { $ };
1
+ function e(e){let t=e,n=new Set;return{get(){return t},set(e){t=e,n.forEach(e=>e(t))},subscribe(e){return n.add(e),e(t),()=>n.delete(e)}}}function t(t){return e(t())}function n(e){e()}function r(e){let t=document.querySelector(e);return t?new i(t):null}var i=class{constructor(e){this.element=e}element;on(e,t){return this.element.addEventListener(e,t),this}addClass(e){return this.element.classList.add(e),this}hidden=!1;hide(){return this.element.style.display=`none`,this.hidden=!0,this}show(){return this.element.style.display=``,this.hidden=!1,this}toggle(){return this.hidden?this.show():this.hide(),this}};export{r as $,t as computed,n as effect,e as signal};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@loudy/lib",
3
3
  "type": "module",
4
- "version": "0.0.5",
4
+ "version": "0.0.6",
5
5
  "description": "library for various stuff.",
6
6
  "author": "loudsynth",
7
7
  "license": "MIT",