@examind/block-sdk 0.1.32 → 0.1.35

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.d.mts CHANGED
@@ -1,10 +1,7 @@
1
1
  import { SerializedEditorState } from '@examind/block-types';
2
2
 
3
- declare const themeLight = "\n:host,\n.theme-light {\n color-scheme: light;\n\n --sl-color-neutral-50: #fafafa;\n --sl-color-neutral-100: #f4f4f5;\n --sl-color-neutral-200: #e4e4e7;\n --sl-color-neutral-300: #d4d4d8;\n --sl-color-neutral-400: #a1a1aa;\n --sl-color-neutral-500: #71717a;\n --sl-color-neutral-600: #52525b;\n --sl-color-neutral-700: #3f3f46;\n --sl-color-neutral-800: #27272a;\n --sl-color-neutral-900: #18181b;\n --sl-color-neutral-950: #09090b;\n\n --sl-color-neutral-0: #ffffff;\n --sl-color-neutral-1000: hsl(0, 0%, 0%);\n\n --sl-border-base: var(--be-border-base);\n --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);\n --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);\n --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);\n --sl-border-radius-x-large: var(\n --sl-border-base\n );\n\n --sl-border-radius-circle: 50%;\n --sl-border-radius-pill: 9999px;\n\n --sl-shadow-x-small: 0 1px 2px hsl(240 3.8% 46.1% / 6%);\n --sl-shadow-small: 0 1px 2px hsl(240 3.8% 46.1% / 12%);\n --sl-shadow-medium: 0 2px 4px hsl(240 3.8% 46.1% / 12%);\n --sl-shadow-large: var(\n --be-shadow-large,\n 0 2px 8px hsl(240 3.8% 46.1% / 12%)\n );\n --sl-shadow-x-large: 0 4px 16px hsl(240 3.8% 46.1% / 12%);\n\n --sl-spacing-base: var(--be-spacing-base, 1rem);\n --sl-spacing-3x-small: calc(\n var(--sl-spacing-base) * 0.125\n );\n --sl-spacing-2x-small: calc(\n var(--sl-spacing-base) * 0.25\n );\n --sl-spacing-1_5x-small: calc(\n var(--sl-spacing-base) * 0.375\n );\n --sl-spacing-x-small: calc(\n var(--sl-spacing-base) * 0.5\n );\n --sl-spacing-small: calc(\n var(--sl-spacing-base) * 0.75\n );\n --sl-spacing-medium: var(--sl-spacing-base);\n --sl-spacing-large: calc(\n var(--sl-spacing-base) * 1.25\n );\n --sl-spacing-x-large: calc(\n var(--sl-spacing-base) * 1.75\n );\n --sl-spacing-2x-large: calc(\n var(--sl-spacing-base) * 2.25\n );\n --sl-spacing-3x-large: calc(\n var(--sl-spacing-base) * 3\n );\n --sl-spacing-4x-large: calc(\n var(--sl-spacing-base) * 4.5\n );\n --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);\n\n --indent-size: var(--sl-spacing-large);\n\n --sl-font-mono: SFMono-Regular, Consolas, 'Liberation Mono', Menlo,\n monospace;\n --sl-font-sans: var(\n --be-font-sans,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol'\n );\n --sl-font-serif: var(\n --be-font-serif,\n Georgia,\n 'Times New Roman',\n serif\n );\n\n --sl-font-size-base: var(--be-font-size-base, 1rem);\n --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);\n --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);\n --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);\n --sl-font-size-medium: var(--sl-font-size-base);\n --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);\n --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);\n --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);\n --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);\n --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);\n\n --sl-font-weight-light: 300;\n --sl-font-weight-normal: 400;\n --sl-font-weight-semibold: 500;\n --sl-font-weight-bold: 700;\n\n --sl-letter-spacing-denser: -0.03em;\n --sl-letter-spacing-dense: -0.015em;\n --sl-letter-spacing-normal: normal;\n --sl-letter-spacing-loose: 0.075em;\n --sl-letter-spacing-looser: 0.15em;\n\n --sl-line-height-base: 1;\n --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);\n --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);\n --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);\n --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);\n --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);\n --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);\n --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);\n\n --td-editor-text-color-blue: hsl(221, 100%, 50%);\n --td-editor-text-color-purple: hsl(291, 100%, 39%);\n --td-editor-text-color-red: hsl(4, 100%, 40%);\n --td-editor-text-color-green: hsl(122, 100%, 23%);\n\n --td-editor-bg-color-blue: hsl(221, 100%, 50%, 0.1);\n --td-editor-bg-color-purple: hsl(291, 100%, 39%, 0.1);\n --td-editor-bg-color-red: hsl(4, 100%, 40%, 0.1);\n --td-editor-bg-color-green: hsl(122, 100%, 23%, 0.1);\n}\n";
4
- declare const themeDark = "\n:host,\n.theme-dark {\n color-scheme: dark;\n\n --sl-color-neutral-950: #fafafa;\n --sl-color-neutral-900: #f4f4f5;\n --sl-color-neutral-800: #e4e4e7;\n --sl-color-neutral-700: #d4d4d8;\n --sl-color-neutral-600: #a1a1aa;\n --sl-color-neutral-500: #71717a;\n --sl-color-neutral-400: #71717a;\n --sl-color-neutral-300: #52525b;\n --sl-color-neutral-200: #3f3f46;\n --sl-color-neutral-100: #27272a;\n --sl-color-neutral-50: #18181b;\n --sl-color-neutral-0: #09090b;\n --sl-color-neutral-1000: hsl(0, 0%, 100%);\n\n --sl-border-base: var(--be-border-base);\n --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);\n --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);\n --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);\n --sl-border-radius-x-large: var(\n --sl-border-base\n );\n\n --sl-border-radius-circle: 50%;\n --sl-border-radius-pill: 9999px;\n\n --sl-shadow-x-small: 0 1px 2px rgb(0 0 0 / 18%);\n --sl-shadow-small: 0 1px 2px rgb(0 0 0 / 24%);\n --sl-shadow-medium: 0 2px 4px rgb(0 0 0 / 24%);\n --sl-shadow-large: var(\n --be-shadow-large,\n 0 2px 8px rgb(0 0 0 / 24%)\n );\n --sl-shadow-x-large: 0 4px 16px rgb(0 0 0 / 24%);\n\n --sl-spacing-base: var(--be-spacing-base, 1rem);\n --sl-spacing-3x-small: calc(\n var(--sl-spacing-base) * 0.125\n );\n --sl-spacing-2x-small: calc(\n var(--sl-spacing-base) * 0.25\n );\n --sl-spacing-1_5x-small: calc(\n var(--sl-spacing-base) * 0.375\n );\n --sl-spacing-x-small: calc(\n var(--sl-spacing-base) * 0.5\n );\n --sl-spacing-small: calc(\n var(--sl-spacing-base) * 0.75\n );\n --sl-spacing-medium: var(--sl-spacing-base);\n --sl-spacing-large: calc(\n var(--sl-spacing-base) * 1.25\n );\n --sl-spacing-x-large: calc(\n var(--sl-spacing-base) * 1.75\n );\n --sl-spacing-2x-large: calc(\n var(--sl-spacing-base) * 2.25\n );\n --sl-spacing-3x-large: calc(\n var(--sl-spacing-base) * 3\n );\n --sl-spacing-4x-large: calc(\n var(--sl-spacing-base) * 4.5\n );\n --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);\n\n --indent-size: var(--sl-spacing-large);\n\n --sl-transition-x-slow: 1000ms;\n --sl-transition-slow: 500ms;\n --sl-transition-medium: 250ms;\n --sl-transition-fast: 150ms;\n --sl-transition-x-fast: 50ms;\n\n --sl-font-mono: var(\n --be-font-mono,\n SFMono-Regular,\n Consolas,\n 'Liberation Mono',\n Menlo,\n monospace\n );\n --sl-font-sans: var(\n --be-font-sans,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol'\n );\n --sl-font-serif: var(\n --be-font-serif,\n Georgia,\n 'Times New Roman',\n serif\n );\n\n --sl-font-size-base: var(--be-font-size-base, 1rem);\n --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);\n --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);\n --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);\n --sl-font-size-medium: var(--sl-font-size-base);\n --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);\n --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);\n --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);\n --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);\n --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);\n\n --sl-font-weight-light: 300;\n --sl-font-weight-normal: 400;\n --sl-font-weight-semibold: 500;\n --sl-font-weight-bold: 700;\n\n --sl-letter-spacing-denser: -0.03em;\n --sl-letter-spacing-dense: -0.015em;\n --sl-letter-spacing-normal: normal;\n --sl-letter-spacing-loose: 0.075em;\n --sl-letter-spacing-looser: 0.15em;\n\n --sl-line-height-base: 1;\n --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);\n --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);\n --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);\n --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);\n --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);\n --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);\n --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);\n\n --td-editor-text-color-blue: hsl(221, 100%, 70%);\n --td-editor-text-color-purple: hsl(291, 100%, 65%);\n --td-editor-text-color-red: hsl(4, 100%, 63%);\n --td-editor-text-color-green: hsl(122, 100%, 34%);\n\n --td-editor-bg-color-blue: hsl(221, 100%, 70%, 0.2);\n --td-editor-bg-color-purple: hsl(291, 100%, 65%, 0.2);\n --td-editor-bg-color-red: hsl(4, 100%, 63%, 0.2);\n --td-editor-bg-color-green: hsl(122, 100%, 34%, 0.2);\n}\n";
5
-
6
3
  declare function exportToHtml(editorState: SerializedEditorState): string;
