rimecms 0.24.2 → 0.24.4
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/core/dev/cli/index.js +0 -1
- package/dist/core/dev/generate/sanitize/index.d.ts +4 -0
- package/dist/core/dev/generate/sanitize/index.js +60 -14
- package/dist/core/i18n/index.js +2 -2
- package/package.json +2 -2
- package/dist/site/auth.client.d.ts +0 -697
- package/dist/site/auth.client.js +0 -5
- package/dist/site/components/avatar/avatar.svelte +0 -34
- package/dist/site/components/avatar/avatar.svelte.d.ts +0 -6
- package/dist/site/components/button/button.svelte +0 -290
- package/dist/site/components/button/button.svelte.d.ts +0 -4
- package/dist/site/components/button/index.d.ts +0 -15
- package/dist/site/components/button/index.js +0 -4
- package/dist/site/components/card/card.svelte +0 -26
- package/dist/site/components/card/card.svelte.d.ts +0 -7
- package/dist/site/components/card-document/card-document.svelte +0 -92
- package/dist/site/components/card-document/card-document.svelte.d.ts +0 -7
- package/dist/site/components/dialog/dialog-content.css +0 -47
- package/dist/site/components/dialog/dialog-content.svelte +0 -28
- package/dist/site/components/dialog/dialog-content.svelte.d.ts +0 -10
- package/dist/site/components/dialog/dialog-overlay.css +0 -8
- package/dist/site/components/dialog/dialog-overlay.svelte +0 -12
- package/dist/site/components/dialog/dialog-overlay.svelte.d.ts +0 -5
- package/dist/site/components/dialog/index.d.ts +0 -8
- package/dist/site/components/dialog/index.js +0 -10
- package/dist/site/components/feed/feed.svelte +0 -20
- package/dist/site/components/feed/feed.svelte.d.ts +0 -6
- package/dist/site/components/folder/folder.svelte +0 -53
- package/dist/site/components/folder/folder.svelte.d.ts +0 -7
- package/dist/site/components/input/Input.svelte +0 -75
- package/dist/site/components/input/Input.svelte.d.ts +0 -5
- package/dist/site/components/nav/nav.svelte +0 -52
- package/dist/site/components/nav/nav.svelte.d.ts +0 -18
- package/dist/site/components/nav/post-button/post-button.svelte +0 -52
- package/dist/site/components/nav/post-button/post-button.svelte.d.ts +0 -3
- package/dist/site/components/post/post-actions/comment-button.svelte +0 -115
- package/dist/site/components/post/post-actions/comment-button.svelte.d.ts +0 -6
- package/dist/site/components/post/post-actions/like-button.svelte +0 -76
- package/dist/site/components/post/post-actions/like-button.svelte.d.ts +0 -6
- package/dist/site/components/post/post-actions/post-actions.svelte +0 -30
- package/dist/site/components/post/post-actions/post-actions.svelte.d.ts +0 -6
- package/dist/site/components/post/post-attachments.svelte +0 -26
- package/dist/site/components/post/post-attachments.svelte.d.ts +0 -6
- package/dist/site/components/post/post-date.svelte +0 -12
- package/dist/site/components/post/post-date.svelte.d.ts +0 -6
- package/dist/site/components/post/post-with-comments.svelte +0 -42
- package/dist/site/components/post/post-with-comments.svelte.d.ts +0 -6
- package/dist/site/components/post/post.svelte +0 -64
- package/dist/site/components/post/post.svelte.d.ts +0 -6
- package/dist/site/components/rich-text/bubble-menu/bubble-menu.css +0 -17
- package/dist/site/components/rich-text/bubble-menu/bubble-menu.svelte +0 -119
- package/dist/site/components/rich-text/bubble-menu/bubble-menu.svelte.d.ts +0 -11
- package/dist/site/components/rich-text/bubble-menu/icon-button/icon-button.css +0 -15
- package/dist/site/components/rich-text/bubble-menu/icon-button/icon-button.svelte +0 -31
- package/dist/site/components/rich-text/bubble-menu/icon-button/icon-button.svelte.d.ts +0 -13
- package/dist/site/components/rich-text/context.svelte.d.ts +0 -12
- package/dist/site/components/rich-text/context.svelte.js +0 -32
- package/dist/site/components/rich-text/features/bold.d.ts +0 -2
- package/dist/site/components/rich-text/features/bold.js +0 -21
- package/dist/site/components/rich-text/features/link/component/link-selector.css +0 -4
- package/dist/site/components/rich-text/features/link/component/link-selector.svelte +0 -214
- package/dist/site/components/rich-text/features/link/component/link-selector.svelte.d.ts +0 -11
- package/dist/site/components/rich-text/features/link/link.d.ts +0 -2
- package/dist/site/components/rich-text/features/link/link.js +0 -36
- package/dist/site/components/rich-text/rich-text.css +0 -170
- package/dist/site/components/rich-text/rich-text.svelte +0 -84
- package/dist/site/components/rich-text/rich-text.svelte.d.ts +0 -9
- package/dist/site/components/upload-thumbnail/upload-thumbnail.svelte +0 -76
- package/dist/site/components/upload-thumbnail/upload-thumbnail.svelte.d.ts +0 -8
- package/dist/site/components/upload-thumbnail/util.d.ts +0 -1
- package/dist/site/components/upload-thumbnail/util.js +0 -13
- package/dist/site/components/user-inline/user-inline.svelte +0 -23
- package/dist/site/components/user-inline/user-inline.svelte.d.ts +0 -6
- package/dist/site/styles/colors.css +0 -31
- package/dist/site/styles/fonts.css +0 -160
- package/dist/site/styles/fonts.mixins.css +0 -5
- package/dist/site/styles/main.css +0 -35
- package/dist/site/styles/mixins/index.css +0 -0
- package/dist/site/styles/shadows.css +0 -10
- package/dist/site/styles/sizes.css +0 -43
|
@@ -14,7 +14,6 @@ program
|
|
|
14
14
|
program
|
|
15
15
|
.command('build')
|
|
16
16
|
.option('-d, --with-database', 'Include database', false)
|
|
17
|
-
.option('-f, --force', 'Force init with default package name', false)
|
|
18
17
|
.action(async (args) => {
|
|
19
18
|
const build = await import('./build/index.js').then((m) => m.build);
|
|
20
19
|
build(args);
|
|
@@ -6,3 +6,7 @@
|
|
|
6
6
|
* - Outputs to .generated folder, preserving original folder structure
|
|
7
7
|
*/
|
|
8
8
|
export function sanitize(): Promise<void>;
|
|
9
|
+
/**
|
|
10
|
+
* Updates imports in server files to use server versions of split modules
|
|
11
|
+
*/
|
|
12
|
+
export function updateServerImports(content: any, splitFiles: any, currentDir: any): any;
|
|
@@ -50,6 +50,22 @@ export async function sanitize() {
|
|
|
50
50
|
// Scan all TypeScript files (excluding .server.ts)
|
|
51
51
|
const allFiles = await scanConfigFiles(configDir);
|
|
52
52
|
|
|
53
|
+
// Pre-scan files to determine which ones will be split (contain server content)
|
|
54
|
+
for (const filePath of allFiles) {
|
|
55
|
+
const relativePath = path.relative(configDir, filePath);
|
|
56
|
+
try {
|
|
57
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
58
|
+
const ast = babelParse(content, 'ts', { sourceType: 'module', attachComment: false });
|
|
59
|
+
const analysis = analyzeFile(ast);
|
|
60
|
+
if (analysis.hasServerContent) {
|
|
61
|
+
// Normalize to forward slashes to match how imports are compared later
|
|
62
|
+
splitFiles.add(relativePath.split(path.sep).join('/'));
|
|
63
|
+
}
|
|
64
|
+
} catch (err) {
|
|
65
|
+
logger.warn(`Failed to analyze ${relativePath} during pre-scan: ${err.message}`);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
53
69
|
// Also scan and copy all existing .server.ts files
|
|
54
70
|
const serverFiles = await scanServerFiles(configDir);
|
|
55
71
|
|
|
@@ -666,12 +682,20 @@ function removeUnusedImports(ast) {
|
|
|
666
682
|
/**
|
|
667
683
|
* Updates imports in server files to use server versions of split modules
|
|
668
684
|
*/
|
|
669
|
-
function updateServerImports(content, splitFiles, currentDir) {
|
|
685
|
+
export function updateServerImports(content, splitFiles, currentDir) {
|
|
670
686
|
try {
|
|
671
687
|
const ast = babelParse(content, 'ts', { sourceType: 'module', attachComment: false });
|
|
672
688
|
|
|
673
689
|
let hasChanges = false;
|
|
674
690
|
|
|
691
|
+
// Helper to normalize paths for comparison with splitFiles entries
|
|
692
|
+
const normalizeForCompare = (p) =>
|
|
693
|
+
p
|
|
694
|
+
.replace(/^\.\/?/, '')
|
|
695
|
+
.split(path.sep)
|
|
696
|
+
.join('/');
|
|
697
|
+
const splitFilesSet = new Set(Array.from(splitFiles).map((s) => normalizeForCompare(s)));
|
|
698
|
+
|
|
675
699
|
// Walk through all import declarations
|
|
676
700
|
for (const node of ast.body) {
|
|
677
701
|
if (t.isImportDeclaration(node) && t.isStringLiteral(node.source)) {
|
|
@@ -682,25 +706,47 @@ function updateServerImports(content, splitFiles, currentDir) {
|
|
|
682
706
|
continue;
|
|
683
707
|
}
|
|
684
708
|
|
|
685
|
-
//
|
|
686
|
-
|
|
709
|
+
// Skip already server imports
|
|
710
|
+
if (importPath.includes('.server')) continue;
|
|
687
711
|
|
|
688
|
-
//
|
|
689
|
-
|
|
690
|
-
|
|
712
|
+
// Normalize import path: remove trailing slashes and explicit extensions
|
|
713
|
+
const cleanedImport = importPath.replace(/\/+$/, '');
|
|
714
|
+
const importNoExt = cleanedImport.replace(/(\.js|\.ts)$/, '');
|
|
715
|
+
|
|
716
|
+
// Build candidate relative paths (relative to config dir)
|
|
717
|
+
const candidateFile = path.normalize(path.join(currentDir, importNoExt + '.ts'));
|
|
718
|
+
const candidateIndex = path.normalize(path.join(currentDir, importNoExt, 'index.ts'));
|
|
719
|
+
|
|
720
|
+
const candidateFileNorm = normalizeForCompare(candidateFile);
|
|
721
|
+
const candidateIndexNorm = normalizeForCompare(candidateIndex);
|
|
722
|
+
|
|
723
|
+
let matched = null;
|
|
724
|
+
let matchedIsIndex = false;
|
|
725
|
+
|
|
726
|
+
if (splitFilesSet.has(candidateFileNorm)) {
|
|
727
|
+
matched = candidateFileNorm;
|
|
728
|
+
matchedIsIndex = false;
|
|
729
|
+
} else if (splitFilesSet.has(candidateIndexNorm)) {
|
|
730
|
+
matched = candidateIndexNorm;
|
|
731
|
+
matchedIsIndex = true;
|
|
691
732
|
}
|
|
692
733
|
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
if (newImportPath.endsWith('.js')) {
|
|
699
|
-
newImportPath = newImportPath.slice(0, -3) + '.server.js';
|
|
734
|
+
if (matched) {
|
|
735
|
+
// Build new import path: prefer .server.js so runtime imports point to JS server files
|
|
736
|
+
let newImportPath;
|
|
737
|
+
if (matchedIsIndex) {
|
|
738
|
+
newImportPath = importNoExt + '/index.server.js';
|
|
700
739
|
} else {
|
|
701
|
-
newImportPath
|
|
740
|
+
newImportPath = importNoExt + '.server.js';
|
|
702
741
|
}
|
|
742
|
+
|
|
743
|
+
// Set the node's source value and ensure it renders with single quotes
|
|
703
744
|
node.source.value = newImportPath;
|
|
745
|
+
if (!node.source.extra || typeof node.source.extra !== 'object') {
|
|
746
|
+
node.source.extra = {};
|
|
747
|
+
}
|
|
748
|
+
node.source.extra.raw = `'${newImportPath}'`;
|
|
749
|
+
node.source.extra.rawValue = newImportPath;
|
|
704
750
|
hasChanges = true;
|
|
705
751
|
}
|
|
706
752
|
}
|
package/dist/core/i18n/index.js
CHANGED
|
@@ -25,8 +25,8 @@ function createI18n() {
|
|
|
25
25
|
return compiled;
|
|
26
26
|
};
|
|
27
27
|
const t__ = (key, ...params) => {
|
|
28
|
-
const
|
|
29
|
-
if (!
|
|
28
|
+
const isNamespacedKey = namespaces.some((ns) => key.startsWith(`${ns}.`));
|
|
29
|
+
if (!isNamespacedKey) {
|
|
30
30
|
return key;
|
|
31
31
|
}
|
|
32
32
|
const [baseKey, gender, plural] = key.split('|');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rimecms",
|
|
3
|
-
"version": "0.24.
|
|
3
|
+
"version": "0.24.4",
|
|
4
4
|
"homepage": "https://github.com/bienbiendev/rime",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "vite dev",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"rime:use": "bun ./src/scripts/useConfig.js",
|
|
10
10
|
"preview": "vite preview",
|
|
11
11
|
"package": "bun ./src/lib/core/dev/cli/index.ts clear --force && svelte-kit sync && svelte-package && publint",
|
|
12
|
-
"prepublishOnly": "npm run package && pnpm build:css",
|
|
12
|
+
"prepublishOnly": "rm -fr src/lib/site && npm run package && pnpm build:css",
|
|
13
13
|
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
14
14
|
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
|
15
15
|
"lint": "prettier --check . && eslint .",
|