@solidjs/web 2.0.0-experimental.3 → 2.0.0-experimental.4

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/server.cjs CHANGED
@@ -505,6 +505,29 @@ function resolveSSRNode(node, top) {
505
505
  if (t === "function") return resolveSSRNode(node());
506
506
  return String(node);
507
507
  }
508
+ function mergeProps(...sources) {
509
+ const target = {};
510
+ for (let i = 0; i < sources.length; i++) {
511
+ let source = sources[i];
512
+ if (typeof source === "function") source = source();
513
+ if (source) {
514
+ const descriptors = Object.getOwnPropertyDescriptors(source);
515
+ for (const key in descriptors) {
516
+ if (key in target) continue;
517
+ Object.defineProperty(target, key, {
518
+ enumerable: true,
519
+ get() {
520
+ for (let i = sources.length - 1; i >= 0; i--) {
521
+ const v = (sources[i] || {})[key];
522
+ if (v !== undefined) return v;
523
+ }
524
+ }
525
+ });
526
+ }
527
+ }
528
+ }
529
+ return target;
530
+ }
508
531
  function getHydrationKey() {
509
532
  const hydrate = solidJs.sharedConfig.context;
510
533
  return hydrate && !hydrate.noHydrate && solidJs.sharedConfig.getNextContextId();
@@ -618,11 +641,11 @@ function createDynamic(component, props) {
618
641
  }
619
642
  }
620
643
  function Dynamic(props) {
621
- const [, others] = solidJs.splitProps(props, ["component"]);
644
+ const others = solidJs.omit(props, "component");
622
645
  return createDynamic(() => props.component, others);
623
646
  }
624
647
  function Portal(props) {
625
- return "";
648
+ throw new Error("Portal is not supported on the server");
626
649
  }
627
650
 
628
651
  Object.defineProperty(exports, "ErrorBoundary", {
@@ -633,14 +656,14 @@ Object.defineProperty(exports, "For", {
633
656
  enumerable: true,
634
657
  get: function () { return solidJs.For; }
635
658
  });
636
- Object.defineProperty(exports, "Index", {
637
- enumerable: true,
638
- get: function () { return solidJs.Index; }
639
- });
640
659
  Object.defineProperty(exports, "Match", {
641
660
  enumerable: true,
642
661
  get: function () { return solidJs.Match; }
643
662
  });
663
+ Object.defineProperty(exports, "Repeat", {
664
+ enumerable: true,
665
+ get: function () { return solidJs.Repeat; }
666
+ });
644
667
  Object.defineProperty(exports, "Show", {
645
668
  enumerable: true,
646
669
  get: function () { return solidJs.Show; }
@@ -649,10 +672,6 @@ Object.defineProperty(exports, "Suspense", {
649
672
  enumerable: true,
650
673
  get: function () { return solidJs.Suspense; }
651
674
  });
652
- Object.defineProperty(exports, "SuspenseList", {
653
- enumerable: true,
654
- get: function () { return solidJs.SuspenseList; }
655
- });
656
675
  Object.defineProperty(exports, "Switch", {
657
676
  enumerable: true,
658
677
  get: function () { return solidJs.Switch; }
@@ -673,10 +692,6 @@ Object.defineProperty(exports, "memo", {
673
692
  enumerable: true,
674
693
  get: function () { return solidJs.createMemo; }
675
694
  });
676
- Object.defineProperty(exports, "mergeProps", {
677
- enumerable: true,
678
- get: function () { return solidJs.mergeProps; }
679
- });
680
695
  Object.defineProperty(exports, "untrack", {
681
696
  enumerable: true,
682
697
  get: function () { return solidJs.untrack; }
@@ -713,6 +728,7 @@ exports.hydrate = notSup;
713
728
  exports.insert = notSup;
714
729
  exports.isDev = isDev;
715
730
  exports.isServer = isServer;
731
+ exports.mergeProps = mergeProps;
716
732
  exports.render = notSup;
717
733
  exports.renderToStream = renderToStream;
718
734
  exports.renderToString = renderToString;
package/dist/server.js CHANGED
@@ -1,18 +1,16 @@
1
- import { sharedConfig, createRoot, splitProps } from "solid-js";
1
+ import { sharedConfig, createRoot, omit } from "solid-js";
2
2
  export {
3
3
  ErrorBoundary,
4
4
  For,
5
- Index,
6
5
  Match,
6
+ Repeat,
7
7
  Show,
8
8
  Suspense,
9
- SuspenseList,
10
9
  Switch,
11
10
  createComponent,
12
11
  createRenderEffect as effect,
13
12
  getOwner,
14
13
  createMemo as memo,
15
- mergeProps,
16
14
  untrack
17
15
  } from "solid-js";
18
16
  import { Feature, Serializer, getCrossReferenceHeader } from "seroval";
@@ -965,6 +963,29 @@ function resolveSSRNode(node, top) {
965
963
  if (t === "function") return resolveSSRNode(node());
966
964
  return String(node);
967
965
  }
966
+ function mergeProps(...sources) {
967
+ const target = {};
968
+ for (let i = 0; i < sources.length; i++) {
969
+ let source = sources[i];
970
+ if (typeof source === "function") source = source();
971
+ if (source) {
972
+ const descriptors = Object.getOwnPropertyDescriptors(source);
973
+ for (const key in descriptors) {
974
+ if (key in target) continue;
975
+ Object.defineProperty(target, key, {
976
+ enumerable: true,
977
+ get() {
978
+ for (let i = sources.length - 1; i >= 0; i--) {
979
+ const v = (sources[i] || {})[key];
980
+ if (v !== undefined) return v;
981
+ }
982
+ }
983
+ });
984
+ }
985
+ }
986
+ }
987
+ return target;
988
+ }
968
989
  function getHydrationKey() {
969
990
  const hydrate = sharedConfig.context;
970
991
  return hydrate && !hydrate.noHydrate && sharedConfig.getNextContextId();
@@ -1090,11 +1111,11 @@ function createDynamic(component, props) {
1090
1111
  }
1091
1112
  }
1092
1113
  function Dynamic(props) {
1093
- const [, others] = splitProps(props, ["component"]);
1114
+ const others = omit(props, "component");
1094
1115
  return createDynamic(() => props.component, others);
1095
1116
  }
1096
1117
  function Portal(props) {
1097
- return "";
1118
+ throw new Error("Portal is not supported on the server");
1098
1119
  }
1099
1120
 
1100
1121
  export {
@@ -1130,6 +1151,7 @@ export {
1130
1151
  notSup as insert,
1131
1152
  isDev,
1132
1153
  isServer,
1154
+ mergeProps,
1133
1155
  notSup as render,
1134
1156
  renderToStream,
1135
1157
  renderToString,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@solidjs/web",
3
3
  "description": "Solid's web runtime for the browser and the server",
4
- "version": "2.0.0-experimental.3",
4
+ "version": "2.0.0-experimental.4",
5
5
  "author": "Ryan Carniato",
6
6
  "license": "MIT",
7
7
  "homepage": "https://solidjs.com",
@@ -75,10 +75,10 @@
75
75
  "seroval-plugins": "^1.1.0"
76
76
  },
77
77
  "peerDependencies": {
78
- "solid-js": "^2.0.0-experimental.3"
78
+ "solid-js": "^2.0.0-experimental.4"
79
79
  },
80
80
  "devDependencies": {
81
- "solid-js": "2.0.0-experimental.3"
81
+ "solid-js": "2.0.0-experimental.4"
82
82
  },
83
83
  "scripts": {
84
84
  "build": "npm-run-all -nl build:*",