7
4
 
8
5
  declare function importFromHtml(html: string): SerializedEditorState;
9
6
 
10
- export { exportToHtml, importFromHtml, themeDark, themeLight };
7
+ export { exportToHtml, importFromHtml };
package/dist/index.d.ts CHANGED
@@ -1,10 +1,7 @@
1
1
  import { SerializedEditorState } from '@examind/block-types';
2
2
 
3
- declare const themeLight = "\n:host,\n.theme-light {\n color-scheme: light;\n\n --sl-color-neutral-50: #fafafa;\n --sl-color-neutral-100: #f4f4f5;\n --sl-color-neutral-200: #e4e4e7;\n --sl-color-neutral-300: #d4d4d8;\n --sl-color-neutral-400: #a1a1aa;\n --sl-color-neutral-500: #71717a;\n --sl-color-neutral-600: #52525b;\n --sl-color-neutral-700: #3f3f46;\n --sl-color-neutral-800: #27272a;\n --sl-color-neutral-900: #18181b;\n --sl-color-neutral-950: #09090b;\n\n --sl-color-neutral-0: #ffffff;\n --sl-color-neutral-1000: hsl(0, 0%, 0%);\n\n --sl-border-base: var(--be-border-base);\n --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);\n --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);\n --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);\n --sl-border-radius-x-large: var(\n --sl-border-base\n );\n\n --sl-border-radius-circle: 50%;\n --sl-border-radius-pill: 9999px;\n\n --sl-shadow-x-small: 0 1px 2px hsl(240 3.8% 46.1% / 6%);\n --sl-shadow-small: 0 1px 2px hsl(240 3.8% 46.1% / 12%);\n --sl-shadow-medium: 0 2px 4px hsl(240 3.8% 46.1% / 12%);\n --sl-shadow-large: var(\n --be-shadow-large,\n 0 2px 8px hsl(240 3.8% 46.1% / 12%)\n );\n --sl-shadow-x-large: 0 4px 16px hsl(240 3.8% 46.1% / 12%);\n\n --sl-spacing-base: var(--be-spacing-base, 1rem);\n --sl-spacing-3x-small: calc(\n var(--sl-spacing-base) * 0.125\n );\n --sl-spacing-2x-small: calc(\n var(--sl-spacing-base) * 0.25\n );\n --sl-spacing-1_5x-small: calc(\n var(--sl-spacing-base) * 0.375\n );\n --sl-spacing-x-small: calc(\n var(--sl-spacing-base) * 0.5\n );\n --sl-spacing-small: calc(\n var(--sl-spacing-base) * 0.75\n );\n --sl-spacing-medium: var(--sl-spacing-base);\n --sl-spacing-large: calc(\n var(--sl-spacing-base) * 1.25\n );\n --sl-spacing-x-large: calc(\n var(--sl-spacing-base) * 1.75\n );\n --sl-spacing-2x-large: calc(\n var(--sl-spacing-base) * 2.25\n );\n --sl-spacing-3x-large: calc(\n var(--sl-spacing-base) * 3\n );\n --sl-spacing-4x-large: calc(\n var(--sl-spacing-base) * 4.5\n );\n --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);\n\n --indent-size: var(--sl-spacing-large);\n\n --sl-font-mono: SFMono-Regular, Consolas, 'Liberation Mono', Menlo,\n monospace;\n --sl-font-sans: var(\n --be-font-sans,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol'\n );\n --sl-font-serif: var(\n --be-font-serif,\n Georgia,\n 'Times New Roman',\n serif\n );\n\n --sl-font-size-base: var(--be-font-size-base, 1rem);\n --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);\n --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);\n --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);\n --sl-font-size-medium: var(--sl-font-size-base);\n --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);\n --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);\n --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);\n --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);\n --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);\n\n --sl-font-weight-light: 300;\n --sl-font-weight-normal: 400;\n --sl-font-weight-semibold: 500;\n --sl-font-weight-bold: 700;\n\n --sl-letter-spacing-denser: -0.03em;\n --sl-letter-spacing-dense: -0.015em;\n --sl-letter-spacing-normal: normal;\n --sl-letter-spacing-loose: 0.075em;\n --sl-letter-spacing-looser: 0.15em;\n\n --sl-line-height-base: 1;\n --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);\n --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);\n --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);\n --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);\n --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);\n --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);\n --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);\n\n --td-editor-text-color-blue: hsl(221, 100%, 50%);\n --td-editor-text-color-purple: hsl(291, 100%, 39%);\n --td-editor-text-color-red: hsl(4, 100%, 40%);\n --td-editor-text-color-green: hsl(122, 100%, 23%);\n\n --td-editor-bg-color-blue: hsl(221, 100%, 50%, 0.1);\n --td-editor-bg-color-purple: hsl(291, 100%, 39%, 0.1);\n --td-editor-bg-color-red: hsl(4, 100%, 40%, 0.1);\n --td-editor-bg-color-green: hsl(122, 100%, 23%, 0.1);\n}\n";
4
- declare const themeDark = "\n:host,\n.theme-dark {\n color-scheme: dark;\n\n --sl-color-neutral-950: #fafafa;\n --sl-color-neutral-900: #f4f4f5;\n --sl-color-neutral-800: #e4e4e7;\n --sl-color-neutral-700: #d4d4d8;\n --sl-color-neutral-600: #a1a1aa;\n --sl-color-neutral-500: #71717a;\n --sl-color-neutral-400: #71717a;\n --sl-color-neutral-300: #52525b;\n --sl-color-neutral-200: #3f3f46;\n --sl-color-neutral-100: #27272a;\n --sl-color-neutral-50: #18181b;\n --sl-color-neutral-0: #09090b;\n --sl-color-neutral-1000: hsl(0, 0%, 100%);\n\n --sl-border-base: var(--be-border-base);\n --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);\n --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);\n --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);\n --sl-border-radius-x-large: var(\n --sl-border-base\n );\n\n --sl-border-radius-circle: 50%;\n --sl-border-radius-pill: 9999px;\n\n --sl-shadow-x-small: 0 1px 2px rgb(0 0 0 / 18%);\n --sl-shadow-small: 0 1px 2px rgb(0 0 0 / 24%);\n --sl-shadow-medium: 0 2px 4px rgb(0 0 0 / 24%);\n --sl-shadow-large: var(\n --be-shadow-large,\n 0 2px 8px rgb(0 0 0 / 24%)\n );\n --sl-shadow-x-large: 0 4px 16px rgb(0 0 0 / 24%);\n\n --sl-spacing-base: var(--be-spacing-base, 1rem);\n --sl-spacing-3x-small: calc(\n var(--sl-spacing-base) * 0.125\n );\n --sl-spacing-2x-small: calc(\n var(--sl-spacing-base) * 0.25\n );\n --sl-spacing-1_5x-small: calc(\n var(--sl-spacing-base) * 0.375\n );\n --sl-spacing-x-small: calc(\n var(--sl-spacing-base) * 0.5\n );\n --sl-spacing-small: calc(\n var(--sl-spacing-base) * 0.75\n );\n --sl-spacing-medium: var(--sl-spacing-base);\n --sl-spacing-large: calc(\n var(--sl-spacing-base) * 1.25\n );\n --sl-spacing-x-large: calc(\n var(--sl-spacing-base) * 1.75\n );\n --sl-spacing-2x-large: calc(\n var(--sl-spacing-base) * 2.25\n );\n --sl-spacing-3x-large: calc(\n var(--sl-spacing-base) * 3\n );\n --sl-spacing-4x-large: calc(\n var(--sl-spacing-base) * 4.5\n );\n --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);\n\n --indent-size: var(--sl-spacing-large);\n\n --sl-transition-x-slow: 1000ms;\n --sl-transition-slow: 500ms;\n --sl-transition-medium: 250ms;\n --sl-transition-fast: 150ms;\n --sl-transition-x-fast: 50ms;\n\n --sl-font-mono: var(\n --be-font-mono,\n SFMono-Regular,\n Consolas,\n 'Liberation Mono',\n Menlo,\n monospace\n );\n --sl-font-sans: var(\n --be-font-sans,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol'\n );\n --sl-font-serif: var(\n --be-font-serif,\n Georgia,\n 'Times New Roman',\n serif\n );\n\n --sl-font-size-base: var(--be-font-size-base, 1rem);\n --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);\n --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);\n --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);\n --sl-font-size-medium: var(--sl-font-size-base);\n --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);\n --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);\n --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);\n --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);\n --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);\n\n --sl-font-weight-light: 300;\n --sl-font-weight-normal: 400;\n --sl-font-weight-semibold: 500;\n --sl-font-weight-bold: 700;\n\n --sl-letter-spacing-denser: -0.03em;\n --sl-letter-spacing-dense: -0.015em;\n --sl-letter-spacing-normal: normal;\n --sl-letter-spacing-loose: 0.075em;\n --sl-letter-spacing-looser: 0.15em;\n\n --sl-line-height-base: 1;\n --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);\n --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);\n --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);\n --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);\n --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);\n --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);\n --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);\n\n --td-editor-text-color-blue: hsl(221, 100%, 70%);\n --td-editor-text-color-purple: hsl(291, 100%, 65%);\n --td-editor-text-color-red: hsl(4, 100%, 63%);\n --td-editor-text-color-green: hsl(122, 100%, 34%);\n\n --td-editor-bg-color-blue: hsl(221, 100%, 70%, 0.2);\n --td-editor-bg-color-purple: hsl(291, 100%, 65%, 0.2);\n --td-editor-bg-color-red: hsl(4, 100%, 63%, 0.2);\n --td-editor-bg-color-green: hsl(122, 100%, 34%, 0.2);\n}\n";
5
-
6
3
  declare function exportToHtml(editorState: SerializedEditorState): string;
