├── .eslintrc.json ├── .github └── workflows │ ├── main.yml │ └── publish.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── assets └── logo.svg ├── index.html ├── logo.svg ├── package.json ├── pnpm-lock.yaml ├── postcss.config.js ├── readme.md ├── release.config.js ├── renovate.json ├── src ├── App.tsx ├── BarApp.tsx ├── EditorApp.tsx ├── IncrementalBlock.ts ├── MainApp.tsx ├── ModalApp.tsx ├── PopoverApp.tsx ├── algorithm │ ├── beta.ts │ ├── priority.ts │ └── scheduling.ts ├── anki │ ├── anki.ts │ └── ankiSlice.ts ├── db.ts ├── docx │ ├── DocxWindow.tsx │ ├── docx.ts │ ├── docxSlice.ts │ └── selection.ts ├── globals.ts ├── hooks │ ├── useCalculateHeight.tsx │ └── useMainSizeAndPos.tsx ├── ib │ ├── actions.ts │ ├── create.ts │ └── read.ts ├── import │ ├── DioUpload.tsx │ ├── ExtractPanel.tsx │ ├── HTMLUpload.tsx │ ├── Import.tsx │ ├── MedxImport.tsx │ ├── YtUpload.tsx │ ├── importSlice.ts │ └── types.ts ├── index.css ├── learn │ ├── ActionsPopover.tsx │ ├── LearnBar.tsx │ ├── LearnWindow.tsx │ ├── PriorityComponent.tsx │ ├── PriorityPopover.tsx │ ├── QueuePopover.tsx │ ├── ScheduleComponent.tsx │ ├── SchedulePopover.tsx │ ├── SettingsComponent.tsx │ └── learnSlice.ts ├── logseq │ ├── block-ui.ts │ ├── blockrender.ts │ ├── command.ts │ ├── events.ts │ ├── macro.ts │ ├── nav.ts │ ├── query.ts │ ├── settings.ts │ └── theme.ts ├── main.tsx ├── main │ ├── DueDateView.tsx │ ├── IbsView.tsx │ ├── IntervalView.tsx │ ├── MainWindow.tsx │ ├── Postpone.tsx │ ├── RefsView.tsx │ └── mainSlice.ts ├── medx │ ├── ExtractionView.tsx │ ├── MedxWindow.tsx │ ├── PlayerView.tsx │ ├── RangeSelector.tsx │ ├── command.ts │ ├── macro.tsx │ ├── media.tsx │ └── medxSlice.ts ├── medx_old │ ├── ExtractionView.tsx │ ├── MedxWindow.tsx │ ├── PlayerView.tsx │ ├── RangeSelector.tsx │ ├── command.ts │ ├── jump │ │ ├── ExtractsView.tsx │ │ ├── JumpView.tsx │ │ └── SubsView.tsx │ ├── macro.tsx │ ├── media.tsx │ └── medxSlice.ts ├── modules.d.ts ├── state │ ├── appSlice.ts │ ├── hooks.ts │ ├── listenerMiddleware.ts │ ├── store.ts │ └── viewSlice.ts ├── types.ts ├── utils │ ├── datetime.ts │ ├── logseq.ts │ ├── theme.ts │ └── utils.ts └── widgets │ ├── BetaGraph.tsx │ ├── Buttons.tsx │ ├── IbItem.tsx │ ├── Popover.tsx │ ├── PrioritySlider.tsx │ ├── RefButton.tsx │ ├── ScheduleView.tsx │ └── Select.tsx ├── tailwind.config.js ├── tests └── ib.test.js ├── tsconfig.json ├── vite.config.ts └── vitest.config.ts /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "eslint:recommended", 4 | "plugin:react/recommended", 5 | "plugin:@typescript-eslint/eslint-recommended", 6 | "plugin:@typescript-eslint/recommended" 7 | ], 8 | "plugins": ["@typescript-eslint", "react-hooks"], 9 | "parser": "@typescript-eslint/parser", 10 | "rules": { 11 | "react-hooks/rules-of-hooks": "error", 12 | "react-hooks/exhaustive-deps": "warn", 13 | "import/prefer-default-export": "off", 14 | "@typescript-eslint/ban-ts-comment": "off", 15 | "@typescript-eslint/no-non-null-assertion": "off", 16 | "@typescript-eslint/explicit-module-boundary-types": "off" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: Releases 4 | 5 | env: 6 | PLUGIN_NAME: logseq-plugin-template-react 7 | 8 | # Controls when the action will run. 9 | on: 10 | # push: 11 | # branches: 12 | # - "master" 13 | # Allows you to run this workflow manually from the Actions tab 14 | workflow_dispatch: 15 | 16 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 17 | jobs: 18 | release: 19 | # The type of runner that the job will run on 20 | runs-on: ubuntu-latest 21 | 22 | # Steps represent a sequence of tasks that will be executed as part of the job 23 | steps: 24 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 25 | - uses: actions/checkout@v3 26 | - uses: actions/setup-node@v3 27 | with: 28 | node-version: "16" 29 | - uses: pnpm/action-setup@v2.4.0 30 | with: 31 | version: 6.0.2 32 | - run: pnpm install 33 | - run: pnpm build 34 | - name: Install zip 35 | uses: montudor/action-zip@v1 36 | - name: Release 37 | run: npx semantic-release 38 | env: 39 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 40 | -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | # From: benjypng / logseq-zoterolocal-plugin 2 | name: Build Logseq Plugin 3 | 4 | on: 5 | push: 6 | branches: 7 | - "main" 8 | paths-ignore: 9 | - 'README.md' 10 | workflow_dispatch: 11 | 12 | env: 13 | PLUGIN_NAME: ${{ github.event.repository.name }} 14 | 15 | jobs: 16 | build: 17 | runs-on: ubuntu-latest 18 | 19 | steps: 20 | - uses: actions/checkout@v3 21 | 22 | - name: Use Node.js 23 | uses: actions/setup-node@v3 24 | with: 25 | node-version: "20.x" # You might need to adjust this value to your own version 26 | 27 | - uses: pnpm/action-setup@v4 28 | with: 29 | version: 9.4.0 30 | 31 | - name: Build 32 | id: build 33 | run: | 34 | tsc && vite build 35 | mkdir ${{ env.PLUGIN_NAME }} 36 | cp README.md package.json icon.svg ${{ env.PLUGIN_NAME }} 37 | mv dist ${{ env.PLUGIN_NAME }} 38 | zip -r ${{ env.PLUGIN_NAME }}.zip ${{ env.PLUGIN_NAME }} 39 | ls 40 | echo "tag_name=git tag --sort version:refname | tail -n 1" >> $GITHUB_OUTPUT 41 | 42 | - name: Release 43 | run: npx semantic-release 44 | env: 45 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 46 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | dist 4 | dist-ssr 5 | *.local 6 | .vscode 7 | incremental_blocks.zip 8 | 9 | *~ 10 | \#*\# 11 | .#* 12 | 13 | .aider* 14 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## [2.1.1](https://github.com/pengx17/logseq-plugin-template-react/compare/v2.1.0...v2.1.1) (2022-03-24) 2 | 3 | 4 | ### Bug Fixes 5 | 6 | * revert bot pr ([59527a7](https://github.com/pengx17/logseq-plugin-template-react/commit/59527a7044bec0ddd17a79de54844730e8a591a4)) 7 | 8 | # [2.1.0](https://github.com/pengx17/logseq-plugin-template-react/compare/v2.0.1...v2.1.0) (2022-03-24) 9 | 10 | 11 | ### Bug Fixes 12 | 13 | * remove unused line ([0d69a50](https://github.com/pengx17/logseq-plugin-template-react/commit/0d69a504e4847b4859377ada65766b887920ae38)) 14 | * update logseq-dev-plugin ([36a69f7](https://github.com/pengx17/logseq-plugin-template-react/commit/36a69f7f13789cd86156273dbf8c01fad793b3e1)) 15 | 16 | 17 | ### Features 18 | 19 | * use vite-plugin-logseq ([54aa154](https://github.com/pengx17/logseq-plugin-template-react/commit/54aa154615eafa9af8727d0fc1f3031c5e610aa7)) 20 | 21 | ## [2.0.1](https://github.com/pengx17/logseq-plugin-template-react/compare/v2.0.0...v2.0.1) (2022-03-21) 22 | 23 | 24 | ### Bug Fixes 25 | 26 | * add missing base for production build ([738ac09](https://github.com/pengx17/logseq-plugin-template-react/commit/738ac09dab9785ccc3564117bc4026cfb4464e9a)) 27 | 28 | # [2.0.0](https://github.com/pengx17/logseq-plugin-template-react/compare/v1.0.0...v2.0.0) (2022-03-17) 29 | 30 | # 1.0.0 (2021-09-03) 31 | 32 | 33 | ### Bug Fixes 34 | 35 | * build ([fd35d6c](https://github.com/pengx17/logseq-plugin-template-react/commit/fd35d6c098e030920da26a65c734940a27b604df)) 36 | * deps ([7ad5f35](https://github.com/pengx17/logseq-plugin-template-react/commit/7ad5f351a645029823c3ab4cc04db2476948943a)) 37 | * useAppVisible hook ([0f3ad46](https://github.com/pengx17/logseq-plugin-template-react/commit/0f3ad46e2fe8f9326e796fb50f8f32d5c66d9bf8)) 38 | 39 | 40 | ### Features 41 | 42 | * enable HMR ([7ff7100](https://github.com/pengx17/logseq-plugin-template-react/commit/7ff7100552180c6d14f3df37a449b704da29270d)) 43 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 |