@solid-primitives/styles 0.0.105 → 0.0.107

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/README.md CHANGED
@@ -44,7 +44,7 @@ createEffect(() => {
44
44
 
45
45
  ### `useRemSize`
46
46
 
47
- This primitive provides a [shared root](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createSharedRoot) variant that will reuse signals, HTML elements and the ResizeObserver instance across all dependents that use it.
47
+ This primitive provides a [singleton root](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createSingletonRoot) variant that will reuse signals, HTML elements and the ResizeObserver instance across all dependents that use it.
48
48
 
49
49
  It's behavior is the same as [`createRemSize`](#createRemSize).
50
50
 
package/dist/index.cjs CHANGED
@@ -1,7 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var rootless = require('@solid-primitives/rootless');
4
3
  var solidJs = require('solid-js');
4
+ var web = require('solid-js/web');
5
+ var rootless = require('@solid-primitives/rootless');
5
6
  var utils = require('@solid-primitives/utils');
6
7
 
7
8
  // src/index.ts
@@ -14,9 +15,12 @@ var totallyHiddenStyles = {
14
15
  top: "-9999px",
15
16
  left: "-9999px"
16
17
  };
17
- exports.getRemSize = () => parseFloat(getComputedStyle(document.documentElement).fontSize);
18
+ exports.getRemSize = () => web.isServer ? serverRemSize : parseFloat(getComputedStyle(document.documentElement).fontSize);
18
19
  function createRemSize() {
19
- const [remSize, setRemSize] = utils.createHydrateSignal(serverRemSize, exports.getRemSize);
20
+ if (web.isServer) {
21
+ return () => serverRemSize;
22
+ }
23
+ const [remSize, setRemSize] = utils.createHydratableSignal(serverRemSize, exports.getRemSize);
20
24
  const el = document.createElement("div");
21
25
  Object.assign(el.style, totallyHiddenStyles, { width: "1rem" });
22
26
  document.body.appendChild(el);
@@ -33,9 +37,10 @@ function createRemSize() {
33
37
  });
34
38
  return remSize;
35
39
  }
36
- var sharedRemSize = /* @__PURE__ */ rootless.createSharedRoot(createRemSize);
37
- exports.useRemSize = () => solidJs.sharedConfig.context ? createRemSize() : sharedRemSize();
38
- exports.setServerRemSize = () => {
40
+ exports.useRemSize = /* @__PURE__ */ rootless.createHydratableSingletonRoot(createRemSize);
41
+ exports.setServerRemSize = web.isServer ? (size) => {
42
+ serverRemSize = size;
43
+ } : () => {
39
44
  };
40
45
 
41
46
  exports.createRemSize = createRemSize;
package/dist/index.d.ts CHANGED
@@ -7,7 +7,7 @@ declare const getRemSize: () => number;
7
7
  /**
8
8
  * Creates a reactive signal with value of the current rem size, and tracks it's changes.
9
9
  * @returns A signal with the current rem size in pixels.
10
- * @see [Primitive documentation](https://github.com/solidjs-community/solid-primitives/tree/main/packages/styles#createRemSize).
10
+ * @see https://github.com/solidjs-community/solid-primitives/tree/main/packages/styles#createRemSize.
11
11
  * @example
12
12
  * const remSize = createRemSize();
13
13
  * console.log(remSize()); // 16
@@ -16,10 +16,10 @@ declare function createRemSize(): Accessor<number>;
16
16
  /**
17
17
  * Returns a reactive signal with value of the current rem size, and tracks it's changes.
18
18
  *
19
- * This is a [shared root primitive](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createSharedRoot) except if during hydration.
19
+ * This is a [singleton root primitive](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createSingletonRoot) except if during hydration.
20
20
  *
21
21
  * @returns A signal with the current rem size in pixels.
22
- * @see [Primitive documentation](https://github.com/solidjs-community/solid-primitives/tree/main/packages/styles#useRemSize).
22
+ * @see https://github.com/solidjs-community/solid-primitives/tree/main/packages/styles#useRemSize.
23
23
  * @example
24
24
  * const remSize = useRemSize();
25
25
  * console.log(remSize()); // 16
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
- import { createSharedRoot } from '@solid-primitives/rootless';
2
- import { onCleanup, sharedConfig } from 'solid-js';
3
- import { createHydrateSignal } from '@solid-primitives/utils';
1
+ import { onCleanup } from 'solid-js';
2
+ import { isServer } from 'solid-js/web';
3
+ import { createHydratableSingletonRoot } from '@solid-primitives/rootless';
4
+ import { createHydratableSignal } from '@solid-primitives/utils';
4
5
 
5
6
  // src/index.ts
6
7
  var serverRemSize = 16;
@@ -12,9 +13,12 @@ var totallyHiddenStyles = {
12
13
  top: "-9999px",
13
14
  left: "-9999px"
14
15
  };
15
- var getRemSize = () => parseFloat(getComputedStyle(document.documentElement).fontSize);
16
+ var getRemSize = () => isServer ? serverRemSize : parseFloat(getComputedStyle(document.documentElement).fontSize);
16
17
  function createRemSize() {
17
- const [remSize, setRemSize] = createHydrateSignal(serverRemSize, getRemSize);
18
+ if (isServer) {
19
+ return () => serverRemSize;
20
+ }
21
+ const [remSize, setRemSize] = createHydratableSignal(serverRemSize, getRemSize);
18
22
  const el = document.createElement("div");
19
23
  Object.assign(el.style, totallyHiddenStyles, { width: "1rem" });
20
24
  document.body.appendChild(el);
@@ -31,9 +35,10 @@ function createRemSize() {
31
35
  });
32
36
  return remSize;
33
37
  }
34
- var sharedRemSize = /* @__PURE__ */ createSharedRoot(createRemSize);
35
- var useRemSize = () => sharedConfig.context ? createRemSize() : sharedRemSize();
36
- var setServerRemSize = () => {
38
+ var useRemSize = /* @__PURE__ */ createHydratableSingletonRoot(createRemSize);
39
+ var setServerRemSize = isServer ? (size) => {
40
+ serverRemSize = size;
41
+ } : () => {
37
42
  };
38
43
 
39
44
  export { createRemSize, getRemSize, setServerRemSize, useRemSize };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solid-primitives/styles",
3
- "version": "0.0.105",
3
+ "version": "0.0.107",
4
4
  "description": "Collection of reactive primitives focused on styles.",
5
5
  "author": "Damian Tarnawski <gthetaranv@gmail.com>",
6
6
  "contributors": [
@@ -29,56 +29,11 @@
29
29
  "files": [
30
30
  "dist"
31
31
  ],
32
- "main": "./dist/server.cjs",
33
- "module": "./dist/server.js",
32
+ "main": "./dist/index.cjs",
33
+ "module": "./dist/index.js",
34
34
  "types": "./dist/index.d.ts",
35
- "browser": {
36
- "./dist/server.js": "./dist/index.js",
37
- "./dist/server.cjs": "./dist/index.cjs"
38
- },
35
+ "browser": {},
39
36
  "exports": {
40
- "worker": {
41
- "import": {
42
- "types": "./dist/index.d.ts",
43
- "default": "./dist/server.js"
44
- },
45
- "require": "./dist/server.cjs"
46
- },
47
- "browser": {
48
- "development": {
49
- "import": {
50
- "types": "./dist/index.d.ts",
51
- "default": "./dist/dev.js"
52
- },
53
- "require": "./dist/dev.cjs"
54
- },
55
- "import": {
56
- "types": "./dist/index.d.ts",
57
- "default": "./dist/index.js"
58
- },
59
- "require": "./dist/index.cjs"
60
- },
61
- "deno": {
62
- "import": {
63
- "types": "./dist/index.d.ts",
64
- "default": "./dist/server.js"
65
- },
66
- "require": "./dist/server.cjs"
67
- },
68
- "node": {
69
- "import": {
70
- "types": "./dist/index.d.ts",
71
- "default": "./dist/server.js"
72
- },
73
- "require": "./dist/server.cjs"
74
- },
75
- "development": {
76
- "import": {
77
- "types": "./dist/index.d.ts",
78
- "default": "./dist/dev.js"
79
- },
80
- "require": "./dist/dev.cjs"
81
- },
82
37
  "import": {
83
38
  "types": "./dist/index.d.ts",
84
39
  "default": "./dist/index.js"
@@ -92,18 +47,18 @@
92
47
  "css"
93
48
  ],
94
49
  "dependencies": {
95
- "@solid-primitives/rootless": "^1.2.6",
96
- "@solid-primitives/utils": "^5.4.0"
50
+ "@solid-primitives/rootless": "^1.3.1",
51
+ "@solid-primitives/utils": "^5.5.1"
97
52
  },
98
53
  "peerDependencies": {
99
- "solid-js": "^1.6.0"
54
+ "solid-js": "^1.6.12"
100
55
  },
101
56
  "typesVersions": {},
102
57
  "scripts": {
103
58
  "start": "vite serve dev --host",
104
59
  "dev": "vite serve dev",
105
60
  "page": "vite build dev",
106
- "build": "jiti ../../scripts/build.ts --ssr --dev",
61
+ "build": "jiti ../../scripts/build.ts",
107
62
  "test": "vitest -c ../../configs/vitest.config.ts",
108
63
  "test:ssr": "pnpm run test --mode ssr"
109
64
  }
package/dist/dev.cjs DELETED
@@ -1,41 +0,0 @@
1
- 'use strict';
2
-
3
- var rootless = require('@solid-primitives/rootless');
4
- var solidJs = require('solid-js');
5
- var utils = require('@solid-primitives/utils');
6
-
7
- // src/index.ts
8
- var serverRemSize = 16;
9
- var totallyHiddenStyles = {
10
- border: "0",
11
- padding: "0",
12
- visibility: "hidden",
13
- position: "absolute",
14
- top: "-9999px",
15
- left: "-9999px"
16
- };
17
- exports.getRemSize = () => parseFloat(getComputedStyle(document.documentElement).fontSize);
18
- function createRemSize() {
19
- const [remSize, setRemSize] = utils.createHydrateSignal(serverRemSize, exports.getRemSize);
20
- const el = document.createElement("div");
21
- Object.assign(el.style, totallyHiddenStyles, { width: "1rem" });
22
- document.body.appendChild(el);
23
- let init = true;
24
- const ro = new ResizeObserver(() => {
25
- if (init)
26
- return init = false;
27
- setRemSize(exports.getRemSize());
28
- });
29
- ro.observe(el);
30
- solidJs.onCleanup(() => {
31
- el.remove();
32
- ro.disconnect();
33
- });
34
- return remSize;
35
- }
36
- var sharedRemSize = /* @__PURE__ */ rootless.createSharedRoot(createRemSize);
37
- exports.useRemSize = () => solidJs.sharedConfig.context ? createRemSize() : sharedRemSize();
38
- exports.setServerRemSize = () => {
39
- };
40
-
41
- exports.createRemSize = createRemSize;
package/dist/dev.js DELETED
@@ -1,39 +0,0 @@
1
- import { createSharedRoot } from '@solid-primitives/rootless';
2
- import { onCleanup, sharedConfig } from 'solid-js';
3
- import { createHydrateSignal } from '@solid-primitives/utils';
4
-
5
- // src/index.ts
6
- var serverRemSize = 16;
7
- var totallyHiddenStyles = {
8
- border: "0",
9
- padding: "0",
10
- visibility: "hidden",
11
- position: "absolute",
12
- top: "-9999px",
13
- left: "-9999px"
14
- };
15
- var getRemSize = () => parseFloat(getComputedStyle(document.documentElement).fontSize);
16
- function createRemSize() {
17
- const [remSize, setRemSize] = createHydrateSignal(serverRemSize, getRemSize);
18
- const el = document.createElement("div");
19
- Object.assign(el.style, totallyHiddenStyles, { width: "1rem" });
20
- document.body.appendChild(el);
21
- let init = true;
22
- const ro = new ResizeObserver(() => {
23
- if (init)
24
- return init = false;
25
- setRemSize(getRemSize());
26
- });
27
- ro.observe(el);
28
- onCleanup(() => {
29
- el.remove();
30
- ro.disconnect();
31
- });
32
- return remSize;
33
- }
34
- var sharedRemSize = /* @__PURE__ */ createSharedRoot(createRemSize);
35
- var useRemSize = () => sharedConfig.context ? createRemSize() : sharedRemSize();
36
- var setServerRemSize = () => {
37
- };
38
-
39
- export { createRemSize, getRemSize, setServerRemSize, useRemSize };
package/dist/server.cjs DELETED
@@ -1,20 +0,0 @@
1
- 'use strict';
2
-
3
- require('@solid-primitives/rootless');
4
- require('solid-js');
5
- require('@solid-primitives/utils');
6
-
7
- // src/index.ts
8
- var serverRemSize = 16;
9
- exports.getRemSize = () => serverRemSize ;
10
- function createRemSize() {
11
- {
12
- return () => serverRemSize;
13
- }
14
- }
15
- exports.useRemSize = () => () => serverRemSize ;
16
- exports.setServerRemSize = (size) => {
17
- serverRemSize = size;
18
- } ;
19
-
20
- exports.createRemSize = createRemSize;
package/dist/server.js DELETED
@@ -1,18 +0,0 @@
1
- import '@solid-primitives/rootless';
2
- import 'solid-js';
3
- import '@solid-primitives/utils';
4
-
5
- // src/index.ts
6
- var serverRemSize = 16;
7
- var getRemSize = () => serverRemSize ;
8
- function createRemSize() {
9
- {
10
- return () => serverRemSize;
11
- }
12
- }
13
- var useRemSize = () => () => serverRemSize ;
14
- var setServerRemSize = (size) => {
15
- serverRemSize = size;
16
- } ;
17
-
18
- export { createRemSize, getRemSize, setServerRemSize, useRemSize };