@fluxdown/solid 0.0.0-stage → 0.2.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 (106) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/LICENSE +21 -0
  3. package/README.md +2 -2
  4. package/dist/cjs/assets/raw-Dob3BCyv.css +56 -0
  5. package/dist/cjs/chunks/raw-DlzW8_Im.cjs +609 -0
  6. package/dist/cjs/components/block-reconciler/index.d.cts +2 -0
  7. package/dist/cjs/components/block-reconciler/type.d.cts +22 -0
  8. package/dist/cjs/components/block-reconciler/utils.d.cts +2 -0
  9. package/dist/cjs/components/index.d.cts +2 -0
  10. package/dist/cjs/components/root-reconciler/index.d.cts +6 -0
  11. package/dist/cjs/consts/config.d.cts +2 -0
  12. package/dist/cjs/consts/defaults.d.cts +2 -0
  13. package/dist/cjs/consts/index.d.cts +4 -0
  14. package/dist/cjs/consts/smooth.d.cts +3 -0
  15. package/dist/cjs/consts/styles.d.cts +1 -0
  16. package/dist/cjs/context/index.d.cts +1 -0
  17. package/dist/cjs/context/render/index.d.cts +6 -0
  18. package/dist/cjs/env.d.cts +1 -0
  19. package/dist/cjs/full.browser.cjs +2 -0
  20. package/dist/cjs/full.cjs +13 -0
  21. package/dist/cjs/hooks/index.d.cts +1 -0
  22. package/dist/cjs/hooks/plugins.d.cts +6 -0
  23. package/dist/cjs/lite.browser.cjs +2 -0
  24. package/dist/cjs/lite.cjs +13 -0
  25. package/dist/cjs/modules/index.d.cts +1 -0
  26. package/dist/cjs/modules/solid-renderer/index.d.cts +9 -0
  27. package/dist/cjs/modules/solid-renderer/type.d.cts +4 -0
  28. package/dist/cjs/packs/full/index.d.cts +5 -0
  29. package/dist/cjs/packs/full/type.d.cts +3 -0
  30. package/dist/cjs/packs/lite/index.d.cts +5 -0
  31. package/dist/cjs/packs/lite/type.d.cts +3 -0
  32. package/dist/cjs/packs/raw/index.d.cts +5 -0
  33. package/dist/cjs/packs/raw/type.d.cts +77 -0
  34. package/dist/cjs/packs/raw/utils.d.cts +2 -0
  35. package/dist/cjs/packs/utils/config.d.cts +13 -0
  36. package/dist/cjs/packs/utils/effect.d.cts +4 -0
  37. package/dist/cjs/packs/utils/index.d.cts +3 -0
  38. package/dist/cjs/packs/utils/patches.d.cts +2 -0
  39. package/dist/cjs/raw.browser.cjs +2 -0
  40. package/dist/cjs/raw.cjs +3 -0
  41. package/dist/cjs/server/full.cjs +13 -0
  42. package/dist/cjs/server/lite.cjs +13 -0
  43. package/dist/cjs/server/raw.cjs +593 -0
  44. package/dist/cjs/styles.css +2 -0
  45. package/dist/cjs/theme/consts.d.cts +4 -0
  46. package/dist/cjs/theme/hooks.d.cts +2 -0
  47. package/dist/cjs/theme/index.d.cts +1 -0
  48. package/dist/cjs/theme/presets/base.d.cts +2 -0
  49. package/dist/cjs/theme/presets/dark.d.cts +2 -0
  50. package/dist/cjs/theme/presets/index.d.cts +4 -0
  51. package/dist/cjs/theme/presets/light.d.cts +2 -0
  52. package/dist/cjs/theme/utils.d.cts +4 -0
  53. package/dist/cjs/types/index.d.cts +2 -0
  54. package/dist/cjs/types/theme.d.cts +138 -0
  55. package/dist/esm/assets/raw-Dob3BCyv.css +56 -0
  56. package/dist/esm/chunks/raw-ULd4Y10B.js +598 -0
  57. package/dist/esm/components/block-reconciler/index.d.ts +2 -0
  58. package/dist/esm/components/block-reconciler/type.d.ts +22 -0
  59. package/dist/esm/components/block-reconciler/utils.d.ts +2 -0
  60. package/dist/esm/components/index.d.ts +2 -0
  61. package/dist/esm/components/root-reconciler/index.d.ts +6 -0
  62. package/dist/esm/consts/config.d.ts +2 -0
  63. package/dist/esm/consts/defaults.d.ts +2 -0
  64. package/dist/esm/consts/index.d.ts +4 -0
  65. package/dist/esm/consts/smooth.d.ts +3 -0
  66. package/dist/esm/consts/styles.d.ts +1 -0
  67. package/dist/esm/context/index.d.ts +1 -0
  68. package/dist/esm/context/render/index.d.ts +6 -0
  69. package/dist/esm/env.d.ts +1 -0
  70. package/dist/esm/full.browser.js +2 -0
  71. package/dist/esm/full.js +12 -0
  72. package/dist/esm/hooks/index.d.ts +1 -0
  73. package/dist/esm/hooks/plugins.d.ts +6 -0
  74. package/dist/esm/lite.browser.js +2 -0
  75. package/dist/esm/lite.js +12 -0
  76. package/dist/esm/modules/index.d.ts +1 -0
  77. package/dist/esm/modules/solid-renderer/index.d.ts +9 -0
  78. package/dist/esm/modules/solid-renderer/type.d.ts +4 -0
  79. package/dist/esm/packs/full/index.d.ts +5 -0
  80. package/dist/esm/packs/full/type.d.ts +3 -0
  81. package/dist/esm/packs/lite/index.d.ts +5 -0
  82. package/dist/esm/packs/lite/type.d.ts +3 -0
  83. package/dist/esm/packs/raw/index.d.ts +5 -0
  84. package/dist/esm/packs/raw/type.d.ts +77 -0
  85. package/dist/esm/packs/raw/utils.d.ts +2 -0
  86. package/dist/esm/packs/utils/config.d.ts +13 -0
  87. package/dist/esm/packs/utils/effect.d.ts +4 -0
  88. package/dist/esm/packs/utils/index.d.ts +3 -0
  89. package/dist/esm/packs/utils/patches.d.ts +2 -0
  90. package/dist/esm/raw.browser.js +2 -0
  91. package/dist/esm/raw.js +2 -0
  92. package/dist/esm/server/full.js +12 -0
  93. package/dist/esm/server/lite.js +12 -0
  94. package/dist/esm/server/raw.js +591 -0
  95. package/dist/esm/styles.css +2 -0
  96. package/dist/esm/theme/consts.d.ts +4 -0
  97. package/dist/esm/theme/hooks.d.ts +2 -0
  98. package/dist/esm/theme/index.d.ts +1 -0
  99. package/dist/esm/theme/presets/base.d.ts +2 -0
  100. package/dist/esm/theme/presets/dark.d.ts +2 -0
  101. package/dist/esm/theme/presets/index.d.ts +4 -0
  102. package/dist/esm/theme/presets/light.d.ts +2 -0
  103. package/dist/esm/theme/utils.d.ts +4 -0
  104. package/dist/esm/types/index.d.ts +2 -0
  105. package/dist/esm/types/theme.d.ts +138 -0
  106. package/package.json +121 -3