7
4
 
8
5
  declare function importFromHtml(html: string): SerializedEditorState;
9
6
 
10
- export { exportToHtml, importFromHtml, themeDark, themeLight };
7
+ export { exportToHtml, importFromHtml };
package/dist/index.js CHANGED
@@ -21,305 +21,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
21
21
  var index_exports = {};
22
22
  __export(index_exports, {
23
23
  exportToHtml: () => exportToHtml,
24
- importFromHtml: () => importFromHtml,
25
- themeDark: () => themeDark,
26
- themeLight: () => themeLight
24
+ importFromHtml: () => importFromHtml
27
25
  });
28
26
  module.exports = __toCommonJS(index_exports);
29
27
 
30
- // src/config/themeVariables.ts
31
- var themeLight = `
32
- :host,
33
- .theme-light {
34
- color-scheme: light;
35
-
36
- --sl-color-neutral-50: #fafafa;
37
- --sl-color-neutral-100: #f4f4f5;
38
- --sl-color-neutral-200: #e4e4e7;
39
- --sl-color-neutral-300: #d4d4d8;
40
- --sl-color-neutral-400: #a1a1aa;
41
- --sl-color-neutral-500: #71717a;
42
- --sl-color-neutral-600: #52525b;
43
- --sl-color-neutral-700: #3f3f46;
44
- --sl-color-neutral-800: #27272a;
45
- --sl-color-neutral-900: #18181b;
46
- --sl-color-neutral-950: #09090b;
47
-
48
- --sl-color-neutral-0: #ffffff;
49
- --sl-color-neutral-1000: hsl(0, 0%, 0%);
50
-
51
- --sl-border-base: var(--be-border-base);
52
- --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);
53
- --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);
54
- --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);
55
- --sl-border-radius-x-large: var(
56
- --sl-border-base
57
- );
58
-
59
- --sl-border-radius-circle: 50%;
60
- --sl-border-radius-pill: 9999px;
61
-
62
- --sl-shadow-x-small: 0 1px 2px hsl(240 3.8% 46.1% / 6%);
63
- --sl-shadow-small: 0 1px 2px hsl(240 3.8% 46.1% / 12%);
64
- --sl-shadow-medium: 0 2px 4px hsl(240 3.8% 46.1% / 12%);
65
- --sl-shadow-large: var(
66
- --be-shadow-large,
67
- 0 2px 8px hsl(240 3.8% 46.1% / 12%)
68
- );
69
- --sl-shadow-x-large: 0 4px 16px hsl(240 3.8% 46.1% / 12%);
70
-
71
- --sl-spacing-base: var(--be-spacing-base, 1rem);
72
- --sl-spacing-3x-small: calc(
73
- var(--sl-spacing-base) * 0.125
74
- );
75
- --sl-spacing-2x-small: calc(
76
- var(--sl-spacing-base) * 0.25
77
- );
78
- --sl-spacing-1_5x-small: calc(
79
- var(--sl-spacing-base) * 0.375
80
- );
81
- --sl-spacing-x-small: calc(
82
- var(--sl-spacing-base) * 0.5
83
- );
84
- --sl-spacing-small: calc(
85
- var(--sl-spacing-base) * 0.75
86
- );
87
- --sl-spacing-medium: var(--sl-spacing-base);
88
- --sl-spacing-large: calc(
89
- var(--sl-spacing-base) * 1.25
90
- );
91
- --sl-spacing-x-large: calc(
92
- var(--sl-spacing-base) * 1.75
93
- );
94
- --sl-spacing-2x-large: calc(
95
- var(--sl-spacing-base) * 2.25
96
- );
97
- --sl-spacing-3x-large: calc(
98
- var(--sl-spacing-base) * 3
99
- );
100
- --sl-spacing-4x-large: calc(
101
- var(--sl-spacing-base) * 4.5
102
- );
103
- --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);
104
-
105
- --indent-size: var(--sl-spacing-large);
106
-
107
- --sl-font-mono: SFMono-Regular, Consolas, 'Liberation Mono', Menlo,
108
- monospace;
109
- --sl-font-sans: var(
110
- --be-font-sans,
111
- -apple-system,
112
- BlinkMacSystemFont,
113
- 'Segoe UI',
114
- Roboto,
115
- Helvetica,
116
- Arial,
117
- sans-serif,
118
- 'Apple Color Emoji',
119
- 'Segoe UI Emoji',
120
- 'Segoe UI Symbol'
121
- );
122
- --sl-font-serif: var(
123
- --be-font-serif,
124
- Georgia,
125
- 'Times New Roman',
126
- serif
127
- );
128
-
129
- --sl-font-size-base: var(--be-font-size-base, 1rem);
130
- --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);
131
- --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);
132
- --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);
133
- --sl-font-size-medium: var(--sl-font-size-base);
134
- --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);
135
- --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);
136
- --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);
137
- --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);
138
- --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);
139
-
140
- --sl-font-weight-light: 300;
141
- --sl-font-weight-normal: 400;
142
- --sl-font-weight-semibold: 500;
143
- --sl-font-weight-bold: 700;
144
-
145
- --sl-letter-spacing-denser: -0.03em;
146
- --sl-letter-spacing-dense: -0.015em;
147
- --sl-letter-spacing-normal: normal;
148
- --sl-letter-spacing-loose: 0.075em;
149
- --sl-letter-spacing-looser: 0.15em;
150
-
151
- --sl-line-height-base: 1;
152
- --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);
153
- --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);
154
- --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);
155
- --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);
156
- --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);
157
- --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);
158
- --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);
159
-
160
- --td-editor-text-color-blue: hsl(221, 100%, 50%);
161
- --td-editor-text-color-purple: hsl(291, 100%, 39%);
162
- --td-editor-text-color-red: hsl(4, 100%, 40%);
163
- --td-editor-text-color-green: hsl(122, 100%, 23%);
164
-
165
- --td-editor-bg-color-blue: hsl(221, 100%, 50%, 0.1);
166
- --td-editor-bg-color-purple: hsl(291, 100%, 39%, 0.1);
167
- --td-editor-bg-color-red: hsl(4, 100%, 40%, 0.1);
168
- --td-editor-bg-color-green: hsl(122, 100%, 23%, 0.1);
169
- }
170
- `;
171
- var themeDark = `
172
- :host,
173
- .theme-dark {
174
- color-scheme: dark;
175
-
176
- --sl-color-neutral-950: #fafafa;
177
- --sl-color-neutral-900: #f4f4f5;
178
- --sl-color-neutral-800: #e4e4e7;
179
- --sl-color-neutral-700: #d4d4d8;
180
- --sl-color-neutral-600: #a1a1aa;
181
- --sl-color-neutral-500: #71717a;
182
- --sl-color-neutral-400: #71717a;
183
- --sl-color-neutral-300: #52525b;
184
- --sl-color-neutral-200: #3f3f46;
185
- --sl-color-neutral-100: #27272a;
186
- --sl-color-neutral-50: #18181b;
187
- --sl-color-neutral-0: #09090b;
188
- --sl-color-neutral-1000: hsl(0, 0%, 100%);
189
-
190
- --sl-border-base: var(--be-border-base);
191
- --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);
192
- --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);
193
- --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);
194
- --sl-border-radius-x-large: var(
195
- --sl-border-base
196
- );
197
-
198
- --sl-border-radius-circle: 50%;
199
- --sl-border-radius-pill: 9999px;
200
-
201
- --sl-shadow-x-small: 0 1px 2px rgb(0 0 0 / 18%);
202
- --sl-shadow-small: 0 1px 2px rgb(0 0 0 / 24%);
203
- --sl-shadow-medium: 0 2px 4px rgb(0 0 0 / 24%);
204
- --sl-shadow-large: var(
205
- --be-shadow-large,
206
- 0 2px 8px rgb(0 0 0 / 24%)
207
- );
208
- --sl-shadow-x-large: 0 4px 16px rgb(0 0 0 / 24%);
209
-
210
- --sl-spacing-base: var(--be-spacing-base, 1rem);
211
- --sl-spacing-3x-small: calc(
212
- var(--sl-spacing-base) * 0.125
213
- );
214
- --sl-spacing-2x-small: calc(
215
- var(--sl-spacing-base) * 0.25
216
- );
217
- --sl-spacing-1_5x-small: calc(
218
- var(--sl-spacing-base) * 0.375
219
- );
220
- --sl-spacing-x-small: calc(
221
- var(--sl-spacing-base) * 0.5
222
- );
223
- --sl-spacing-small: calc(
224
- var(--sl-spacing-base) * 0.75
225
- );
226
- --sl-spacing-medium: var(--sl-spacing-base);
227
- --sl-spacing-large: calc(
228
- var(--sl-spacing-base) * 1.25
229
- );
230
- --sl-spacing-x-large: calc(
231
- var(--sl-spacing-base) * 1.75
232
- );
233
- --sl-spacing-2x-large: calc(
234
- var(--sl-spacing-base) * 2.25
235
- );
236
- --sl-spacing-3x-large: calc(
237
- var(--sl-spacing-base) * 3
238
- );
239
- --sl-spacing-4x-large: calc(
240
- var(--sl-spacing-base) * 4.5
241
- );
242
- --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);
243
-
244
- --indent-size: var(--sl-spacing-large);
245
-
246
- --sl-transition-x-slow: 1000ms;
247
- --sl-transition-slow: 500ms;
248
- --sl-transition-medium: 250ms;
249
- --sl-transition-fast: 150ms;
250
- --sl-transition-x-fast: 50ms;
251
-
252
- --sl-font-mono: var(
253
- --be-font-mono,
254
- SFMono-Regular,
255
- Consolas,
256
- 'Liberation Mono',
257
- Menlo,
258
- monospace
259
- );
260
- --sl-font-sans: var(
261
- --be-font-sans,
262
- -apple-system,
263
- BlinkMacSystemFont,
264
- 'Segoe UI',
265
- Roboto,
266
- Helvetica,
267
- Arial,
268
- sans-serif,
269
- 'Apple Color Emoji',
270
- 'Segoe UI Emoji',
271
- 'Segoe UI Symbol'
272
- );
273
- --sl-font-serif: var(
274
- --be-font-serif,
275
- Georgia,
276
- 'Times New Roman',
277
- serif
278
- );
279
-
280
- --sl-font-size-base: var(--be-font-size-base, 1rem);
281
- --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);
282
- --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);
283
- --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);
284
- --sl-font-size-medium: var(--sl-font-size-base);
285
- --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);
286
- --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);
287
- --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);
288
- --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);
289
- --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);
290
-
291
- --sl-font-weight-light: 300;
292
- --sl-font-weight-normal: 400;
293
- --sl-font-weight-semibold: 500;
294
- --sl-font-weight-bold: 700;
295
-
296
- --sl-letter-spacing-denser: -0.03em;
297
- --sl-letter-spacing-dense: -0.015em;
298
- --sl-letter-spacing-normal: normal;
299
- --sl-letter-spacing-loose: 0.075em;
300
- --sl-letter-spacing-looser: 0.15em;
301
-
302
- --sl-line-height-base: 1;
303
- --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);
304
- --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);
305
- --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);
306
- --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);
307
- --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);
308
- --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);
309
- --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);
310
-
311
- --td-editor-text-color-blue: hsl(221, 100%, 70%);
312
- --td-editor-text-color-purple: hsl(291, 100%, 65%);
313
- --td-editor-text-color-red: hsl(4, 100%, 63%);
314
- --td-editor-text-color-green: hsl(122, 100%, 34%);
315
-
316
- --td-editor-bg-color-blue: hsl(221, 100%, 70%, 0.2);
317
- --td-editor-bg-color-purple: hsl(291, 100%, 65%, 0.2);
318
- --td-editor-bg-color-red: hsl(4, 100%, 63%, 0.2);
319
- --td-editor-bg-color-green: hsl(122, 100%, 34%, 0.2);
320
- }
321
- `;
322
-
323
28
  // src/utils/NodeHandlerChainBuilder.ts
