@railway/inkwell 1.3.0 → 1.4.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.
package/dist/index.cjs CHANGED
@@ -2020,6 +2020,20 @@ var InkwellEditorClient = react.forwardRef(
2020
2020
  selectEditor,
2021
2021
  stateVersion
2022
2022
  ]);
2023
+ const renderPlaceholder = react.useCallback(
2024
+ ({ attributes, children }) => /* @__PURE__ */ jsxRuntime.jsx(
2025
+ "span",
2026
+ {
2027
+ ...attributes,
2028
+ style: {
2029
+ ...attributes.style,
2030
+ paddingBottom: "2rem"
2031
+ },
2032
+ children
2033
+ }
2034
+ ),
2035
+ []
2036
+ );
2023
2037
  return /* @__PURE__ */ jsxRuntime.jsxs(
2024
2038
  "div",
2025
2039
  {
@@ -2067,6 +2081,7 @@ var InkwellEditorClient = react.forwardRef(
2067
2081
  style: styles?.editor,
2068
2082
  renderElement: RenderElement,
2069
2083
  renderLeaf: RenderLeaf,
2084
+ renderPlaceholder,
2070
2085
  decorate,
2071
2086
  placeholder: resolvedPlaceholder,
2072
2087
  spellCheck: true,
package/dist/index.js CHANGED
@@ -2005,6 +2005,20 @@ var InkwellEditorClient = forwardRef(
2005
2005
  selectEditor,
2006
2006
  stateVersion
2007
2007
  ]);
2008
+ const renderPlaceholder = useCallback(
2009
+ ({ attributes, children }) => /* @__PURE__ */ jsx(
2010
+ "span",
2011
+ {
2012
+ ...attributes,
2013
+ style: {
2014
+ ...attributes.style,
2015
+ paddingBottom: "2rem"
2016
+ },
2017
+ children
2018
+ }
2019
+ ),
2020
+ []
2021
+ );
2008
2022
  return /* @__PURE__ */ jsxs(
2009
2023
  "div",
2010
2024
  {
@@ -2052,6 +2066,7 @@ var InkwellEditorClient = forwardRef(
2052
2066
  style: styles?.editor,
2053
2067
  renderElement: RenderElement,
2054
2068
  renderLeaf: RenderLeaf,
2069
+ renderPlaceholder,
2055
2070
  decorate,
2056
2071
  placeholder: resolvedPlaceholder,
2057
2072
  spellCheck: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@railway/inkwell",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "Inkwell is a Markdown editor and renderer for React with an extensible plugin system.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
package/src/styles.css CHANGED
@@ -22,11 +22,18 @@
22
22
 
23
23
  /* ── Tokens ──────────────────────────────────────────────────────── */
24
24
 
25
- .inkwell-editor,
26
- .inkwell-editor-wrapper,
27
- .inkwell-renderer,
28
- .inkwell-plugin-bubble-menu-container,
29
- .inkwell-plugin-picker-popup {
25
+ /* Token definitions sit at 0,0,0 specificity so a consumer rule with even
26
+ a single class on a parent (e.g. `.dark .inkwell-renderer { --inkwell-text: ... }`
27
+ for class-driven theming that does not rely on `prefers-color-scheme`)
28
+ beats them automatically. The OS-level dark-mode block below uses the
29
+ same `:where()` wrapper for the same reason. */
30
+ :where(
31
+ .inkwell-editor,
32
+ .inkwell-editor-wrapper,
33
+ .inkwell-renderer,
34
+ .inkwell-plugin-bubble-menu-container,
35
+ .inkwell-plugin-picker-popup
36
+ ) {
30
37
  /* Surfaces */
31
38
  --inkwell-bg: hsl(0, 0%, 100%);
32
39
  --inkwell-bg-elevated: hsl(0, 0%, 100%);
@@ -58,11 +65,13 @@
58
65
  }
59
66
 
60
67
  @media (prefers-color-scheme: dark) {
61
- .inkwell-editor,
62
- .inkwell-editor-wrapper,
63
- .inkwell-renderer,
64
- .inkwell-plugin-bubble-menu-container,
65
- .inkwell-plugin-picker-popup {
68
+ :where(
69
+ .inkwell-editor,
70
+ .inkwell-editor-wrapper,
71
+ .inkwell-renderer,
72
+ .inkwell-plugin-bubble-menu-container,
73
+ .inkwell-plugin-picker-popup
74
+ ) {
66
75
  --inkwell-bg: hsl(220, 13%, 10%);
67
76
  --inkwell-bg-elevated: hsl(220, 13%, 13%);
68
77
  --inkwell-bg-subtle: hsl(220, 13%, 16%);