Commit Graph

2727 Commits

Author SHA1 Message Date
Jacky Zhao
1bf7e3d8b3 fix(nit): make defaultOptions on explorer not a function 2023-09-19 10:22:39 -07:00
Jacky Zhao
aa4f788123 fix(nit): make defaultOptions on explorer not a function 2023-09-19 10:22:39 -07:00
c3eda5082d Merge remote-tracking branch 'origin/v4' into v4 2023-09-20 01:34:22 +09:00
697a167e08 Merge remote-tracking branch 'origin/v4' into v4 2023-09-20 01:34:22 +09:00
0a955d60d0 [obsidian] vault backup: 2023-09-20 01:33:51[ 2023-09-20 01:33:51 +09:00
ef41f40bdd [obsidian] vault backup: 2023-09-20 01:33:51[ 2023-09-20 01:33:51 +09:00
David Fischer
cc31a40b0c
feat: support changes in system theme (#484)
* feat: support changes in system theme

* fix: run prettier

* fix: add content/.gitkeep
2023-09-19 09:25:51 -07:00
David Fischer
ee0c958b72 feat: support changes in system theme (#484)
* feat: support changes in system theme

* fix: run prettier

* fix: add content/.gitkeep
2023-09-19 09:25:51 -07:00
Ben Schlegel
0d3cf29226
docs: fix explorer example (#483) 2023-09-18 14:32:00 -07:00
Ben Schlegel
1a572d77ef docs: fix explorer example (#483) 2023-09-18 14:32:00 -07:00
Ben Schlegel
6a2e0b3ad3
fix: bad visibility for last explorer item (#478)
* fix: bad visibility for last explorer item

* feat(explorer): add pseudo element for observer
2023-09-17 22:04:44 +02:00
Ben Schlegel
f030418822 fix: bad visibility for last explorer item (#478)
* fix: bad visibility for last explorer item

* feat(explorer): add pseudo element for observer
2023-09-17 22:04:44 +02:00
Ben Schlegel
e67f409ec1
Merge pull request #479 from benschlegel/explorer-config
feat(explorer): add config for custom sort/map/filter functions
2023-09-17 21:36:04 +02:00
Ben Schlegel
a9cdd5ff27 Merge pull request #479 from benschlegel/explorer-config
feat(explorer): add config for custom sort/map/filter functions
2023-09-17 21:36:04 +02:00
Ben Schlegel
4afb099bf3
docs: fix examples 2023-09-17 21:32:23 +02:00
Ben Schlegel
a1f2551c16 docs: fix examples 2023-09-17 21:32:23 +02:00
Ben Schlegel
6914d4b40c
docs: fix intra page links 2023-09-17 21:20:09 +02:00
Ben Schlegel
b672a4c827 docs: fix intra page links 2023-09-17 21:20:09 +02:00
Christian Gill
af41f34bfd
fix(slug): Handle question mark (#481) 2023-09-17 11:02:00 -07:00
Christian Gill
e173414d12 fix(slug): Handle question mark (#481) 2023-09-17 11:02:00 -07:00
Ben Schlegel
7ac772fca8
fix: darkmode scroll bars (#480) 2023-09-17 10:29:20 -07:00
Ben Schlegel
d889775951 fix: darkmode scroll bars (#480) 2023-09-17 10:29:20 -07:00
Ben Schlegel
5cc9253c41
docs(explorer): write docs for new features 2023-09-17 16:41:23 +02:00
Ben Schlegel
27f99713d8 docs(explorer): write docs for new features 2023-09-17 16:41:23 +02:00
Ben Schlegel
94a04ab1c9
fix(explorer): filter function in ExplorerNode 2023-09-17 15:51:08 +02:00
Ben Schlegel
c2ac5dcfd0 fix(explorer): filter function in ExplorerNode 2023-09-17 15:51:08 +02:00
Ben Schlegel
9358f73f1c
fix: display name for file nodes 2023-09-17 12:41:06 +02:00
Ben Schlegel
b8fbb64cad fix: display name for file nodes 2023-09-17 12:41:06 +02:00
Ben Schlegel
f7029012df
feat: black magic
add config for `order` array, which determines the order in which all passed config functions for explorer will get executed in.

functions will now dynamically be called on `fileTree` via array accessor (e.g. fileTree["sort"].call(...)) with corresponding function from options being passed to call)
2023-09-16 21:58:38 +02:00
Ben Schlegel
e3306cc475 feat: black magic
add config for `order` array, which determines the order in which all passed config functions for explorer will get executed in.

functions will now dynamically be called on `fileTree` via array accessor (e.g. fileTree["sort"].call(...)) with corresponding function from options being passed to call)
2023-09-16 21:58:38 +02:00
Ben Schlegel
fea352849c
fix: create deep copy of file passed into tree 2023-09-16 19:45:21 +02:00
Ben Schlegel
e112fdad2b fix: create deep copy of file passed into tree 2023-09-16 19:45:21 +02:00
Ben Schlegel
3d8c470c0d
feat(explorer): implement map fn argument
Add a function for mapping over all FileNodes as an option for `Explorer`
2023-09-16 19:35:27 +02:00
Ben Schlegel
0ed17307cf feat(explorer): implement map fn argument
Add a function for mapping over all FileNodes as an option for `Explorer`
2023-09-16 19:35:27 +02:00
Ben Schlegel
31d16fbd2c
feat(explorer): integrate filter option 2023-09-16 19:18:59 +02:00
Ben Schlegel
4ba45f9577 feat(explorer): integrate filter option 2023-09-16 19:18:59 +02:00
Ben Schlegel
036a33f70b
fix: use correct import for QuartzPluginData 2023-09-16 17:47:44 +02:00
Ben Schlegel
9ad51c46d0 fix: use correct import for QuartzPluginData 2023-09-16 17:47:44 +02:00
Ben Schlegel
58aea1cb07
feat: implement filter function for explorer 2023-09-16 17:28:58 +02:00
Ben Schlegel
3ea0d50293 feat: implement filter function for explorer 2023-09-16 17:28:58 +02:00
Ben Schlegel
c7d3474ba8
feat(explorer): add config to support custom sort fn 2023-09-16 12:40:19 +02:00
Ben Schlegel
5d9d681152 feat(explorer): add config to support custom sort fn 2023-09-16 12:40:19 +02:00
Yuto Nagata
422ba5c365
fix: umami analytics date attribute (#477) 2023-09-15 19:17:20 -07:00
Yuto Nagata
a0a98bcf4f fix: umami analytics date attribute (#477) 2023-09-15 19:17:20 -07:00
Jacky Zhao
9ae6343dd0 Revert "fix: use git dates by default, @napi/git is fast enough"
This reverts commit 5dcb7e83fc.
2023-09-15 10:33:38 -07:00
Jacky Zhao
bf89e38a40 Revert "fix: use git dates by default, @napi/git is fast enough"
This reverts commit 5dcb7e83fc.
2023-09-15 10:33:38 -07:00
Jacky Zhao
5dcb7e83fc fix: use git dates by default, @napi/git is fast enough 2023-09-15 09:46:06 -07:00
Jacky Zhao
9bfdc24161 fix: use git dates by default, @napi/git is fast enough 2023-09-15 09:46:06 -07:00
Ben Schlegel
91f9ae2d71
feat: implement file explorer component (closes #201) (#452)
* feat: add basic explorer structure„

* feat: integrate new component/plugin

* feat: add basic explorer structure

* feat: add sort to FileNodes

* style: improve style for explorer

* refactor: remove unused explorer plugin

* refactor: clean explorer structure, fix base (toc)

* refactor: clean css, respect displayClass

* style: add styling to chevron

* refactor: clean up debug statements

* refactor: remove unused import

* fix: clicking folder icon sometimes turns invisible

* refactor: clean css

* feat(explorer): add config for title

* feat: add config for folder click behavior

* fix: `no-pointer` not being set for all elements

new approach, have one `no-pointer` class, that removes pointer events and one `clickable` class on the svg and button (everything that can normally be clicked). then, find all children with `clickable` and toggle `no-pointer`

* fix: bug where nested folders got incorrect height

this fixes the bug where nested folders weren't calculating their total height correctly. done by adding class to main container of all children and calculating total

* feat: introduce `folderDefaultState` config

* feat: store depth for explorer nodes

* feat: implement option for collapsed state + bug fixes

folderBehavior: "link" still has bad styling, but major bugs with pointers fixed (not clean yet, but working)

* fix: default folder icon rotation

* fix: hitbox problem with folder links, fix style

* fix: redirect url for nested folders

* fix: inconsistent behavior with 'collapseFolders' opt

* chore: add comments to `ExplorerNode`

* feat: save explorer state to local storage (not clean)

* feat: rework `getFolders()`, fix localstorage read + write

* feat: set folder state from localStorage

needs serious refactoring but functional (except folder icon orientation)

* fix: folder icon orientation after local storage

* feat: add config for `useSavedState`

* refactor: clean `explorer.inline.ts`

remove unused functions, comments, unused code, add types to EventHandler

* refactor: clean explorer

merge `isSvg` paths, remove console logs

* refactor: add documentation, remove unused funcs

* feat: rework folder collapse logic

use grids instead of jank scuffed solution with calculating total heights

* refactor: remove depth arg from insert

* feat: restore collapse functionality to clicks

allow folder icon + folder label to collapse folders again

* refactor: remove `pointer-event` jank

* feat: improve svg viewbox + remove unused props

* feat: use css selector to toggle icon

rework folder icon to work purely with css instead of JS manipulation

* refactor: remove unused cfg

* feat: move TOC to right sidebar

* refactor: clean css

* style: fix overflow + overflow margin

* fix: use `resolveRelative` to resolve file paths

* fix: `defaultFolderState` config option

* refactor: rename import, rename `folderLi` + ul

* fix: use `QuartzPluginData` type

* docs: add explorer documentation
2023-09-15 09:39:16 -07:00
Ben Schlegel
515ac8d9a1 feat: implement file explorer component (closes #201) (#452)
* feat: add basic explorer structure„

* feat: integrate new component/plugin

* feat: add basic explorer structure

* feat: add sort to FileNodes

* style: improve style for explorer

* refactor: remove unused explorer plugin

* refactor: clean explorer structure, fix base (toc)

* refactor: clean css, respect displayClass

* style: add styling to chevron

* refactor: clean up debug statements

* refactor: remove unused import

* fix: clicking folder icon sometimes turns invisible

* refactor: clean css

* feat(explorer): add config for title

* feat: add config for folder click behavior

* fix: `no-pointer` not being set for all elements

new approach, have one `no-pointer` class, that removes pointer events and one `clickable` class on the svg and button (everything that can normally be clicked). then, find all children with `clickable` and toggle `no-pointer`

* fix: bug where nested folders got incorrect height

this fixes the bug where nested folders weren't calculating their total height correctly. done by adding class to main container of all children and calculating total

* feat: introduce `folderDefaultState` config

* feat: store depth for explorer nodes

* feat: implement option for collapsed state + bug fixes

folderBehavior: "link" still has bad styling, but major bugs with pointers fixed (not clean yet, but working)

* fix: default folder icon rotation

* fix: hitbox problem with folder links, fix style

* fix: redirect url for nested folders

* fix: inconsistent behavior with 'collapseFolders' opt

* chore: add comments to `ExplorerNode`

* feat: save explorer state to local storage (not clean)

* feat: rework `getFolders()`, fix localstorage read + write

* feat: set folder state from localStorage

needs serious refactoring but functional (except folder icon orientation)

* fix: folder icon orientation after local storage

* feat: add config for `useSavedState`

* refactor: clean `explorer.inline.ts`

remove unused functions, comments, unused code, add types to EventHandler

* refactor: clean explorer

merge `isSvg` paths, remove console logs

* refactor: add documentation, remove unused funcs

* feat: rework folder collapse logic

use grids instead of jank scuffed solution with calculating total heights

* refactor: remove depth arg from insert

* feat: restore collapse functionality to clicks

allow folder icon + folder label to collapse folders again

* refactor: remove `pointer-event` jank

* feat: improve svg viewbox + remove unused props

* feat: use css selector to toggle icon

rework folder icon to work purely with css instead of JS manipulation

* refactor: remove unused cfg

* feat: move TOC to right sidebar

* refactor: clean css

* style: fix overflow + overflow margin

* fix: use `resolveRelative` to resolve file paths

* fix: `defaultFolderState` config option

* refactor: rename import, rename `folderLi` + ul

* fix: use `QuartzPluginData` type

* docs: add explorer documentation
2023-09-15 09:39:16 -07:00