Skip to content

Commit 53ed4fa

Browse files
committed
feat(config): add banner plugin to include build metadata in output
1 parent ff8d52c commit 53ed4fa

4 files changed

Lines changed: 85 additions & 70 deletions

File tree

package.json

Lines changed: 69 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "on-codemerge",
33
"description": "A WYSIWYG editor for on-codemerge is a user-friendly interface that allows users to edit and view their code in real time, exactly as it will appear in the final product",
4-
"version": "1.2.4",
4+
"version": "1.2.5",
55
"type": "module",
66
"author": "Pavel Kuzmin",
77
"license": "MIT",
@@ -59,74 +59,73 @@
5959
"import": "./dist/app.mjs",
6060
"require": "./dist/app.cjs"
6161
},
62-
"./index.css": "./dist/index.css",
63-
"./public.css": "./dist/public.css",
64-
"./plugins/BlockPlugin/public.css": "./dist/plugins/BlockPlugin/public.css",
65-
"./plugins/ChartsPlugin/public.css": "./dist/plugins/ChartsPlugin/public.css",
66-
"./plugins/CodeBlockPlugin/public.css": "./dist/plugins/CodeBlockPlugin/public.css",
67-
"./plugins/CollaborationPlugin/public.css": "./dist/plugins/CollaborationPlugin/public.css",
68-
"./plugins/ColorPlugin/public.css": "./dist/plugins/ColorPlugin/public.css",
69-
"./plugins/CommentsPlugin/public.css": "./dist/plugins/CommentsPlugin/public.css",
70-
"./plugins/ExportPlugin/public.css": "./dist/plugins/ExportPlugin/public.css",
71-
"./plugins/FileUploadPlugin/public.css": "./dist/plugins/FileUploadPlugin/public.css",
72-
"./plugins/FooterPlugin/public.css": "./dist/plugins/FooterPlugin/public.css",
73-
"./plugins/FootnotesPlugin/public.css": "./dist/plugins/FootnotesPlugin/public.css",
74-
"./plugins/HistoryPlugin/public.css": "./dist/plugins/HistoryPlugin/public.css",
75-
"./plugins/HTMLViewerPlugin/public.css": "./dist/plugins/HTMLViewerPlugin/public.css",
76-
"./plugins/ImagePlugin/public.css": "./dist/plugins/ImagePlugin/public.css",
77-
"./plugins/LinkPlugin/public.css": "./dist/plugins/LinkPlugin/public.css",
78-
"./plugins/ListsPlugin/public.css": "./dist/plugins/ListsPlugin/public.css",
79-
"./plugins/ResponsivePlugin/public.css": "./dist/plugins/ResponsivePlugin/public.css",
80-
"./plugins/ShortcutsPlugin/public.css": "./dist/plugins/ShortcutsPlugin/public.css",
81-
"./plugins/TablePlugin/public.css": "./dist/plugins/TablePlugin/public.css",
82-
"./plugins/TemplatesPlugin/public.css": "./dist/plugins/TemplatesPlugin/public.css",
83-
"./plugins/ToolbarDividerPlugin/public.css": "./dist/plugins/ToolbarDividerPlugin/public.css",
84-
"./plugins/ToolbarPlugin/public.css": "./dist/plugins/ToolbarPlugin/public.css",
85-
"./plugins/TypographyPlugin/public.css": "./dist/plugins/TypographyPlugin/public.css",
86-
"./plugins/VideoPlugin/public.css": "./dist/plugins/VideoPlugin/public.css",
87-
"./plugins/YouTubeVideoPlugin/public.css": "./dist/plugins/YouTubeVideoPlugin/public.css",
88-
"./plugins/AlignmentPlugin/public.css": "./dist/plugins/AlignmentPlugin/public.css",
89-
"./plugins/FormBuilderPlugin/public.css": "./dist/plugins/FormBuilderPlugin/public.css",
90-
"./plugins/SpellCheckerPlugin/public.css": "./dist/plugins/SpellCheckerPlugin/public.css",
91-
"./plugins/BlockStylePlugin/public.css": "./dist/plugins/BlockStylePlugin/public.css",
92-
"./plugins/MathPlugin/public.css": "./dist/plugins/MathPlugin/public.css",
93-
"./plugins/LanguagePlugin/public.css": "./dist/plugins/LanguagePlugin/public.css",
94-
"./plugins/AIAssistantPlugin/public.css": "./dist/plugins/AIAssistantPlugin/public.css",
95-
"./plugins/CalendarPlugin/public.css": "./dist/plugins/CalendarPlugin/public.css",
96-
"./plugins/TimerPlugin/public.css": "./dist/plugins/TimerPlugin/public.css",
97-
"./plugins/BlockPlugin/style.css": "./dist/plugins/BlockPlugin/style.css",
98-
"./plugins/ChartsPlugin/style.css": "./dist/plugins/ChartsPlugin/style.css",
99-
"./plugins/CodeBlockPlugin/style.css": "./dist/plugins/CodeBlockPlugin/style.css",
100-
"./plugins/CollaborationPlugin/style.css": "./dist/plugins/CollaborationPlugin/style.css",
101-
"./plugins/ColorPlugin/style.css": "./dist/plugins/ColorPlugin/style.css",
102-
"./plugins/CommentsPlugin/style.css": "./dist/plugins/CommentsPlugin/style.css",
103-
"./plugins/ExportPlugin/style.css": "./dist/plugins/ExportPlugin/style.css",
104-
"./plugins/FileUploadPlugin/style.css": "./dist/plugins/FileUploadPlugin/style.css",
105-
"./plugins/FooterPlugin/style.css": "./dist/plugins/FooterPlugin/style.css",
106-
"./plugins/FootnotesPlugin/style.css": "./dist/plugins/FootnotesPlugin/style.css",
107-
"./plugins/HistoryPlugin/style.css": "./dist/plugins/HistoryPlugin/style.css",
108-
"./plugins/HTMLViewerPlugin/style.css": "./dist/plugins/HTMLViewerPlugin/style.css",
109-
"./plugins/ImagePlugin/style.css": "./dist/plugins/ImagePlugin/style.css",
110-
"./plugins/LinkPlugin/style.css": "./dist/plugins/LinkPlugin/style.css",
111-
"./plugins/ListsPlugin/style.css": "./dist/plugins/ListsPlugin/style.css",
112-
"./plugins/ResponsivePlugin/style.css": "./dist/plugins/ResponsivePlugin/style.css",
113-
"./plugins/ShortcutsPlugin/style.css": "./dist/plugins/ShortcutsPlugin/style.css",
114-
"./plugins/TablePlugin/style.css": "./dist/plugins/TablePlugin/style.css",
115-
"./plugins/TemplatesPlugin/style.css": "./dist/plugins/TemplatesPlugin/style.css",
116-
"./plugins/ToolbarDividerPlugin/style.css": "./dist/plugins/ToolbarDividerPlugin/style.css",
117-
"./plugins/ToolbarPlugin/style.css": "./dist/plugins/ToolbarPlugin/style.css",
118-
"./plugins/TypographyPlugin/style.css": "./dist/plugins/TypographyPlugin/style.css",
119-
"./plugins/VideoPlugin/style.css": "./dist/plugins/VideoPlugin/style.css",
120-
"./plugins/YouTubeVideoPlugin/style.css": "./dist/plugins/YouTubeVideoPlugin/style.css",
121-
"./plugins/AlignmentPlugin/style.css": "./dist/plugins/AlignmentPlugin/style.css",
122-
"./plugins/FormBuilderPlugin/style.css": "./dist/plugins/FormBuilderPlugin/style.css",
123-
"./plugins/SpellCheckerPlugin/style.css": "./dist/plugins/SpellCheckerPlugin/style.css",
124-
"./plugins/BlockStylePlugin/style.css": "./dist/plugins/BlockStylePlugin/style.css",
125-
"./plugins/MathPlugin/style.css": "./dist/plugins/MathPlugin/style.css",
126-
"./plugins/LanguagePlugin/style.css": "./dist/plugins/LanguagePlugin/style.css",
127-
"./plugins/AIAssistantPlugin/style.css": "./dist/plugins/AIAssistantPlugin/style.css",
128-
"./plugins/CalendarPlugin/style.css": "./dist/plugins/CalendarPlugin/style.css",
129-
"./plugins/TimerPlugin/style.css": "./dist/plugins/TimerPlugin/style.css"
62+
"./public.css": "./dist/src/public.css",
63+
"./plugins/BlockPlugin/public.css": "./dist/src/plugins/BlockPlugin/public.css",
64+
"./plugins/ChartsPlugin/public.css": "./dist/src/plugins/ChartsPlugin/public.css",
65+
"./plugins/CodeBlockPlugin/public.css": "./dist/src/plugins/CodeBlockPlugin/public.css",
66+
"./plugins/CollaborationPlugin/public.css": "./dist/src/plugins/CollaborationPlugin/public.css",
67+
"./plugins/ColorPlugin/public.css": "./dist/src/plugins/ColorPlugin/public.css",
68+
"./plugins/CommentsPlugin/public.css": "./dist/src/plugins/CommentsPlugin/public.css",
69+
"./plugins/ExportPlugin/public.css": "./dist/src/plugins/ExportPlugin/public.css",
70+
"./plugins/FileUploadPlugin/public.css": "./dist/src/plugins/FileUploadPlugin/public.css",
71+
"./plugins/FooterPlugin/public.css": "./dist/src/plugins/FooterPlugin/public.css",
72+
"./plugins/FootnotesPlugin/public.css": "./dist/src/plugins/FootnotesPlugin/public.css",
73+
"./plugins/HistoryPlugin/public.css": "./dist/src/plugins/HistoryPlugin/public.css",
74+
"./plugins/HTMLViewerPlugin/public.css": "./dist/src/plugins/HTMLViewerPlugin/public.css",
75+
"./plugins/ImagePlugin/public.css": "./dist/src/plugins/ImagePlugin/public.css",
76+
"./plugins/LinkPlugin/public.css": "./dist/src/plugins/LinkPlugin/public.css",
77+
"./plugins/ListsPlugin/public.css": "./dist/src/plugins/ListsPlugin/public.css",
78+
"./plugins/ResponsivePlugin/public.css": "./dist/src/plugins/ResponsivePlugin/public.css",
79+
"./plugins/ShortcutsPlugin/public.css": "./dist/src/plugins/ShortcutsPlugin/public.css",
80+
"./plugins/TablePlugin/public.css": "./dist/src/plugins/TablePlugin/public.css",
81+
"./plugins/TemplatesPlugin/public.css": "./dist/src/plugins/TemplatesPlugin/public.css",
82+
"./plugins/ToolbarDividerPlugin/public.css": "./dist/src/plugins/ToolbarDividerPlugin/public.css",
83+
"./plugins/ToolbarPlugin/public.css": "./dist/src/plugins/ToolbarPlugin/public.css",
84+
"./plugins/TypographyPlugin/public.css": "./dist/src/plugins/TypographyPlugin/public.css",
85+
"./plugins/VideoPlugin/public.css": "./dist/src/plugins/VideoPlugin/public.css",
86+
"./plugins/YouTubeVideoPlugin/public.css": "./dist/src/plugins/YouTubeVideoPlugin/public.css",
87+
"./plugins/AlignmentPlugin/public.css": "./dist/src/plugins/AlignmentPlugin/public.css",
88+
"./plugins/FormBuilderPlugin/public.css": "./dist/src/plugins/FormBuilderPlugin/public.css",
89+
"./plugins/SpellCheckerPlugin/public.css": "./dist/src/plugins/SpellCheckerPlugin/public.css",
90+
"./plugins/BlockStylePlugin/public.css": "./dist/src/plugins/BlockStylePlugin/public.css",
91+
"./plugins/MathPlugin/public.css": "./dist/src/plugins/MathPlugin/public.css",
92+
"./plugins/LanguagePlugin/public.css": "./dist/src/plugins/LanguagePlugin/public.css",
93+
"./plugins/AIAssistantPlugin/public.css": "./dist/src/plugins/AIAssistantPlugin/public.css",
94+
"./plugins/CalendarPlugin/public.css": "./dist/src/plugins/CalendarPlugin/public.css",
95+
"./plugins/TimerPlugin/public.css": "./dist/src/plugins/TimerPlugin/public.css",
96+
"./plugins/BlockPlugin/style.css": "./dist/src/plugins/BlockPlugin/style.css",
97+
"./plugins/ChartsPlugin/style.css": "./dist/src/plugins/ChartsPlugin/style.css",
98+
"./plugins/CodeBlockPlugin/style.css": "./dist/src/plugins/CodeBlockPlugin/style.css",
99+
"./plugins/CollaborationPlugin/style.css": "./dist/src/plugins/CollaborationPlugin/style.css",
100+
"./plugins/ColorPlugin/style.css": "./dist/src/plugins/ColorPlugin/style.css",
101+
"./plugins/CommentsPlugin/style.css": "./dist/src/plugins/CommentsPlugin/style.css",
102+
"./plugins/ExportPlugin/style.css": "./dist/src/plugins/ExportPlugin/style.css",
103+
"./plugins/FileUploadPlugin/style.css": "./dist/src/plugins/FileUploadPlugin/style.css",
104+
"./plugins/FooterPlugin/style.css": "./dist/src/plugins/FooterPlugin/style.css",
105+
"./plugins/FootnotesPlugin/style.css": "./dist/src/plugins/FootnotesPlugin/style.css",
106+
"./plugins/HistoryPlugin/style.css": "./dist/src/plugins/HistoryPlugin/style.css",
107+
"./plugins/HTMLViewerPlugin/style.css": "./dist/src/plugins/HTMLViewerPlugin/style.css",
108+
"./plugins/ImagePlugin/style.css": "./dist/src/plugins/ImagePlugin/style.css",
109+
"./plugins/LinkPlugin/style.css": "./dist/src/plugins/LinkPlugin/style.css",
110+
"./plugins/ListsPlugin/style.css": "./dist/src/plugins/ListsPlugin/style.css",
111+
"./plugins/ResponsivePlugin/style.css": "./dist/src/plugins/ResponsivePlugin/style.css",
112+
"./plugins/ShortcutsPlugin/style.css": "./dist/src/plugins/ShortcutsPlugin/style.css",
113+
"./plugins/TablePlugin/style.css": "./dist/src/plugins/TablePlugin/style.css",
114+
"./plugins/TemplatesPlugin/style.css": "./dist/src/plugins/TemplatesPlugin/style.css",
115+
"./plugins/ToolbarDividerPlugin/style.css": "./dist/src/plugins/ToolbarDividerPlugin/style.css",
116+
"./plugins/ToolbarPlugin/style.css": "./dist/src/plugins/ToolbarPlugin/style.css",
117+
"./plugins/TypographyPlugin/style.css": "./dist/src/plugins/TypographyPlugin/style.css",
118+
"./plugins/VideoPlugin/style.css": "./dist/src/plugins/VideoPlugin/style.css",
119+
"./plugins/YouTubeVideoPlugin/style.css": "./dist/src/plugins/YouTubeVideoPlugin/style.css",
120+
"./plugins/AlignmentPlugin/style.css": "./dist/src/plugins/AlignmentPlugin/style.css",
121+
"./plugins/FormBuilderPlugin/style.css": "./dist/src/plugins/FormBuilderPlugin/style.css",
122+
"./plugins/SpellCheckerPlugin/style.css": "./dist/src/plugins/SpellCheckerPlugin/style.css",
123+
"./plugins/BlockStylePlugin/style.css": "./dist/src/plugins/BlockStylePlugin/style.css",
124+
"./plugins/MathPlugin/style.css": "./dist/src/plugins/MathPlugin/style.css",
125+
"./plugins/LanguagePlugin/style.css": "./dist/src/plugins/LanguagePlugin/style.css",
126+
"./plugins/AIAssistantPlugin/style.css": "./dist/src/plugins/AIAssistantPlugin/style.css",
127+
"./plugins/CalendarPlugin/style.css": "./dist/src/plugins/CalendarPlugin/style.css",
128+
"./plugins/TimerPlugin/style.css": "./dist/src/plugins/TimerPlugin/style.css"
130129
},
131130
"devDependencies": {
132131
"@eslint/js": "^9.30.0",
@@ -153,6 +152,7 @@
153152
"typescript": "5.8.3",
154153
"typescript-eslint": "^8.35.0",
155154
"vite": "^6.3.5",
155+
"vite-plugin-banner": "^0.8.1",
156156
"vite-plugin-dts": "^4.5.4",
157157
"vite-plugin-handlebars": "^2.0.0",
158158
"vite-plugin-wasm": "^3.4.1",

pnpm-lock.yaml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/plugins/ExportPlugin/services/ExportService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ export class ExportService {
6666
private formatHTML(html: string): string {
6767
const doctype = '<!DOCTYPE html>\n';
6868
const cssFiles = [
69-
'https://cdn.jsdelivr.net/npm/on-codemerge/dist/index.css',
69+
'https://cdn.jsdelivr.net/npm/on-codemerge/dist/public.css',
7070
'https://cdn.jsdelivr.net/npm/on-codemerge/dist/plugins/BlockPlugin/public.css',
7171
'https://cdn.jsdelivr.net/npm/on-codemerge/dist/plugins/ChartsPlugin/public.css',
7272
'https://cdn.jsdelivr.net/npm/on-codemerge/dist/plugins/CodeBlockPlugin/public.css',

vite.config.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ import { defineConfig } from 'vite';
22
import svgLoader from 'vite-svg-loader';
33
import dts from 'vite-plugin-dts';
44
import wasm from 'vite-plugin-wasm';
5+
import banner from 'vite-plugin-banner';
6+
import { readFileSync } from 'fs';
7+
import { resolve } from 'path';
8+
9+
// Читаем package.json для получения версии и информации об авторе
10+
const packageJson = JSON.parse(readFileSync(resolve(__dirname, 'package.json'), 'utf-8'));
511

612
export default defineConfig({
713
css: {
@@ -24,6 +30,7 @@ export default defineConfig({
2430
outDir: 'dist/types',
2531
}),
2632
wasm(),
33+
banner( `${packageJson.name} v${packageJson.version} @author ${packageJson.author} @license ${packageJson.license} @homepage ${packageJson.homepage} @repository ${packageJson.repository.url} Copyright (c) ${new Date().getFullYear()} ${packageJson.author} - Built on ${new Date().toISOString()}`),
2734
],
2835
build: {
2936
cssCodeSplit: true,

0 commit comments

Comments
 (0)