sinwan 1.0.0 → 1.1.0

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 (47) hide show
  1. package/dist/cjs/index.development.js +962 -94
  2. package/dist/cjs/index.development.js.map +14 -13
  3. package/dist/cjs/index.production.min.js +2 -2
  4. package/dist/cjs/index.production.min.js.map +14 -13
  5. package/dist/cjs/renderer/index.development.js +419 -13
  6. package/dist/cjs/renderer/index.development.js.map +9 -8
  7. package/dist/cjs/renderer/index.production.min.js +2 -2
  8. package/dist/cjs/renderer/index.production.min.js.map +9 -8
  9. package/dist/cjs/server/index.development.js +560 -48
  10. package/dist/cjs/server/index.development.js.map +9 -7
  11. package/dist/cjs/server/index.production.min.js +2 -2
  12. package/dist/cjs/server/index.production.min.js.map +9 -7
  13. package/dist/component/control-flow.d.ts +54 -1
  14. package/dist/component/control-flow.d.ts.map +1 -1
  15. package/dist/component/index.d.ts +2 -2
  16. package/dist/component/index.d.ts.map +1 -1
  17. package/dist/esm/index.development.js +962 -94
  18. package/dist/esm/index.development.js.map +14 -13
  19. package/dist/esm/index.production.min.js +2 -2
  20. package/dist/esm/index.production.min.js.map +14 -13
  21. package/dist/esm/renderer/index.development.js +419 -13
  22. package/dist/esm/renderer/index.development.js.map +9 -8
  23. package/dist/esm/renderer/index.production.min.js +2 -2
  24. package/dist/esm/renderer/index.production.min.js.map +9 -8
  25. package/dist/esm/server/index.development.js +560 -48
  26. package/dist/esm/server/index.development.js.map +9 -7
  27. package/dist/esm/server/index.production.min.js +2 -2
  28. package/dist/esm/server/index.production.min.js.map +9 -7
  29. package/dist/hydration/walk.d.ts.map +1 -1
  30. package/dist/index.d.ts +2 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/renderer/attributes.d.ts +11 -0
  33. package/dist/renderer/attributes.d.ts.map +1 -1
  34. package/dist/renderer/index.d.ts +1 -1
  35. package/dist/renderer/index.d.ts.map +1 -1
  36. package/dist/renderer/render-control-flow.d.ts +3 -3
  37. package/dist/renderer/render-control-flow.d.ts.map +1 -1
  38. package/dist/renderer/render-element.d.ts.map +1 -1
  39. package/dist/renderer/types.d.ts +8 -1
  40. package/dist/renderer/types.d.ts.map +1 -1
  41. package/dist/renderer/unmount.d.ts.map +1 -1
  42. package/dist/server/attribute-utils.d.ts +2 -0
  43. package/dist/server/attribute-utils.d.ts.map +1 -0
  44. package/dist/server/hydration-markers.d.ts.map +1 -1
  45. package/dist/server/renderer.d.ts.map +1 -1
  46. package/dist/server/stream.d.ts.map +1 -1
  47. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"render-element.d.ts","sourceRoot":"","sources":["../../src/renderer/render-element.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAoC,MAAM,YAAY,CAAC;AAsChF;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,IAAI,EACZ,MAAM,GAAE,IAAI,GAAG,IAAW,EAC1B,SAAS,GAAE,MAAM,GAAG,IAAW,GAC9B,WAAW,CA8Bb"}
