@zjlab-fe/data-hub-ui 0.21.6 → 0.22.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/types/components/tip-tap/extensions/index.d.ts +1 -1
- package/es/assets/cardImg.png.js +3 -0
- package/es/assets/closeBtn.png.js +3 -0
- package/es/assets/icon-tag-header.png.js +3 -0
- package/es/assets/source.png.js +3 -0
- package/es/components/FileUploader/FileUploadModal.js +24 -0
- package/es/components/FileUploader/FileUploader.js +20 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploader.js +34 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderContextProvider.js +46 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderFileReceiver.css.js +36 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderFileReceiver.js +57 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderFileReceiverContainer.js +24 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderFileReceiverDesc.js +9 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderList.js +46 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderListItem.js +46 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderListItemFail.js +21 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderListItemPaused.js +20 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderListItemUploading.js +43 -0
- package/es/components/FileUploader/FileUploaderImpl/FileUploaderlListItemFinished.js +32 -0
- package/es/components/FileUploader/Locale/translations.js +52 -0
- package/es/components/FileUploader/Locale/useTranslate.js +16 -0
- package/es/components/FileUploader/UploadStoreProvider/UploadStoreProvider.js +31 -0
- package/es/components/FileUploader/UploadStoreProvider/uploadStoreReducer.js +62 -0
- package/es/components/FileUploader/UploadStoreProvider/useOnFileAllUploaded.js +31 -0
- package/es/components/FileUploader/UploadStoreProvider/useSaveUnfinishedUploads.js +42 -0
- package/es/components/FileUploader/UploadStoreProvider/useSetupMergingEvent.js +45 -0
- package/es/components/FileUploader/hooks/useCancelUpload.js +40 -0
- package/es/components/FileUploader/hooks/useCurrentFile.js +61 -0
- package/es/components/FileUploader/hooks/useCurrentFileOnUploading.js +52 -0
- package/es/components/FileUploader/hooks/useCurrentFileSetupAndBackUp.js +39 -0
- package/es/components/FileUploader/hooks/useFormatFiles.js +64 -0
- package/es/components/FileUploader/hooks/useFormatFilesFindDuplicates.js +75 -0
- package/es/components/FileUploader/hooks/useFormatFilesRemoveDuplicates.js +21 -0
- package/es/components/FileUploader/hooks/useHandleChunkCompletion.js +31 -0
- package/es/components/FileUploader/hooks/useOnMounted.js +24 -0
- package/es/components/FileUploader/hooks/useOnMountedResumeUnfinished.js +58 -0
- package/es/components/FileUploader/hooks/useRetryUpload.js +33 -0
- package/es/components/FileUploader/hooks/useUploadChunk.js +46 -0
- package/es/components/FileUploader/icons/CloseFilled.js +7 -0
- package/es/components/FileUploader/icons/UnkownFileIcon.js +7 -0
- package/es/components/FileUploader/icons/UploadIcon.js +7 -0
- package/es/components/FileUploader/index.css.js +532 -0
- package/es/components/FileUploader/index.js +23 -0
- package/es/components/FileUploader/types.js +13 -0
- package/es/components/FileUploader/utils/calcDisplaySize.js +20 -0
- package/es/components/FileUploader/utils/checkExpiryTime.js +15 -0
- package/es/components/FileUploader/utils/createFileToUpload.js +60 -0
- package/es/components/FileUploader/utils/fileDB/addFilesToIndexdb.js +14 -0
- package/es/components/FileUploader/utils/fileDB/deleteFileInStore.js +18 -0
- package/es/components/FileUploader/utils/fileDB/deleteObjectStore.js +25 -0
- package/es/components/FileUploader/utils/fileDB/index.js +77 -0
- package/es/components/FileUploader/utils/fileDB/openDBAndRetrieveData.js +90 -0
- package/es/components/FileUploader/utils/fileDB/retrieveExistingData.js +49 -0
- package/es/components/FileUploader/utils/modalConfig.css.js +20 -0
- package/es/components/FileUploader/utils/modalConfig.js +32 -0
- package/es/components/FileUploader/utils/retrieveAllFiles.js +70 -0
- package/es/components/FileUploader/utils/splitFileIntoChunk.js +15 -0
- package/es/components/SDK-modal/document-link.js +8 -0
- package/es/components/SDK-modal/index.js +25 -0
- package/es/components/SDK-modal/index.module.scss.js +49 -0
- package/es/components/SDK-modal/inner-modal.js +59 -0
- package/es/components/SDK-modal/locale/translations.js +17 -0
- package/es/components/apply-perm-modal/index.js +53 -0
- package/es/components/apply-perm-modal/index.module.scss.js +96 -0
- package/es/components/auth-tag/index.js +23 -0
- package/es/components/bench-card/index.js +20 -0
- package/es/components/bench-card/index.module.scss.js +48 -0
- package/es/components/confirm-again/index.js +15 -0
- package/es/components/confirm-again/index.scss.js +37 -0
- package/es/components/copy/index.js +41 -0
- package/es/components/copy/index.module.scss.js +15 -0
- package/es/components/corpus-card/index.js +88 -0
- package/es/components/corpus-card/index.module.scss.js +171 -0
- package/es/components/feature-card/classNames.js +72 -0
- package/es/components/feature-card/components.js +48 -0
- package/es/components/feature-card/context.js +13 -0
- package/es/components/feature-card/index.css.js +655 -0
- package/es/components/feature-card/index.js +48 -0
- package/es/components/file-preview/data-table/index.js +94 -0
- package/es/components/file-preview/data-table/index.module.scss.js +54 -0
- package/es/components/file-preview/excel-preview/index.js +132 -0
- package/es/components/file-preview/excel-preview/index.module.scss.js +11 -0
- package/es/components/file-preview/excel-preview/utils.js +46 -0
- package/es/components/file-preview/img-preview/index.js +18 -0
- package/es/components/file-preview/img-preview/index.module.scss.js +17 -0
- package/es/components/file-preview/index.js +124 -0
- package/es/components/file-preview/index.module.scss.js +32 -0
- package/es/components/file-preview/json-preview/index.js +166 -0
- package/es/components/file-preview/markdown-preview/index.js +53 -0
- package/es/components/file-preview/markdown-preview/index.module.scss.js +1055 -0
- package/es/components/file-preview/parquet-preview/index.js +54 -0
- package/es/components/file-preview/pdf-preview/index.js +215 -0
- package/es/components/file-preview/pdf-preview/index.module.scss.js +16 -0
- package/es/components/file-preview/table-preview/index.js +43 -0
- package/es/components/file-preview/table-preview/index.module.scss.js +11 -0
- package/es/components/file-preview/txt-preview/index.js +24 -0
- package/es/components/file-preview/util.js +94 -0
- package/es/components/file-uploader/components/circle-progress.css.js +39 -0
- package/es/components/file-uploader/components/circle-progress.js +12 -0
- package/es/components/file-uploader/components/hooks/use-drop-zone.js +74 -0
- package/es/components/file-uploader/components/hooks/use-file-validation.js +52 -0
- package/es/components/file-uploader/components/icons.js +19 -0
- package/es/components/file-uploader/components/theme.css.js +64 -0
- package/es/components/file-uploader/components/uploader-drop-zone.css.js +66 -0
- package/es/components/file-uploader/components/uploader-drop-zone.js +74 -0
- package/es/components/file-uploader/components/uploader-file-item.css.js +186 -0
- package/es/components/file-uploader/components/uploader-file-item.js +63 -0
- package/es/components/file-uploader/components/uploader-file-list.css.js +43 -0
- package/es/components/file-uploader/components/uploader-file-list.js +27 -0
- package/es/components/file-uploader/components/uploader.css.js +20 -0
- package/es/components/file-uploader/components/uploader.js +51 -0
- package/es/components/file-uploader/components/uploading-status.css.js +52 -0
- package/es/components/file-uploader/components/uploading-status.js +54 -0
- package/es/components/file-uploader/components/utils/directory-reader.js +65 -0
- package/es/components/file-uploader/constants.js +31 -0
- package/es/components/file-uploader/context/action-registry.js +69 -0
- package/es/components/file-uploader/context/file-state-store.js +83 -0
- package/es/components/file-uploader/context/handler-registry.js +119 -0
- package/es/components/file-uploader/context/upload-context.js +36 -0
- package/es/components/file-uploader/context/upload-provider.js +77 -0
- package/es/components/file-uploader/context/upload-reducer.js +21 -0
- package/es/components/file-uploader/context/use-upload-engine.js +440 -0
- package/es/components/file-uploader/engine/queue-callbacks.js +257 -0
- package/es/components/file-uploader/engine/queue-manager.js +195 -0
- package/es/components/file-uploader/engine/queue-uploader.js +25 -0
- package/es/components/file-uploader/hooks/use-upload.js +327 -0
- package/es/components/file-uploader/utils/chunk-handlers.js +66 -0
- package/es/components/file-uploader/utils/ensure-handlers.js +53 -0
- package/es/components/file-uploader/utils/error-handler.js +84 -0
- package/es/components/file-uploader/utils/upload-controllers.js +43 -0
- package/es/components/file-uploader/utils/upload-handler.js +68 -0
- package/es/components/file-uploader/utils/validate-handlers.js +16 -0
- package/es/components/floating-label-input/index.js +46 -0
- package/es/components/floating-label-input/index.module.scss.js +30 -0
- package/es/components/floating-layer/index.js +15 -0
- package/es/components/floating-layer/index.scss.js +31 -0
- package/es/components/header/index.js +10 -0
- package/es/components/header/index.module.scss.js +16 -0
- package/es/components/input-tag/index.js +65 -0
- package/es/components/menu/index.js +96 -0
- package/es/components/menu/index.module.scss.js +188 -0
- package/es/components/model-card/index.js +20 -0
- package/es/components/model-card/index.module.scss.js +116 -0
- package/es/components/notion-editor/code-block/index.js +18 -0
- package/es/components/notion-editor/code-block/languageDetector.js +134 -0
- package/es/components/notion-editor/code-block/languages.js +42 -0
- package/es/components/notion-editor/index.js +258 -0
- package/es/components/notion-editor/index.scss.js +421 -0
- package/es/components/notion-editor/parseMarkdown.js +184 -0
- package/es/components/operator-chain/components/AddButton.js +20 -0
- package/es/components/operator-chain/components/IOCard.js +8 -0
- package/es/components/operator-chain/components/SingleCard.js +12 -0
- package/es/components/operator-chain/components/VirtualDropdown.js +56 -0
- package/es/components/operator-chain/index.js +83 -0
- package/es/components/operator-chain/index.module.scss.js +232 -0
- package/es/components/permission-editor/index.js +9 -0
- package/es/components/permission-editor/permissionEditModal/index.js +37 -0
- package/es/components/permission-editor/permissionEditor/index.js +253 -0
- package/es/components/permission-editor/permissionEditor/index.module.scss.js +22 -0
- package/es/components/permission-editor/permissionViewPopover/index.js +9 -0
- package/es/components/popover-select/index.js +42 -0
- package/es/components/popover-select/index.module.scss.js +22 -0
- package/es/components/radio-card/index.js +24 -0
- package/es/components/radio-card/index.scss.js +58 -0
- package/es/components/section-heading/classNames.js +22 -0
- package/es/components/section-heading/components.js +27 -0
- package/es/components/section-heading/context.js +13 -0
- package/es/components/section-heading/index.css.js +648 -0
- package/es/components/section-heading/index.js +37 -0
- package/es/components/status-tag/index.js +31 -0
- package/es/components/tag-group-filter/dataSizeFilter.js +100 -0
- package/es/components/tag-group-filter/index.js +53 -0
- package/es/components/tag-group-filter/index.module.scss.js +134 -0
- package/es/components/tag-group-filter/tagFilter.js +19 -0
- package/es/components/tag-view/index.js +138 -0
- package/es/components/tag-view/index.module.scss.js +56 -0
- package/es/components/tag-view/useSize.js +41 -0
- package/es/components/tip-tap/bubble-menu.js +47 -0
- package/es/components/tip-tap/editor.js +34 -0
- package/es/components/tip-tap/extensions/index.js +133 -0
- package/es/components/tip-tap/extensions/markdown-paste.js +148 -0
- package/es/components/tip-tap/icons/index.js +29 -0
- package/es/components/tip-tap/reader.js +15 -0
- package/es/components/tip-tap/styles/editor.css.js +863 -0
- package/es/components/tip-tap/toolbar/components/color-picker.js +76 -0
- package/es/components/tip-tap/toolbar/components/heading-dropdown.js +44 -0
- package/es/components/tip-tap/toolbar/components/image-button.js +26 -0
- package/es/components/tip-tap/toolbar/components/link-button.js +107 -0
- package/es/components/tip-tap/toolbar/components/table-button.js +37 -0
- package/es/components/tip-tap/toolbar/components/toolbar-button.js +7 -0
- package/es/components/tip-tap/toolbar/index.js +39 -0
- package/es/components/uploadDrawer/UploadStoreProvider.js +61 -0
- package/es/components/uploadDrawer/fileUploadDrawer.js +66 -0
- package/es/components/uploadDrawer/fileUploadDrawerFileDragger.js +71 -0
- package/es/components/uploadDrawer/fileUploadDrawerList.js +54 -0
- package/es/components/uploadDrawer/fileUploadDrawerListProgressButton.js +54 -0
- package/es/components/uploadDrawer/hooks/useCancelUpload.js +37 -0
- package/es/components/uploadDrawer/hooks/useFilterFiles.js +107 -0
- package/es/components/uploadDrawer/hooks/useFinishUpload.js +33 -0
- package/es/components/uploadDrawer/hooks/useFormatFiles.js +54 -0
- package/es/components/uploadDrawer/hooks/useProgressButtonRef.js +22 -0
- package/es/components/uploadDrawer/hooks/useRemoveFilesInUploadQueue.js +21 -0
- package/es/components/uploadDrawer/hooks/useResumeUnfinishedUploads.js +52 -0
- package/es/components/uploadDrawer/hooks/useRetryUpload.js +35 -0
- package/es/components/uploadDrawer/hooks/useSaveUnfinishedUploads.js +42 -0
- package/es/components/uploadDrawer/hooks/useSetupUpload.js +80 -0
- package/es/components/uploadDrawer/hooks/useUploadFileToOSS.js +23 -0
- package/es/components/uploadDrawer/index.css.js +511 -0
- package/es/components/uploadDrawer/index.js +43 -0
- package/es/components/uploadDrawer/utils/calcDisplaySize.js +19 -0
- package/es/components/uploadDrawer/utils/constant.js +16 -0
- package/es/components/uploadDrawer/utils/createFileToUpload.js +51 -0
- package/es/components/uploadDrawer/utils/fileDB/deleteFileInStore.js +28 -0
- package/es/components/uploadDrawer/utils/fileDB/deleteObjectStore.js +28 -0
- package/es/components/uploadDrawer/utils/fileDB/handleAddFilesToDB.js +37 -0
- package/es/components/uploadDrawer/utils/fileDB/index.js +9 -0
- package/es/components/uploadDrawer/utils/fileDB/openDB.js +111 -0
- package/es/components/uploadDrawer/utils/retrieveAllFiles.js +110 -0
- package/es/components/uploadDrawer/utils/shouldCreateNewFile.js +13 -0
- package/es/components/uploadDrawer/utils/splitFileIntoChunk.js +15 -0
- package/es/index.js +42 -1
- package/es/lib/utils.js +8 -0
- package/lib/index.js +1 -1
- package/package.json +164 -154
- package/rollup.es.config.mjs +177 -0
- package/tsconfig.rollup.json +7 -0
package/package.json
CHANGED
|
@@ -1,154 +1,164 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@zjlab-fe/data-hub-ui",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"main": "lib/index.js",
|
|
5
|
-
"module": "es/index.js",
|
|
6
|
-
"types": "dist/types/index.d.ts",
|
|
7
|
-
"license": "ISC",
|
|
8
|
-
"scripts": {
|
|
9
|
-
"start": "cross-env NODE_ENV=development webpack-dev-server --open /data-hub-ui/demo --config webpack.dev.config.js",
|
|
10
|
-
"build:dist": "npm run build:lib & npm run build:es",
|
|
11
|
-
"build": "cross-env NODE_ENV=production webpack --config webpack.dev.config.js",
|
|
12
|
-
"build:lib": "cross-env NODE_ENV=production webpack --config webpack.prod.config.js",
|
|
13
|
-
"build:es": "
|
|
14
|
-
"generate:skill": "node scripts/generateComponentsSkill.js",
|
|
15
|
-
"lint": "npm run lint-eslint",
|
|
16
|
-
"lint-eslint": "eslint -c .eslintrc.js --ext .ts,.tsx,.js,.jsx src --fix",
|
|
17
|
-
"prepare": "husky",
|
|
18
|
-
"test": "jest --coverage"
|
|
19
|
-
},
|
|
20
|
-
"devDependencies": {
|
|
21
|
-
"@babel/core": "^7.24.7",
|
|
22
|
-
"@babel/preset-env": "^7.25.7",
|
|
23
|
-
"@babel/preset-react": "^7.24.7",
|
|
24
|
-
"@babel/preset-typescript": "^7.25.7",
|
|
25
|
-
"@jest/globals": "^29.7.0",
|
|
26
|
-
"@
|
|
27
|
-
"@
|
|
28
|
-
"@
|
|
29
|
-
"@
|
|
30
|
-
"@
|
|
31
|
-
"@
|
|
32
|
-
"@
|
|
33
|
-
"@
|
|
34
|
-
"@
|
|
35
|
-
"@
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"eslint
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
"@
|
|
84
|
-
"@
|
|
85
|
-
"@
|
|
86
|
-
"@
|
|
87
|
-
"@
|
|
88
|
-
"@
|
|
89
|
-
"@
|
|
90
|
-
"@
|
|
91
|
-
"@
|
|
92
|
-
"@tiptap/
|
|
93
|
-
"@tiptap/extension-
|
|
94
|
-
"@tiptap/extension-
|
|
95
|
-
"@tiptap/extension-
|
|
96
|
-
"@tiptap/extension-
|
|
97
|
-
"@tiptap/extension-
|
|
98
|
-
"@tiptap/extension-
|
|
99
|
-
"@tiptap/extension-
|
|
100
|
-
"@tiptap/
|
|
101
|
-
"@tiptap/
|
|
102
|
-
"@tiptap/
|
|
103
|
-
"@tiptap/
|
|
104
|
-
"@
|
|
105
|
-
"
|
|
106
|
-
"
|
|
107
|
-
"
|
|
108
|
-
"
|
|
109
|
-
"
|
|
110
|
-
"
|
|
111
|
-
"
|
|
112
|
-
"
|
|
113
|
-
"
|
|
114
|
-
"
|
|
115
|
-
"
|
|
116
|
-
"
|
|
117
|
-
"
|
|
118
|
-
"
|
|
119
|
-
"
|
|
120
|
-
"
|
|
121
|
-
"
|
|
122
|
-
"
|
|
123
|
-
"
|
|
124
|
-
"
|
|
125
|
-
"
|
|
126
|
-
"
|
|
127
|
-
"
|
|
128
|
-
"
|
|
129
|
-
"
|
|
130
|
-
"
|
|
131
|
-
"
|
|
132
|
-
"
|
|
133
|
-
"
|
|
134
|
-
"
|
|
135
|
-
"
|
|
136
|
-
"
|
|
137
|
-
"
|
|
138
|
-
"
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
"
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
"
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
},
|
|
150
|
-
"
|
|
151
|
-
"
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@zjlab-fe/data-hub-ui",
|
|
3
|
+
"version": "0.22.0",
|
|
4
|
+
"main": "lib/index.js",
|
|
5
|
+
"module": "es/index.js",
|
|
6
|
+
"types": "dist/types/index.d.ts",
|
|
7
|
+
"license": "ISC",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"start": "cross-env NODE_ENV=development webpack-dev-server --open /data-hub-ui/demo --config webpack.dev.config.js",
|
|
10
|
+
"build:dist": "npm run build:lib & npm run build:es",
|
|
11
|
+
"build": "cross-env NODE_ENV=production webpack --config webpack.dev.config.js",
|
|
12
|
+
"build:lib": "cross-env NODE_ENV=production webpack --config webpack.prod.config.js",
|
|
13
|
+
"build:es": "rollup -c rollup.es.config.mjs",
|
|
14
|
+
"generate:skill": "node scripts/generateComponentsSkill.js",
|
|
15
|
+
"lint": "npm run lint-eslint",
|
|
16
|
+
"lint-eslint": "eslint -c .eslintrc.js --ext .ts,.tsx,.js,.jsx src --fix",
|
|
17
|
+
"prepare": "husky",
|
|
18
|
+
"test": "jest --coverage"
|
|
19
|
+
},
|
|
20
|
+
"devDependencies": {
|
|
21
|
+
"@babel/core": "^7.24.7",
|
|
22
|
+
"@babel/preset-env": "^7.25.7",
|
|
23
|
+
"@babel/preset-react": "^7.24.7",
|
|
24
|
+
"@babel/preset-typescript": "^7.25.7",
|
|
25
|
+
"@jest/globals": "^29.7.0",
|
|
26
|
+
"@rollup/plugin-alias": "^6.0.0",
|
|
27
|
+
"@rollup/plugin-commonjs": "^29.0.3",
|
|
28
|
+
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
29
|
+
"@rollup/plugin-typescript": "^12.3.0",
|
|
30
|
+
"@rollup/plugin-url": "^8.0.2",
|
|
31
|
+
"@tailwindcss/typography": "^0.5.16",
|
|
32
|
+
"@testing-library/dom": "^10.4.0",
|
|
33
|
+
"@testing-library/react": "^16.0.1",
|
|
34
|
+
"@types/filesystem": "^0.0.36",
|
|
35
|
+
"@types/jest": "^29.5.13",
|
|
36
|
+
"@types/pdfjs-dist": "^2.10.378",
|
|
37
|
+
"@types/react": "^18.3.3",
|
|
38
|
+
"@types/react-dom": "^18.3.0",
|
|
39
|
+
"@typescript-eslint/eslint-plugin": "^7.16.0",
|
|
40
|
+
"@typescript-eslint/parser": "^7.16.0",
|
|
41
|
+
"babel-jest": "^29.7.0",
|
|
42
|
+
"babel-loader": "^9.1.3",
|
|
43
|
+
"babel-preset-react-app": "^10.0.1",
|
|
44
|
+
"cross-env": "^7.0.3",
|
|
45
|
+
"css-loader": "^7.1.2",
|
|
46
|
+
"eslint": "8.x",
|
|
47
|
+
"eslint-config-prettier": "^9.1.0",
|
|
48
|
+
"eslint-plugin-prettier": "^5.1.3",
|
|
49
|
+
"eslint-plugin-react": "^7.34.4",
|
|
50
|
+
"eslint-plugin-react-hooks": "^4.6.2",
|
|
51
|
+
"file-loader": "^6.2.0",
|
|
52
|
+
"html-webpack-plugin": "^5.6.0",
|
|
53
|
+
"husky": "^9.0.11",
|
|
54
|
+
"jest": "^29.7.0",
|
|
55
|
+
"jest-environment-jsdom": "^29.7.0",
|
|
56
|
+
"lint-staged": "^15.2.7",
|
|
57
|
+
"mini-css-extract-plugin": "^2.9.0",
|
|
58
|
+
"postcss": "^8.4.47",
|
|
59
|
+
"postcss-import": "^16.1.1",
|
|
60
|
+
"postcss-loader": "^8.1.1",
|
|
61
|
+
"postcss-modules": "^6.0.1",
|
|
62
|
+
"postcss-nested": "^6.2.0",
|
|
63
|
+
"prettier": "^3.3.3",
|
|
64
|
+
"raw-loader": "^4.0.2",
|
|
65
|
+
"react-syntax-highlighter": "^15.6.1",
|
|
66
|
+
"react-test-renderer": "^18.3.1",
|
|
67
|
+
"rollup": "^4.62.2",
|
|
68
|
+
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
69
|
+
"rollup-plugin-postcss": "^4.0.2",
|
|
70
|
+
"sass": "1.77.x",
|
|
71
|
+
"sass-loader": "14.x",
|
|
72
|
+
"style-loader": "^4.0.0",
|
|
73
|
+
"ts-jest": "^29.2.5",
|
|
74
|
+
"ts-loader": "^9.5.1",
|
|
75
|
+
"ts-node": "^10.9.2",
|
|
76
|
+
"typescript": "^5.6.3",
|
|
77
|
+
"url-loader": "^4.1.1",
|
|
78
|
+
"webpack": "^5.92.1",
|
|
79
|
+
"webpack-cli": "^5.1.4",
|
|
80
|
+
"webpack-dev-server": "^5.0.4"
|
|
81
|
+
},
|
|
82
|
+
"dependencies": {
|
|
83
|
+
"@ant-design/icons": "^5.3.7",
|
|
84
|
+
"@blocknote/core": "^0.51.4",
|
|
85
|
+
"@blocknote/mantine": "^0.51.4",
|
|
86
|
+
"@blocknote/react": "^0.51.4",
|
|
87
|
+
"@codesandbox/sandpack-react": "^2.19.9",
|
|
88
|
+
"@floating-ui/dom": "^1.7.4",
|
|
89
|
+
"@mantine/core": "^8.3",
|
|
90
|
+
"@mantine/hooks": "^8.3",
|
|
91
|
+
"@radix-ui/react-slot": "^1.2.4",
|
|
92
|
+
"@tiptap/core": "^3.14.0",
|
|
93
|
+
"@tiptap/extension-code-block-lowlight": "^3.14.0",
|
|
94
|
+
"@tiptap/extension-color": "^3.14.0",
|
|
95
|
+
"@tiptap/extension-floating-menu": "^3.14.0",
|
|
96
|
+
"@tiptap/extension-highlight": "^3.14.0",
|
|
97
|
+
"@tiptap/extension-image": "^3.14.0",
|
|
98
|
+
"@tiptap/extension-link": "^3.14.0",
|
|
99
|
+
"@tiptap/extension-list-item": "^3.14.0",
|
|
100
|
+
"@tiptap/extension-placeholder": "^3.14.0",
|
|
101
|
+
"@tiptap/extension-table": "^3.14.0",
|
|
102
|
+
"@tiptap/extension-table-cell": "^3.14.0",
|
|
103
|
+
"@tiptap/extension-table-header": "^3.14.0",
|
|
104
|
+
"@tiptap/extension-table-row": "^3.14.0",
|
|
105
|
+
"@tiptap/extension-text-align": "^3.14.0",
|
|
106
|
+
"@tiptap/extension-text-style": "^3.14.0",
|
|
107
|
+
"@tiptap/extension-underline": "^3.14.0",
|
|
108
|
+
"@tiptap/markdown": "^3.14.0",
|
|
109
|
+
"@tiptap/pm": "^3.14.0",
|
|
110
|
+
"@tiptap/react": "^3.14.0",
|
|
111
|
+
"@tiptap/starter-kit": "^3.14.0",
|
|
112
|
+
"@zjlab-fe/util": "^0.5.5",
|
|
113
|
+
"antd": "^5.19.2",
|
|
114
|
+
"arrow-js-ffi": "^0.4.2",
|
|
115
|
+
"autoprefixer": "^10.4.20",
|
|
116
|
+
"axios": "^1.7.2",
|
|
117
|
+
"chardet": "^2.1.0",
|
|
118
|
+
"classnames": "^2.5.1",
|
|
119
|
+
"clsx": "^2.1.1",
|
|
120
|
+
"copy-to-clipboard": "^3.3.3",
|
|
121
|
+
"dayjs": "^1.11.11",
|
|
122
|
+
"i18next": "^25.0.0",
|
|
123
|
+
"jotai": "^2.11.0",
|
|
124
|
+
"jotai-scope": "^0.9.7",
|
|
125
|
+
"lowlight": "^3.3.0",
|
|
126
|
+
"marked": "^16.1.2",
|
|
127
|
+
"parquet-wasm": "^0.6.1",
|
|
128
|
+
"prosemirror-state": "^1.4.3",
|
|
129
|
+
"prosemirror-transform": "^1.12.0",
|
|
130
|
+
"react": "^18.3.1",
|
|
131
|
+
"react-dom": "^18.3.1",
|
|
132
|
+
"react-error-boundary": "^5.0.0",
|
|
133
|
+
"react-json-tree": "^0.20.0",
|
|
134
|
+
"react-json-view": "^1.21.3",
|
|
135
|
+
"react-markdown": "^9.1.0",
|
|
136
|
+
"react-router": "^6.24.1",
|
|
137
|
+
"react-router-dom": "^6.24.1",
|
|
138
|
+
"rehype-mathjax": "^7.1.0",
|
|
139
|
+
"rehype-raw": "^7.0.0",
|
|
140
|
+
"remark-gfm": "^4.0.0",
|
|
141
|
+
"remark-math": "^6.0.0",
|
|
142
|
+
"resize-observer-polyfill": "^1.5.1",
|
|
143
|
+
"shiki": "^4.1.0",
|
|
144
|
+
"tailwind-merge": "^2.6.0",
|
|
145
|
+
"tailwindcss": "^3.4.13",
|
|
146
|
+
"tslib": "^2.8.1",
|
|
147
|
+
"unist-util-visit": "^5.0.0",
|
|
148
|
+
"uuid": "^14.0.0"
|
|
149
|
+
},
|
|
150
|
+
"husky": {
|
|
151
|
+
"hooks": {
|
|
152
|
+
"pre-commit": "lint-staged"
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
"lint-staged": {
|
|
156
|
+
"*.{ts,tsx,js,jsx}": [
|
|
157
|
+
"eslint --config .eslintrc.js"
|
|
158
|
+
]
|
|
159
|
+
},
|
|
160
|
+
"publishConfig": {
|
|
161
|
+
"registry": "https://registry.npmjs.org/"
|
|
162
|
+
},
|
|
163
|
+
"packageManager": "pnpm@9.12.1+sha256.91452fdfa46234ae447d46d5c4fc4e7e0a7058f90495c4b6f77f8beebbb154e3"
|
|
164
|
+
}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import resolve from '@rollup/plugin-node-resolve';
|
|
2
|
+
import commonjs from '@rollup/plugin-commonjs';
|
|
3
|
+
import typescript from '@rollup/plugin-typescript';
|
|
4
|
+
import peerDepsExternal from 'rollup-plugin-peer-deps-external';
|
|
5
|
+
import alias from '@rollup/plugin-alias';
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import fs from 'fs';
|
|
8
|
+
import { fileURLToPath } from 'url';
|
|
9
|
+
import * as sass from 'sass';
|
|
10
|
+
import postcss from 'postcss';
|
|
11
|
+
import postcssModules from 'postcss-modules';
|
|
12
|
+
import tailwindcss from 'tailwindcss';
|
|
13
|
+
import autoprefixer from 'autoprefixer';
|
|
14
|
+
import postcssImport from 'postcss-import';
|
|
15
|
+
import postcssNested from 'postcss-nested';
|
|
16
|
+
|
|
17
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
18
|
+
const srcDir = path.resolve(__dirname, 'src');
|
|
19
|
+
|
|
20
|
+
// PostCSS 基础插件
|
|
21
|
+
const basePostcssPlugins = [postcssImport(), postcssNested(), tailwindcss(), autoprefixer()];
|
|
22
|
+
|
|
23
|
+
// 图片插件:将图片全部 base64 内联到 JS 中
|
|
24
|
+
// 消费端无需任何额外配置,无路径问题
|
|
25
|
+
function imagePlugin() {
|
|
26
|
+
return {
|
|
27
|
+
name: 'images',
|
|
28
|
+
async load(id) {
|
|
29
|
+
const ext = path.extname(id).toLowerCase();
|
|
30
|
+
if (!['.png', '.jpg', '.jpeg', '.gif', '.svg'].includes(ext)) return null;
|
|
31
|
+
if (id.includes('node_modules')) return null;
|
|
32
|
+
|
|
33
|
+
const buffer = fs.readFileSync(id);
|
|
34
|
+
const mimeMap = {
|
|
35
|
+
'.png': 'image/png',
|
|
36
|
+
'.jpg': 'image/jpeg',
|
|
37
|
+
'.jpeg': 'image/jpeg',
|
|
38
|
+
'.gif': 'image/gif',
|
|
39
|
+
'.svg': 'image/svg+xml',
|
|
40
|
+
};
|
|
41
|
+
const dataUrl = `data:${mimeMap[ext] || 'image/png'};base64,${buffer.toString('base64')}`;
|
|
42
|
+
|
|
43
|
+
return { code: `export default ${JSON.stringify(dataUrl)};`, map: null };
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// 自定义 SCSS/CSS 处理插件
|
|
49
|
+
function stylePlugin() {
|
|
50
|
+
return {
|
|
51
|
+
name: 'styles',
|
|
52
|
+
|
|
53
|
+
async transform(code, id) {
|
|
54
|
+
// 处理 src 目录下的样式文件
|
|
55
|
+
const isSrc = id.startsWith(srcDir);
|
|
56
|
+
// 处理从 node_modules 导入的 CSS(经由 src 文件引用)
|
|
57
|
+
const isNodeModuleCss = !isSrc && id.includes('node_modules') && id.endsWith('.css');
|
|
58
|
+
|
|
59
|
+
if (!isSrc && !isNodeModuleCss) return null;
|
|
60
|
+
if (!id.endsWith('.scss') && !id.endsWith('.css')) return null;
|
|
61
|
+
|
|
62
|
+
const isModule = id.endsWith('.module.scss') && isSrc;
|
|
63
|
+
const ext = path.extname(id);
|
|
64
|
+
const dir = path.dirname(id);
|
|
65
|
+
|
|
66
|
+
let processedCode = code;
|
|
67
|
+
|
|
68
|
+
// 替换 SCSS @import 中的 @/ 为相对路径(仅 src 文件)
|
|
69
|
+
if (isSrc) {
|
|
70
|
+
processedCode = code.replace(
|
|
71
|
+
/@(import|use)\s+['"]@\/([^'"]+)['"]/g,
|
|
72
|
+
(_match, directive, importPath) => {
|
|
73
|
+
const absolutePath = path.resolve(srcDir, importPath);
|
|
74
|
+
const relativePath = path.relative(dir, absolutePath).replace(/\\/g, '/');
|
|
75
|
+
return `@${directive} '${relativePath.startsWith('.') ? relativePath : './' + relativePath}'`;
|
|
76
|
+
},
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// 编译 SCSS → CSS
|
|
81
|
+
let css;
|
|
82
|
+
try {
|
|
83
|
+
if (ext === '.scss') {
|
|
84
|
+
const result = sass.compileString(processedCode, {
|
|
85
|
+
loadPaths: [dir, srcDir, path.resolve(srcDir, 'styles')],
|
|
86
|
+
});
|
|
87
|
+
css = result.css;
|
|
88
|
+
} else {
|
|
89
|
+
css = processedCode;
|
|
90
|
+
}
|
|
91
|
+
} catch (err) {
|
|
92
|
+
this.error(`SCSS compile error: ${err.message}`);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
// 对所有 CSS 运行 PostCSS(tailwindcss + postcss-nested + postcss-import)
|
|
96
|
+
try {
|
|
97
|
+
const tailwindResult = await postcss(basePostcssPlugins).process(css, {
|
|
98
|
+
from: id,
|
|
99
|
+
to: id.replace(/\.(scss|css)$/, '.css'),
|
|
100
|
+
});
|
|
101
|
+
css = tailwindResult.css;
|
|
102
|
+
} catch (err) {
|
|
103
|
+
this.error(`PostCSS error: ${err.message}`);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// 对 .module.scss 文件,用 postcss-modules 提取类名映射
|
|
107
|
+
let classMap = {};
|
|
108
|
+
|
|
109
|
+
if (isModule) {
|
|
110
|
+
const modulesPlugin = postcssModules({
|
|
111
|
+
generateScopedName: '[name]__[local]___[hash:base64:5]',
|
|
112
|
+
getJSON(cssFileName, json) {
|
|
113
|
+
classMap = json;
|
|
114
|
+
},
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
const result = await postcss([modulesPlugin]).process(css, { from: id });
|
|
118
|
+
css = result.css;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
// 生成 JS 模块代码
|
|
122
|
+
const escapedCss = css.replace(/\\/g, '\\\\').replace(/`/g, '\\`').replace(/\$/g, '\\$');
|
|
123
|
+
|
|
124
|
+
let jsCode;
|
|
125
|
+
if (isModule) {
|
|
126
|
+
const namedExports = Object.entries(classMap)
|
|
127
|
+
.map(([key, value]) => {
|
|
128
|
+
const jsKey = key.replace(/[^a-zA-Z0-9_$]/g, '_');
|
|
129
|
+
return `var ${jsKey} = ${JSON.stringify(value)}; export { ${jsKey} as ${JSON.stringify(key)} };`;
|
|
130
|
+
})
|
|
131
|
+
.join('\n');
|
|
132
|
+
|
|
133
|
+
const mapJson = JSON.stringify(classMap);
|
|
134
|
+
|
|
135
|
+
jsCode = `
|
|
136
|
+
var style = document.createElement('style');
|
|
137
|
+
style.textContent = \`${escapedCss}\`;
|
|
138
|
+
document.head.appendChild(style);
|
|
139
|
+
|
|
140
|
+
${namedExports}
|
|
141
|
+
|
|
142
|
+
var styles = ${mapJson};
|
|
143
|
+
export default styles;
|
|
144
|
+
`;
|
|
145
|
+
} else {
|
|
146
|
+
// 普通样式或 node_modules CSS:只注入 CSS,没有 export
|
|
147
|
+
jsCode = `
|
|
148
|
+
var style = document.createElement('style');
|
|
149
|
+
style.textContent = \`${escapedCss}\`;
|
|
150
|
+
document.head.appendChild(style);
|
|
151
|
+
`;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
return { code: jsCode, map: null };
|
|
155
|
+
},
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export default {
|
|
160
|
+
input: 'src/index.tsx',
|
|
161
|
+
output: {
|
|
162
|
+
dir: 'es',
|
|
163
|
+
format: 'esm',
|
|
164
|
+
preserveModules: true,
|
|
165
|
+
preserveModulesRoot: 'src',
|
|
166
|
+
entryFileNames: '[name].js',
|
|
167
|
+
},
|
|
168
|
+
plugins: [
|
|
169
|
+
peerDepsExternal({ includeDependencies: true }),
|
|
170
|
+
alias({ entries: [{ find: '@', replacement: srcDir }] }),
|
|
171
|
+
imagePlugin(),
|
|
172
|
+
resolve({ extensions: ['.js', '.ts', '.jsx', '.tsx'] }),
|
|
173
|
+
commonjs(),
|
|
174
|
+
stylePlugin(),
|
|
175
|
+
typescript({ tsconfig: './tsconfig.rollup.json' }),
|
|
176
|
+
],
|
|
177
|
+
};
|