From 006b15b467a5cd835a6eab1b49023100bdc8f2e6 Mon Sep 17 00:00:00 2001
From: Armand Philippot <git@armandphilippot.com>
Date: Fri, 13 Oct 2023 19:32:56 +0200
Subject: refactor(components): rewrite Code component and usePrism hook

* move Prism styles to Sass placeholders to avoid repeats
* let usePrism consumer define its plugins (remove default ones)
* remove `plugins` prop from Code component
* add new props to Code component to let consumer configure plugins
(and handle plugin list from the given options)

However there are some problems with Prism plugins: line-highlight and
treeview does not seems to be loaded. I don't want to use Babel instead
of SWC so I have no solution for now.
---
 src/components/molecules/code/code.test.tsx | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 src/components/molecules/code/code.test.tsx

(limited to 'src/components/molecules/code/code.test.tsx')

diff --git a/src/components/molecules/code/code.test.tsx b/src/components/molecules/code/code.test.tsx
new file mode 100644
index 0000000..5b946b3
--- /dev/null
+++ b/src/components/molecules/code/code.test.tsx
@@ -0,0 +1,14 @@
+import { describe, expect, it } from '@jest/globals';
+import { render, screen as rtlScreen } from '../../../../tests/utils';
+import { Code } from './code';
+
+describe('Code', () => {
+  it('renders a code block', () => {
+    const language = 'javascript';
+    const code = 'nam';
+
+    render(<Code language={language}>{code}</Code>);
+
+    expect(rtlScreen.getByText(code)).toBeInTheDocument();
+  });
+});
-- 
cgit v1.2.3