324
29
  var NodeHandlerChainBuilder = class {
325
30
  constructor() {
@@ -981,8 +686,9 @@ var SimulationQuestionNodeHandler = class extends NodeHandler {
981
686
  if (!isSerializedSimulationQuestionNode(node)) return null;
982
687
  const aiChatModelAttr = node.aiChatModel ? ` data-x-ai-chat-model="${node.aiChatModel}"` : "";
983
688
  const aiSystemMessage = node.aiSystemMessage ? `<x-ai-system-message>${node.aiSystemMessage}</x-ai-system-message>` : "";
984
- const step2Instructions = node.step2Instructions ? `<x-step2-instructions>${node.step2Instructions}</x-step2-instructions>` : "";
985
- return `<x-simulation id="${node.id}" data-x-prompt data-x-points="${node.points}"${aiChatModelAttr}>${aiSystemMessage}${step2Instructions}</x-simulation>`;
689
+ const disableChatAttr = node.disableChat ? ` data-x-disable-chat="true"` : "";
690
+ const commentInstructions = node.commentInstructions ? `<x-comment-instructions>${node.commentInstructions}</x-comment-instructions>` : "";
691
+ return `<x-simulation id="${node.id}" data-x-prompt data-x-points="${node.points}"${aiChatModelAttr}${disableChatAttr}>${aiSystemMessage}${commentInstructions}</x-simulation>`;
986
692
  }
987
693
  };
988
694
 
@@ -2214,7 +1920,9 @@ var ShortAnswerQuestionNodeHandler2 = class extends NodeHandler2 {
2214
1920
  var import_node_html_parser21 = require("node-html-parser");
2215
1921
  var TAG_X_SIMULATION = "x-simulation";
2216
1922
  var TAG_X_SYSTEM_MESSAGE2 = "x-ai-system-message";
1923
+ var TAG_X_COMMENT_INSTRUCTIONS = "x-comment-instructions";
2217
1924
  var TAG_X_STEP2_INSTRUCTIONS = "x-step2-instructions";
1925
+ var findFirstNonEmptyInnerHtml = (root, elementNames) => elementNames.map((name) => root.querySelector(name)).find((el) => el?.innerHTML.trim().length)?.innerHTML.trim() ?? null;
2218
1926
  var SimulationQuestionNodeHandler2 = class extends NodeHandler2 {
2219
1927
  processNode(node) {
2220
1928
  if (!(node instanceof import_node_html_parser21.HTMLElement) || node.tagName !== TAG_X_SIMULATION.toUpperCase()) {
@@ -2224,21 +1932,15 @@ var SimulationQuestionNodeHandler2 = class extends NodeHandler2 {
2224
1932
  id: node.getAttribute("id") || "",
2225
1933
  points: Number(node.getAttribute("data-x-points") || 0),
2226
1934
  aiChatModel: node.getAttribute("data-x-ai-chat-model") || null,
2227
- step2Instructions: "",
2228
- aiSystemMessage: "",
1935
+ aiSystemMessage: findFirstNonEmptyInnerHtml(node, [TAG_X_SYSTEM_MESSAGE2]) ?? "",
1936
+ disableChat: node.getAttribute("data-x-disable-chat") === "true",
1937
+ commentInstructions: findFirstNonEmptyInnerHtml(node, [
1938
+ TAG_X_COMMENT_INSTRUCTIONS,
1939
+ TAG_X_STEP2_INSTRUCTIONS
1940
+ ]) ?? "",
2229
1941
  type: "simulation-question",
2230
1942
  version: 1
2231
1943
  };
2232
- const systemMessageElement = node.querySelector(
2233
- TAG_X_SYSTEM_MESSAGE2
2234
- );
2235
- if (systemMessageElement)
2236
- jsonNode.aiSystemMessage = systemMessageElement.innerHTML;
2237
- const step2InstructionsElement = node.querySelector(
2238
- TAG_X_STEP2_INSTRUCTIONS
2239
- );
2240
- if (step2InstructionsElement)
2241
- jsonNode.step2Instructions = step2InstructionsElement.innerHTML;
2242
1944
  return jsonNode;
2243
1945
  }
2244
1946
  };
@@ -2657,7 +2359,5 @@ function importFromHtml(html) {
2657
2359
  // Annotate the CommonJS export names for ESM import in node:
2658
2360
  0 && (module.exports = {
2659
2361
  exportToHtml,
2660
- importFromHtml,
2661
- themeDark,
2662
- themeLight
2362
+ importFromHtml
2663
2363
  });
package/dist/index.mjs CHANGED
@@ -1,296 +1,3 @@
1
- // src/config/themeVariables.ts
2
- var themeLight = `
3
- :host,
4
- .theme-light {
5
- color-scheme: light;
6
-
7
- --sl-color-neutral-50: #fafafa;
8
- --sl-color-neutral-100: #f4f4f5;
9
- --sl-color-neutral-200: #e4e4e7;
10
- --sl-color-neutral-300: #d4d4d8;
11
- --sl-color-neutral-400: #a1a1aa;
12
- --sl-color-neutral-500: #71717a;
13
- --sl-color-neutral-600: #52525b;
14
- --sl-color-neutral-700: #3f3f46;
15
- --sl-color-neutral-800: #27272a;
16
- --sl-color-neutral-900: #18181b;
17
- --sl-color-neutral-950: #09090b;
18
-
19
- --sl-color-neutral-0: #ffffff;
20
- --sl-color-neutral-1000: hsl(0, 0%, 0%);
21
-
22
- --sl-border-base: var(--be-border-base);
23
- --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);
24
- --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);
25
- --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);
26
- --sl-border-radius-x-large: var(
27
- --sl-border-base
28
- );
29
-
30
- --sl-border-radius-circle: 50%;
31
- --sl-border-radius-pill: 9999px;
32
-
33
- --sl-shadow-x-small: 0 1px 2px hsl(240 3.8% 46.1% / 6%);
34
- --sl-shadow-small: 0 1px 2px hsl(240 3.8% 46.1% / 12%);
35
- --sl-shadow-medium: 0 2px 4px hsl(240 3.8% 46.1% / 12%);
36
- --sl-shadow-large: var(
37
- --be-shadow-large,
38
- 0 2px 8px hsl(240 3.8% 46.1% / 12%)
39
- );
40
- --sl-shadow-x-large: 0 4px 16px hsl(240 3.8% 46.1% / 12%);
41
-
42
- --sl-spacing-base: var(--be-spacing-base, 1rem);
43
- --sl-spacing-3x-small: calc(
44
- var(--sl-spacing-base) * 0.125
45
- );
46
- --sl-spacing-2x-small: calc(
47
- var(--sl-spacing-base) * 0.25
48
- );
49
- --sl-spacing-1_5x-small: calc(
50
- var(--sl-spacing-base) * 0.375
51
- );
52
- --sl-spacing-x-small: calc(
53
- var(--sl-spacing-base) * 0.5
54
- );
55
- --sl-spacing-small: calc(
56
- var(--sl-spacing-base) * 0.75
57
- );
58
- --sl-spacing-medium: var(--sl-spacing-base);
59
- --sl-spacing-large: calc(
60
- var(--sl-spacing-base) * 1.25
61
- );
62
- --sl-spacing-x-large: calc(
63
- var(--sl-spacing-base) * 1.75
64
- );
65
- --sl-spacing-2x-large: calc(
66
- var(--sl-spacing-base) * 2.25
67
- );
68
- --sl-spacing-3x-large: calc(
69
- var(--sl-spacing-base) * 3
70
- );
71
- --sl-spacing-4x-large: calc(
72
- var(--sl-spacing-base) * 4.5
73
- );
74
- --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);
75
-
76
- --indent-size: var(--sl-spacing-large);
77
-
78
- --sl-font-mono: SFMono-Regular, Consolas, 'Liberation Mono', Menlo,
79
- monospace;
80
- --sl-font-sans: var(
81
- --be-font-sans,
82
- -apple-system,
83
- BlinkMacSystemFont,
84
- 'Segoe UI',
85
- Roboto,
86
- Helvetica,
87
- Arial,
88
- sans-serif,
89
- 'Apple Color Emoji',
90
- 'Segoe UI Emoji',
91
- 'Segoe UI Symbol'
92
- );
93
- --sl-font-serif: var(
94
- --be-font-serif,
95
- Georgia,
96
- 'Times New Roman',
97
- serif
98
- );
99
-
100
- --sl-font-size-base: var(--be-font-size-base, 1rem);
101
- --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);
102
- --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);
103
- --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);
104
- --sl-font-size-medium: var(--sl-font-size-base);
105
- --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);
106
- --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);
107
- --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);
108
- --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);
109
- --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);
110
-
111
- --sl-font-weight-light: 300;
112
- --sl-font-weight-normal: 400;
113
- --sl-font-weight-semibold: 500;
114
- --sl-font-weight-bold: 700;
115
-
116
- --sl-letter-spacing-denser: -0.03em;
117
- --sl-letter-spacing-dense: -0.015em;
118
- --sl-letter-spacing-normal: normal;
119
- --sl-letter-spacing-loose: 0.075em;
120
- --sl-letter-spacing-looser: 0.15em;
121
-
122
- --sl-line-height-base: 1;
123
- --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);
124
- --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);
125
- --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);
126
- --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);
127
- --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);
128
- --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);
129
- --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);
130
-
131
- --td-editor-text-color-blue: hsl(221, 100%, 50%);
132
- --td-editor-text-color-purple: hsl(291, 100%, 39%);
133
- --td-editor-text-color-red: hsl(4, 100%, 40%);
134
- --td-editor-text-color-green: hsl(122, 100%, 23%);
135
-
136
- --td-editor-bg-color-blue: hsl(221, 100%, 50%, 0.1);
137
- --td-editor-bg-color-purple: hsl(291, 100%, 39%, 0.1);
138
- --td-editor-bg-color-red: hsl(4, 100%, 40%, 0.1);
139
- --td-editor-bg-color-green: hsl(122, 100%, 23%, 0.1);
140
- }
141
- `;
142
- var themeDark = `
143
- :host,
144
- .theme-dark {
145
- color-scheme: dark;
146
-
147
- --sl-color-neutral-950: #fafafa;
148
- --sl-color-neutral-900: #f4f4f5;
149
- --sl-color-neutral-800: #e4e4e7;
150
- --sl-color-neutral-700: #d4d4d8;
151
- --sl-color-neutral-600: #a1a1aa;
152
- --sl-color-neutral-500: #71717a;
153
- --sl-color-neutral-400: #71717a;
154
- --sl-color-neutral-300: #52525b;
155
- --sl-color-neutral-200: #3f3f46;
156
- --sl-color-neutral-100: #27272a;
157
- --sl-color-neutral-50: #18181b;
158
- --sl-color-neutral-0: #09090b;
159
- --sl-color-neutral-1000: hsl(0, 0%, 100%);
160
-
161
- --sl-border-base: var(--be-border-base);
162
- --sl-border-radius-small: calc(var(--sl-border-base) * 0.1875);
163
- --sl-border-radius-medium: calc(var(--sl-border-base) * 0.25);
164
- --sl-border-radius-large: calc(var(--sl-border-base) * 0.5);
165
- --sl-border-radius-x-large: var(
166
- --sl-border-base
167
- );
168
-
169
- --sl-border-radius-circle: 50%;
170
- --sl-border-radius-pill: 9999px;
171
-
172
- --sl-shadow-x-small: 0 1px 2px rgb(0 0 0 / 18%);
173
- --sl-shadow-small: 0 1px 2px rgb(0 0 0 / 24%);
174
- --sl-shadow-medium: 0 2px 4px rgb(0 0 0 / 24%);
175
- --sl-shadow-large: var(
176
- --be-shadow-large,
177
- 0 2px 8px rgb(0 0 0 / 24%)
178
- );
179
- --sl-shadow-x-large: 0 4px 16px rgb(0 0 0 / 24%);
180
-
181
- --sl-spacing-base: var(--be-spacing-base, 1rem);
182
- --sl-spacing-3x-small: calc(
183
- var(--sl-spacing-base) * 0.125
184
- );
185
- --sl-spacing-2x-small: calc(
186
- var(--sl-spacing-base) * 0.25
187
- );
188
- --sl-spacing-1_5x-small: calc(
189
- var(--sl-spacing-base) * 0.375
190
- );
191
- --sl-spacing-x-small: calc(
192
- var(--sl-spacing-base) * 0.5
193
- );
194
- --sl-spacing-small: calc(
195
- var(--sl-spacing-base) * 0.75
196
- );
197
- --sl-spacing-medium: var(--sl-spacing-base);
198
- --sl-spacing-large: calc(
199
- var(--sl-spacing-base) * 1.25
200
- );
201
- --sl-spacing-x-large: calc(
202
- var(--sl-spacing-base) * 1.75
203
- );
204
- --sl-spacing-2x-large: calc(
205
- var(--sl-spacing-base) * 2.25
206
- );
207
- --sl-spacing-3x-large: calc(
208
- var(--sl-spacing-base) * 3
209
- );
210
- --sl-spacing-4x-large: calc(
211
- var(--sl-spacing-base) * 4.5
212
- );
213
- --sl-spacing-5x-large: calc(var(--sl-spacing-base) * 5);
214
-
215
- --indent-size: var(--sl-spacing-large);
216
-
217
- --sl-transition-x-slow: 1000ms;
218
- --sl-transition-slow: 500ms;
219
- --sl-transition-medium: 250ms;
220
- --sl-transition-fast: 150ms;
221
- --sl-transition-x-fast: 50ms;
222
-
223
- --sl-font-mono: var(
224
- --be-font-mono,
225
- SFMono-Regular,
226
- Consolas,
227
- 'Liberation Mono',
228
- Menlo,
229
- monospace
230
- );
231
- --sl-font-sans: var(
232
- --be-font-sans,
233
- -apple-system,
234
- BlinkMacSystemFont,
235
- 'Segoe UI',
236
- Roboto,
237
- Helvetica,
238
- Arial,
239
- sans-serif,
240
- 'Apple Color Emoji',
241
- 'Segoe UI Emoji',
242
- 'Segoe UI Symbol'
243
- );
244
- --sl-font-serif: var(
245
- --be-font-serif,
246
- Georgia,
247
- 'Times New Roman',
248
- serif
249
- );
250
-
251
- --sl-font-size-base: var(--be-font-size-base, 1rem);
252
- --sl-font-size-2x-small: calc(var(--sl-font-size-base) * 0.625);
253
- --sl-font-size-x-small: calc(var(--sl-font-size-base) * 0.75);
254
- --sl-font-size-small: calc(var(--sl-font-size-base) * 0.875);
255
- --sl-font-size-medium: var(--sl-font-size-base);
256
- --sl-font-size-large: calc(var(--sl-font-size-base) * 1.25);
257
- --sl-font-size-x-large: calc(var(--sl-font-size-base) * 1.5);
258
- --sl-font-size-2x-large: calc(var(--sl-font-size-base) * 2.25);
259
- --sl-font-size-3x-large: calc(var(--sl-font-size-base) * 3);
260
- --sl-font-size-4x-large: calc(var(--sl-font-size-base) * 4.5);
261
-
262
- --sl-font-weight-light: 300;
263
- --sl-font-weight-normal: 400;
264
- --sl-font-weight-semibold: 500;
265
- --sl-font-weight-bold: 700;
266
-
267
- --sl-letter-spacing-denser: -0.03em;
268
- --sl-letter-spacing-dense: -0.015em;
269
- --sl-letter-spacing-normal: normal;
270
- --sl-letter-spacing-loose: 0.075em;
271
- --sl-letter-spacing-looser: 0.15em;
272
-
273
- --sl-line-height-base: 1;
274
- --sl-line-height-x-denser: calc(var(--sl-line-height-base) * 1.1);
275
- --sl-line-height-denser: calc(var(--sl-line-height-base) * 1.2);
276
- --sl-line-height-dense: calc(var(--sl-line-height-base) * 1.4);
277
- --sl-line-height-subnormal: calc(var(--sl-line-height-base) * 1.6);
278
- --sl-line-height-normal: calc(var(--sl-line-height-base) * 1.8);
279
- --sl-line-height-loose: calc(var(--sl-line-height-base) * 2.2);
280
- --sl-line-height-looser: calc(var(--sl-line-height-base) * 2.6);
281
-
282
- --td-editor-text-color-blue: hsl(221, 100%, 70%);
283
- --td-editor-text-color-purple: hsl(291, 100%, 65%);
284
- --td-editor-text-color-red: hsl(4, 100%, 63%);
285
- --td-editor-text-color-green: hsl(122, 100%, 34%);
286
-
287
- --td-editor-bg-color-blue: hsl(221, 100%, 70%, 0.2);
288
- --td-editor-bg-color-purple: hsl(291, 100%, 65%, 0.2);
289
- --td-editor-bg-color-red: hsl(4, 100%, 63%, 0.2);
290
- --td-editor-bg-color-green: hsl(122, 100%, 34%, 0.2);
291
- }
292
- `;
293
-
294
1
  // src/utils/NodeHandlerChainBuilder.ts
295
2
  var NodeHandlerChainBuilder = class {
296
3
  constructor() {
@@ -952,8 +659,9 @@ var SimulationQuestionNodeHandler = class extends NodeHandler {
952
659
  if (!isSerializedSimulationQuestionNode(node)) return null;
953
660
  const aiChatModelAttr = node.aiChatModel ? ` data-x-ai-chat-model="${node.aiChatModel}"` : "";
954
661
  const aiSystemMessage = node.aiSystemMessage ? `<x-ai-system-message>${node.aiSystemMessage}</x-ai-system-message>` : "";
955
- const step2Instructions = node.step2Instructions ? `<x-step2-instructions>${node.step2Instructions}</x-step2-instructions>` : "";
956
- return `<x-simulation id="${node.id}" data-x-prompt data-x-points="${node.points}"${aiChatModelAttr}>${aiSystemMessage}${step2Instructions}</x-simulation>`;
662
+ const disableChatAttr = node.disableChat ? ` data-x-disable-chat="true"` : "";
663
+ const commentInstructions = node.commentInstructions ? `<x-comment-instructions>${node.commentInstructions}</x-comment-instructions>` : "";
664
+ return `<x-simulation id="${node.id}" data-x-prompt data-x-points="${node.points}"${aiChatModelAttr}${disableChatAttr}>${aiSystemMessage}${commentInstructions}</x-simulation>`;
957
665
  }
958
666
  };
959
667
 
@@ -2185,7 +1893,9 @@ var ShortAnswerQuestionNodeHandler2 = class extends NodeHandler2 {
2185
1893
  import { HTMLElement as HTMLElement21 } from "node-html-parser";
2186
1894
  var TAG_X_SIMULATION = "x-simulation";
2187
1895
  var TAG_X_SYSTEM_MESSAGE2 = "x-ai-system-message";
1896
+ var TAG_X_COMMENT_INSTRUCTIONS = "x-comment-instructions";
2188
1897
  var TAG_X_STEP2_INSTRUCTIONS = "x-step2-instructions";
1898
+ var findFirstNonEmptyInnerHtml = (root, elementNames) => elementNames.map((name) => root.querySelector(name)).find((el) => el?.innerHTML.trim().length)?.innerHTML.trim() ?? null;
2189
1899
  var SimulationQuestionNodeHandler2 = class extends NodeHandler2 {
2190
1900
  processNode(node) {
2191
1901
  if (!(node instanceof HTMLElement21) || node.tagName !== TAG_X_SIMULATION.toUpperCase()) {
@@ -2195,21 +1905,15 @@ var SimulationQuestionNodeHandler2 = class extends NodeHandler2 {
2195
1905
  id: node.getAttribute("id") || "",
2196
1906
  points: Number(node.getAttribute("data-x-points") || 0),
2197
1907
  aiChatModel: node.getAttribute("data-x-ai-chat-model") || null,
2198
- step2Instructions: "",
2199
- aiSystemMessage: "",
1908
+ aiSystemMessage: findFirstNonEmptyInnerHtml(node, [TAG_X_SYSTEM_MESSAGE2]) ?? "",
1909
+ disableChat: node.getAttribute("data-x-disable-chat") === "true",
1910
+ commentInstructions: findFirstNonEmptyInnerHtml(node, [
1911
+ TAG_X_COMMENT_INSTRUCTIONS,
1912
+ TAG_X_STEP2_INSTRUCTIONS
1913
+ ]) ?? "",
2200
1914
  type: "simulation-question",
2201
1915
  version: 1
2202
1916
  };
2203
- const systemMessageElement = node.querySelector(
2204
- TAG_X_SYSTEM_MESSAGE2
2205
- );
2206
- if (systemMessageElement)
2207
- jsonNode.aiSystemMessage = systemMessageElement.innerHTML;
2208
- const step2InstructionsElement = node.querySelector(
2209
- TAG_X_STEP2_INSTRUCTIONS
2210
- );
2211
- if (step2InstructionsElement)
2212
- jsonNode.step2Instructions = step2InstructionsElement.innerHTML;
2213
1917
  return jsonNode;
2214
1918
  }
2215
1919
  };
@@ -2627,7 +2331,5 @@ function importFromHtml(html) {
2627
2331
  }
2628
2332
  export {
2629
2333
  exportToHtml,
2630
- importFromHtml,
2631
- themeDark,
2632
- themeLight
2334
+ importFromHtml
2633
2335
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@examind/block-sdk",
3
- "version": "0.1.32",
3
+ "version": "0.1.35",
4
4
  "@comment version": [
5
5
  "Don't specify package version here. It will be injected by publish workflow."
6
6
  ],
@@ -21,7 +21,7 @@
21
21
  "peerDependencies": {
22
22
  "nanoid": ">=3.0.0",
23
23
  "node-html-parser": ">=6.0.0",
24
- "@examind/block-types": "^0.1.32"
24
+ "@examind/block-types": "^0.1.35"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@eslint/js": "^9.17.0",
@@ -36,7 +36,7 @@
36
36
  "tsup": "^8.3.5",
37
37
  "typescript": "^5.7.2",
38
38
  "typescript-eslint": "^8.18.2",
39
- "@examind/block-types": "0.1.32"
39
+ "@examind/block-types": "0.1.35"
40
40
  },
41
41
  "dependencies": {
42
42
  "lodash-es": "4.17.21"