@@ -0,0 +1,138 @@
1
+ export interface ThemeTokens {
2
+ /**
3
+ * Foreground, background, border, and interaction colors.
4
+ */
5
+ colors: {
6
+ fg: string;
7
+ fgMuted: string;
8
+ bg: string;
9
+ border: string;
10
+ accent: string;
11
+ accentHover: string;
12
+ surfaceMuted: string;
13
+ surfaceSubtle: string;
14
+ borderEmphasis: string;
15
+ };
16
+ /**
17
+ * Shared font families, sizes, line heights, and weights.
18
+ */
19
+ typography: {
20
+ fontSans: string;
21
+ fontMono: string;
22
+ fontSmoothing: string;
23
+ fontSize: {
24
+ xs: string;
25
+ sm: string;
26
+ md: string;
27
+ };
28
+ lineHeight: {
29
+ sm: number | string;
30
+ md: number | string;
31
+ lg: number | string;
32
+ };
33
+ fontWeight: {
34
+ normal: number | string;
35
+ medium: number | string;
36
+ bold: number | string;
37
+ };
38
+ };
39
+ /**
40
+ * Typography and spacing for each heading level.
41
+ */
42
+ heading: Record<'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6', HeadingThemeTokens>;
43
+ /**
44
+ * Vertical spacing around paragraphs.
45
+ */
46
+ paragraph: {
47
+ marginTop: string;
48
+ marginBottom: string;
49
+ };
50
+ /**
51
+ * Font size and line height for fenced code blocks.
52
+ */
53
+ code: {
54
+ fontSize: string;
55
+ lineHeight: number | string;
56
+ };
57
+ /**
58
+ * Presentation of inline code outside preformatted blocks.
59
+ */
60
+ inlineCode: {
61
+ paddingBlock: string;
62
+ paddingInline: string;
63
+ border: string;
64
+ borderRadius: string;
65
+ background: string;
66
+ fontFamily: string;
67
+ fontSize: string;
68
+ whiteSpace: string;
69
+ };
70
+ /**
71
+ * Dimensions, spacing, and borders of thematic breaks.
72
+ */
73
+ divider: {
74
+ height: string;
75
+ marginBlock: string;
76
+ marginInline: string;
77
+ border: string;
78
+ borderBlockEnd: string;
79
+ background: string;
80
+ };
81
+ /**
82
+ * Spacing, border, and typography of the footnotes section.
83
+ */
84
+ footnotes: {
85
+ marginTop: string;
86
+ paddingTop: string;
87
+ borderTop: string;
88
+ color: string;
89
+ fontSize: string;
90
+ };
91
+ /**
92
+ * Colors for syntax highlighting token categories.
93
+ */
94
+ syntax: {
95
+ comment: string;
96
+ keyword: string;
97
+ string: string;
98
+ number: string;
99
+ function: string;
100
+ variable: string;
101
+ punctuation: string;
102
+ inserted: string;
103
+ deleted: string;
104
+ };
105
+ /**
106
+ * Border radii shared by slot containers and controls.
107
+ */
108
+ radius: {
109
+ sm: string;
110
+ md: string;
111
+ lg: string;
112
+ };
113
+ /**
114
+ * Spacing scale for margins, padding, and gaps.
115
+ */
116
+ spacing: {
117
+ xs: string;
118
+ sm: string;
119
+ md: string;
120
+ lg: string;
121
+ xl: string;
122
+ };
123
+ }
124
+ export interface HeadingThemeTokens {
125
+ fontSize: string;
126
+ fontWeight: number;
127
+ lineHeight: number | string;
128
+ marginTop: string;
129
+ marginBottom: string;
130
+ }
131
+ export interface ThemeConfig {
132
+ tokens: ThemeTokens;
133
+ }
134
+ export type PartialThemeConfig<T = ThemeConfig> = {
135
+ [K in keyof T]?: T[K] extends object ? PartialThemeConfig<T[K]> : T[K];
136
+ };
137
+ export type PresetKeys = 'light' | 'dark';
138
+ export type Theme = PresetKeys | PartialThemeConfig | [PresetKeys, PartialThemeConfig];
package/package.json CHANGED
@@ -1,6 +1,124 @@
1
1
  {
2
2
  "name": "@fluxdown/solid",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "0.2.0",
4
+ "description": "Solid components for streaming Markdown.",
5
+ "keywords": [
6
+ "hast",
7
+ "llm",
8
+ "markdown",
9
+ "renderer",
10
+ "solid",
11
+ "streaming"
12
+ ],
13
+ "homepage": "https://hexmora.github.io/fluxdown/",
14
+ "bugs": {
15
+ "url": "https://github.com/hexmora/fluxdown/issues"
16
+ },
17
+ "license": "MIT",
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+https://github.com/hexmora/fluxdown.git",
21
+ "directory": "packages/solid"
22
+ },
23
+ "files": [
24
+ "dist/esm",
25
+ "dist/cjs",
26
+ "CHANGELOG.md"
27
+ ],
28
+ "type": "module",
29
+ "sideEffects": [
30
+ "**/*.css",
31
+ "**/*.scss",
32
+ "**/*.less",
33
+ "./dist/esm/**/*.browser.js",
34
+ "./dist/cjs/**/*.browser.cjs"
35
+ ],
36
+ "main": "./dist/cjs/server/full.cjs",
37
+ "module": "./dist/esm/full.browser.js",
38
+ "types": "./dist/esm/packs/full/index.d.ts",
39
+ "exports": {
40
+ ".": {
41
+ "import": {
42
+ "types": "./dist/esm/packs/full/index.d.ts",
43
+ "worker": "./dist/esm/server/full.js",
44
+ "deno": "./dist/esm/server/full.js",
45
+ "browser": "./dist/esm/full.browser.js",
46
+ "node": "./dist/esm/server/full.js",
47
+ "default": "./dist/esm/full.browser.js"
48
+ },
49
+ "require": {
50
+ "types": "./dist/cjs/packs/full/index.d.cts",
51
+ "worker": "./dist/cjs/server/full.cjs",
52
+ "deno": "./dist/cjs/server/full.cjs",
53
+ "browser": "./dist/cjs/full.browser.cjs",
54
+ "node": "./dist/cjs/server/full.cjs",
55
+ "default": "./dist/cjs/full.browser.cjs"
56
+ }
57
+ },
58
+ "./*": {
59
+ "import": {
60
+ "types": "./dist/esm/packs/*/index.d.ts",
61
+ "worker": "./dist/esm/server/*.js",
62
+ "deno": "./dist/esm/server/*.js",
63
+ "browser": "./dist/esm/*.browser.js",
64
+ "node": "./dist/esm/server/*.js",
65
+ "default": "./dist/esm/*.browser.js"
66
+ },
67
+ "require": {
68
+ "types": "./dist/cjs/packs/*/index.d.cts",
69
+ "worker": "./dist/cjs/server/*.cjs",
70
+ "deno": "./dist/cjs/server/*.cjs",
71
+ "browser": "./dist/cjs/*.browser.cjs",
72
+ "node": "./dist/cjs/server/*.cjs",
73
+ "default": "./dist/cjs/*.browser.cjs"
74
+ }
75
+ },
76
+ "./styles.css": "./dist/esm/styles.css"
77
+ },
78
+ "publishConfig": {
79
+ "access": "public"
80
+ },
81
+ "dependencies": {
82
+ "@fluxdown/core": "^0.12.6",
83
+ "@fluxdown/core-plugins": "^0.12.3",
84
+ "@fluxdown/solid-plugins": "^0.2.0",
85
+ "@fluxdown/types": "^0.10.1",
86
+ "@fluxdown/utils": "^0.7.2",
87
+ "lodash-es": "^4.18.1",
88
+ "shallow-equal": "^3.1.0",
89
+ "stative": "^2.1.0"
90
+ },
91
+ "devDependencies": {
92
+ "@solidjs/testing-library": "^0.8.10",
93
+ "@storybook/addon-docs": "^10.4.4",
94
+ "@testing-library/jest-dom": "^6.9.1",
95
+ "@types/hast": "^3.0.4",
96
+ "@types/lodash-es": "^4.17.12",
97
+ "@types/node": "^25.9.3",
98
+ "jsdom": "29.0.0",
99
+ "oxlint": "^1.69.0",
100
+ "sass": "^1.103.1",
101
+ "solid-js": "^1.9.17",
102
+ "storybook": "^10.5.3",
103
+ "storybook-solidjs-vite": "10.7.4",
104
+ "typescript": "7.0.2",
105
+ "vite": "^8.0.16",
106
+ "vite-plugin-solid": "^2.11.14",
107
+ "vitest": "^5.0.5"
108
+ },
109
+ "peerDependencies": {
110
+ "solid-js": "^1.9.0"
111
+ },
112
+ "engines": {
113
+ "node": ">=22.18.0"
114
+ },
115
+ "scripts": {
116
+ "build": "vite build && vite build --ssr",
117
+ "lint": "oxlint .",
118
+ "test": "vitest run",
119
+ "typecheck": "tsc --noEmit",
120
+ "dev": "storybook dev -p 6011 --no-open",
121
+ "storybook": "storybook dev -p 6011",
122
+ "build:storybook": "storybook build"
123
+ }
6
124
  }