1
+ {"version":3,"file":"render-element.d.ts","sourceRoot":"","sources":["../../src/renderer/render-element.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAoC,MAAM,YAAY,CAAC;AAsDhF;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,IAAI,EACZ,MAAM,GAAE,IAAI,GAAG,IAAW,EAC1B,SAAS,GAAE,MAAM,GAAG,IAAW,GAC9B,WAAW,CAkDb"}
@@ -53,8 +53,15 @@ export interface MountedComponent {
53
53
  /** The ComponentInstance for lifecycle hooks (null for anonymous renders). */
54
54
  instance: ComponentInstance | null;
55
55
  }
56
+ /** A mounted portal whose children live under a target outside its source tree. */
57
+ export interface MountedPortal {
58
+ type: "portal";
59
+ anchor: Comment;
60
+ children: MountedNode[];
61
+ dispose: CleanupFn;
62
+ }
56
63
  /** Union of all mounted node types. */
57
- export type MountedNode = MountedText | MountedReactiveText | MountedElement | MountedFragment | MountedReactiveBlock | MountedComponent;
64
+ export type MountedNode = MountedText | MountedReactiveText | MountedElement | MountedFragment | MountedReactiveBlock | MountedComponent | MountedPortal;
58
65
  /** Handle returned by mount(). Allows unmounting the app. */
59
66
  export interface AppInstance {
60
67
  /** The root mounted node tree. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/renderer/types.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,0BAA0B;AAC1B,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,yEAAyE;AACzE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,wDAAwD;IACxD,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,wCAAwC;IACxC,UAAU,EAAE,SAAS,GAAG,IAAI,CAAC;CAC9B;AAED,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,2CAA2C;IAC3C,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,gFAAgF;AAChF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,wDAAwD;IACxD,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,oBAAoB;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,oCAAoC;AACpC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,8EAA8E;IAC9E,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACpC;AAED,uCAAuC;AACvC,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,mBAAmB,GACnB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,gBAAgB,CAAC;AAIrB,6DAA6D;AAC7D,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,IAAI,EAAE,WAAW,CAAC;IAClB,mEAAmE;IACnE,OAAO,IAAI,IAAI,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/renderer/types.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,0BAA0B;AAC1B,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,yEAAyE;AACzE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,wDAAwD;IACxD,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,wCAAwC;IACxC,UAAU,EAAE,SAAS,GAAG,IAAI,CAAC;CAC9B;AAED,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,2CAA2C;IAC3C,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,gFAAgF;AAChF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,wDAAwD;IACxD,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,oBAAoB;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,oCAAoC;AACpC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,8EAA8E;IAC9E,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACpC;AAED,mFAAmF;AACnF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,uCAAuC;AACvC,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,mBAAmB,GACnB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,aAAa,CAAC;AAIlB,6DAA6D;AAC7D,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,IAAI,EAAE,WAAW,CAAC;IAClB,mEAAmE;IACnE,OAAO,IAAI,IAAI,CAAC;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"unmount.d.ts","sourceRoot":"","sources":["../../src/renderer/unmount.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAI9C;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,EAAE,CAyB5D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAgDnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAQzD"}
1
+ {"version":3,"file":"unmount.d.ts","sourceRoot":"","sources":["../../src/renderer/unmount.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAI9C;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,EAAE,CA4B5D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAwDnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAQzD"}
@@ -0,0 +1,2 @@
1
+ export declare function renderServerAttribute(key: string, value: unknown): string;
2
+ //# sourceMappingURL=attribute-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attribute-utils.d.ts","sourceRoot":"","sources":["../../src/server/attribute-utils.ts"],"names":[],"mappings":"AASA,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAmBzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"hydration-markers.d.ts","sourceRoot":"","sources":["../../src/server/hydration-markers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAiB,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAiC9E;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,CAmBjB;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,MAAM,CAAC,CAGjB"}
1
+ {"version":3,"file":"hydration-markers.d.ts","sourceRoot":"","sources":["../../src/server/hydration-markers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAiB,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoD9E;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,CAmBjB;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,MAAM,CAAC,CAGjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/server/renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,UAAU,EAGV,UAAU,EACV,WAAW,EACZ,MAAM,aAAa,CAAC;AAarB;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EAChD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAClB,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EAC3C,IAAI,EAAE,MAAM,GACX,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAE3B;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7C;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EACpD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,GACN,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAyCtE;AA4ID;;GAEG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,WAAW,CAOlE"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/server/renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,UAAU,EAGV,UAAU,EACV,WAAW,EACZ,MAAM,aAAa,CAAC;AAgCrB;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EAChD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAClB,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EAC3C,IAAI,EAAE,MAAM,GACX,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAE3B;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7C;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EACpD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,GACN,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAyCtE;AA0KD;;GAEG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,WAAW,CAOlE"}
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/server/stream.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,UAAU,EAEV,UAAU,EACV,eAAe,EAChB,MAAM,aAAa,CAAC;AAoDrB;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EAC9C,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EACnB,IAAI,EAAE,CAAC,GACN,cAAc,CAAC,UAAU,CAAC,CAmB5B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,cAAc,CAAC,UAAU,CAAC,CAqB5B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,GACf,cAAc,CAAC,UAAU,CAAC,CAc5B"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/server/stream.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,UAAU,EAEV,UAAU,EACV,eAAe,EAChB,MAAM,aAAa,CAAC;AAkErB;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,EAC9C,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EACnB,IAAI,EAAE,CAAC,GACN,cAAc,CAAC,UAAU,CAAC,CAmB5B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,cAAc,CAAC,UAAU,CAAC,CAqB5B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,GACf,cAAc,CAAC,UAAU,CAAC,CAc5B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sinwan",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Sinwan — Reactive UI library with SSR, hydration, and fine-grained reactivity",
5
5
  "type": "commonjs",
6
6
  "main": "./dist/index.js",
@@ -89,7 +89,7 @@
89
89
  "build": "bun run build.ts",
90
90
  "build:types": "tsc -p tsconfig.build.json",
91
91
  "clean": "rm -rf dist",
92
- "prepublishOnly": "bun run build",
92
+ "prepublishOnly": "bun run build && bun run build:types && bun run test && bun run typecheck",
93
93
  "test": "bun test",
94
94
  "typecheck": "tsc --noEmit"
95
95
  },
@@ -107,12 +107,12 @@
107
107
  ],
108
108
  "author": "Mohammed Ben Cheikh",
109
109
  "license": "MIT",
110
- "bugs": "https://github.com/sinwanjs/sinwan/issues",
110
+ "bugs": "https://github.com/sinwanjs/sinwan-ui/issues",
111
111
  "homepage": "https://sinwanjs.com",
112
112
  "repository": {
113
113
  "type": "git",
114
- "url": "https://github.com/sinwanjs/sinwan",
115
- "directory": "sinwan"
114
+ "url": "https://github.com/sinwanjs/sinwan-ui",
115
+ "directory": "sinwan-ui"
116
116
  },
117
117
  "devDependencies": {
118
118
  "@types/bun": "latest",