Skip to content

Latest commit

 

History

History
494 lines (478 loc) · 69.3 KB

CHANGELOG.md

File metadata and controls

494 lines (478 loc) · 69.3 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.2.0 (2023-09-09)

Bug Fixes

  • add error handling logic for legacy flashcards (dd74032), closes #1

0.1.0 (2023-09-09)

⚠ BREAKING CHANGES

  • deprecate old SRS code
  • Button: add value attribute
  • rewrite component to use mock data
  • rewrite to render basic chapter tree
  • replace route string with dynamic param
  • replace dummy data with dummy API call
  • merge routes for card creation

Features

  • add hasAnnotations to annotation interface (e106f30)
  • add action and remove unused component (770fe9c)
  • add action for card creation in router declaration (0117464)
  • add action for flashcard update (0e1bab6)
  • add annotation extractor that uses file metadata (1b8aad0)
  • add API for fetching annotations (e55e42d)
  • add argument for flashcard id (ecdde1f)
  • add better mock data (6ab34f2)
  • add book finder logic (f527f83)
  • add book model and dummy generator API (0b749c7)
  • add bookId param to createFlashcardForHighlight (9f53b78)
  • add bookSections implementation (5b3ce0f)
  • add buttons and dynamic deck listing for home (6fe8962)
  • add card learning stage counter (db08a1f)
  • add ChapterList component (4fcc177)
  • add class implementing flashcard interface (5e7f017)
  • add class to card form (ccd5284)
  • add classes for styling (d702181)
  • add clickHandler prop for buttons (065c9ae)
  • add clozeInsertionAt param for cloze cards (9dfbd2c)
  • add color buttons for filtering (f5e23e7)
  • add component for book creation route (b36735f)
  • add component for deck landing page route (b8896fd)
  • add component for generating a list of books (5d9a926)
  • add components for rendering cloze cards (5c0e5db)
  • add conditional rendering for note (507709e)
  • add context provider to modal (51d2ceb)
  • add correct cloze rendering (142de5a)
  • add correct HTML for rendering a chapter list with coverage (26b7ebd)
  • add correct implementation for getFlashcardById (46d22a3)
  • add correct return values for when annotation file found (a856699)
  • add correct routing logic (9a1b275)
  • add correct state changes for highlight color filter (8b7b41c)
  • add counts to each header (09023c6)
  • add createFlashcard API (4eb288c)
  • add deleteFlashcardById to handle simple delete (2a03933)
  • add different modal for editing clozes (161e62f)
  • add div with ref for back button (d2e67be)
  • add divs and classes for easier styling (e6b5b55)
  • add dummy action for card creation submission (04a5474)
  • add dummy list of highlights (d092054)
  • add dummy logic to redirect when done reviewing (d589ee3)
  • add dummy method for getting annotations (09a0ffb)
  • add dummy values for file query API (24ce162)
  • add empty link for editing flashcards from preview page (cbc6d70)
  • add empty method to fetch flashcards (2c56563)
  • add error page for router (f28da17)
  • add errors for wrong inputs (80bb75a)
  • add external API to update flashcard (086be5a)
  • add feature flag and API call from controller (4157330)
  • add feature flag and API call from controller (139a2fb)
  • add feature flag logic for deckLoader (63e836b)
  • add feature flag to annotation outlet (9ca280f)
  • add feature flag to load data from notes (9ac5730)
  • add feature flag to use actual backend (0242445)
  • add findPreviousHeader implementation (2002563)
  • add Flashcard.isDue() for usability (c36ccdb)
  • add FlashcardContext (7331fda)
  • add FrontendFlashcard members for scheduling data (f01a69e)
  • add function stub for updating cards (fc687e0)
  • add generateTree implementation (1f5b021)
  • add getBooks implementation (32668b2)
  • add getFileCache wrapper (ab91462)
  • add getNextCard() (20f214e)
  • add getSectionTreeForBook (e03335f)
  • add global state (2be0478)
  • add hardcoded icons list in constants.ts (de73645)
  • add helper functions to calculate annotation counts (0b1774b)
  • add implementation for getAnnotationById (54611e9)
  • add implementation for getFlashcardsForAnnotation (add8392)
  • add index initialization (38b290c)
  • add initial function for fetching flashcard (a8a69d9)
  • add initialization for books and book paths (c8bd827)
  • add insertion point when creating card front (eee2762)
  • add instance methods for reviewing (9848045)
  • add instance variables for review (4e2c16f)
  • add instanceof check (64eae47)
  • add interface for annotationsLoader (2270033)
  • add interface for flashcard (0baba83)
  • add interface to handle mock data (021654f)
  • add landing page for clicking on deck (9a86c93)
  • add level check to find the next header at same level (2d80777)
  • add loader logic (d904678)
  • add loader that uses a feature flag (bce2570)
  • add loader when choosing card type (d08485d)
  • add logic to extract annotation tfile from flashcard note (7cff458)
  • add logic to generate button text (942c1e4)
  • add logic to handle creating vs editing flashcards (9c0cc86)
  • add logic to handle singular durations like 1 month, etc. (3d0e6b7)
  • add method and interface for deckNote generation (c7071f4)
  • add method for back button navigation (977addc)
  • add method to count annotation flashcard coverage (8d025e4)
  • add method to enrich metadata array with flashcard presence (2e102d1)
  • add method to fetch current card for use in loader (8d34536)
  • add method to generate only section tree (e84feba)
  • add method to handle enum conversion (6137358)
  • add method to update flashcard index (5d31814)
  • add method to update header counts without needing a tree (5d01a20)
  • add method to update parsedCards index (1465462)
  • add methods for building internal state like flashcard arrays (85676ac)
  • add methods for generating a ParsedCard from Flashcard (1e4bde4)
  • add methods for reading and writing to disk (429a0dc)
  • add methods from original review logic (0c6e9b3)
  • add module patch for missing attrib in HeadingCache (f930829)
  • add moon reader annotation parser (0e3ceac)
  • add new API to fetch books which don't have flashcards (ee55456)
  • add new APIs for creating a new flashcard notes and for fetching file and folder paths (b152dee)
  • add new class implementing frontbook (14a7be8)
  • add new class that extends Obsidian headings with an ID (676a48a)
  • add new command to create an empty flashcards file (ac9ab8d)
  • add new DeckCounts component (d4a2c2b)
  • add new enum element and replace return values (86dd1f6)
  • add new Flashcard interface for frontend (0a53e4f)
  • add new interface for deck landing page (4d4a39f)
  • add new interfaces for mock data (3e28a6f)
  • add new ReviewDeck component (36e98eb)
  • add new route (2c87e3a)
  • add new route for adding review decks (33ccae5)
  • add new route for reviewing a flashcard (0fe196c)
  • add new separator arg to generateCardTextWithSchedInfo() (0f96073)
  • add new setting to store book paths (07846ca)
  • add parseFlashcard stub (b68c0f6)
  • add plugincontext (6e57645)
  • add preview page for creation flow if highlights already exist (d9dff9f)
  • add processReview logic (e6e6c2a)
  • add processReview stub (cc2df17)
  • add redirect when clicking submit button (63baa07)
  • add regex based flashcard parser (a926767)
  • add reviewability check (a3ab3c9)
  • add root route (3f4720a)
  • add route and component for cloze cards (67ea62c)
  • add route for adding decks (c112b14)
  • add route paths to modal (eb6aca0)
  • add route to highlight list (482809f)
  • add router config for deck landing page (bcede97)
  • add routes for listing highlights, choosing card type and creating card (d06ed92)
  • add separate method for parsedCard from fileText (a9a8685)
  • add several methods for reading and writing files and metadata (9ef9e49)
  • add simple context user for button labels (6ab4122)
  • add span wrapper for annotation text (4c7a81d)
  • add state reset when changing card paths (4743d9e)
  • add state update to go back to initial page (f9bcf70)
  • add state updates for card type picker (b240ac4)
  • add stub to get list of books (b74b78f)
  • add styles for home page (8925cf7)
  • add text generation functions for cards and metadata (efa1540)
  • add type check for HeadingCache items (783fea5)
  • add types for loader params (22cf448)
  • add updateFlashcardById implementation (3eba6ad)
  • add wrapper function to create a book object (7957be5)
  • add wrapper to convert enum to value (e61306d)
  • better button text on mobile (f1b4f3a)
  • bookSections: enrich annotation with hasFlashcard boolean (374359a)
  • Button: add value attribute (d443caa)
  • buttons now have click handlers (34edca2)
  • call generateHeaderCounts in initialize() (4b41bd3)
  • change dummy data for frontend logic to be cleaner (3e46c20)
  • change homepage for faster testing (1050dfb)
  • change mobile modal width (c7614ea)
  • change parseAnnotations to return all parsed items (92f3224)
  • ChapterList: add CSS classes and missing HTML for deck counts and header (77e90f4)
  • ChapterList: add page to add card (3b35223)
  • ChapterList: update href for chapter links (c75b0ce)
  • ClozeCardForm now picks up default value for text field (7f215cd)
  • ClozeCard: use loader (53e9a48)
  • controller: new API to get book by ID (afbf3ff)
  • create flashcards from parsedCards (94c97f7)
  • create Heading object when generating book sections (bd9323e)
  • CreateCard: use params and right route name (f12bc8e)
  • creating flashcard from API now generates a ParsedCard (e32abe1)
  • deck-preview: new interfaces for return type from controller (f4e5512)
  • deleteFlashcardById: handle corner cases (b1fa741)
  • deprecate old SRS code (feddb68)
  • enable strict null checks (790aa4a)
  • export DeckCounts (ac995f9)
  • export feature flag (fd44cf2)
  • extend ParsedCard interface with tfile (c337e00)
  • extract count totals from book in component (dee617f)
  • extract existing cloze text if in existing flashcard (f5cb036)
  • extract scheduling params from current card instead of hardcoding (7d06a10)
  • filter highlights based on color using color state (10bc249)
  • findNextHeader: add implementation (446ebdc)
  • findNextHeader: add implementation (cdcbf72)
  • frontbook interface has new list of annotations (7cc44ed)
  • frontbook: add new bookSections member and deprecate annotations (056e4a1)
  • getFlashcardById returns a flashcard (c781c2f)
  • getFlashcardById: returns the card or null from flashcard array (656112c)
  • HighlightsList: move data fetching to chapterLoaderData (e4c8bdf)
  • implement basic getAnnotations (78a09f3)
  • merge routes for card creation (0b332c3)
  • move hardcoded data to loader (c8ea2a6)
  • move new card link to button and add conditional (de671ef)
  • parser: move card metadata into its own field (2f742b6)
  • pass flashcardResponseHandler down to button (8cec636)
  • re-add edit later modal (c4416e9)
  • re-add route for new card (900b604)
  • redefine annotation interface for frontend (0fc46a7)
  • redefine counts in book interface to use flashcards and sections (5e961a5)
  • render icon to back button ref (df7821e)
  • replace dummy data with dummy API call (4ef1a92)
  • replace flashcards preview with simpler count (9052716)
  • replace hardcoded loader with param based query (4c8e6a3)
  • replace route string with dynamic param (80e0af0)
  • resolveInput() now doesn't reject close events (1f0724f)
  • rewrite annotation extraction logic using loop (31d1fa3)
  • rewrite component to use mock data (e26c63d)
  • rewrite edit-modal to resolve to an updated Card (9a5c673)
  • rewrite loader to use mock server data (7ee0a91)
  • rewrite styles (9846708)
  • rewrite to render basic chapter tree (42908a7)
  • router: add new route for deck card creation (a8b0d6f)
  • set feature flag to true (62498c8)
  • show answer text when previewing existing flashcards (50ceb3f)
  • split interfaces for comprehension (e36b784)
  • throw an error if no text extracted from card (370a92d)
  • throw error if book not found (35f06df)
  • throw error if flashcard not found (83457f4)
  • throw error if no annotations extracted (7225557)
  • throw error if no regex matches found (8571da9)
  • throw errors (b189bff)
  • updateCardOnDisk: add implementation (bdf3264)
  • updateFlashcardAnswer: add method (71f8a5c)
  • updateFlashcardQuestion: add method to update question text (6e8ac0f)
  • use cleaner updated card handling to write back to file (f67dee3)
  • use controller API to write flashcard (9f3def7)
  • use counts as new param for annotation test coverage (d86dd0b)
  • use counts in component (1a2dd91)
  • use DeckCounts in Notes component (c569911)
  • use FlashcardContext (cbe6cb2)
  • use mock server json in loader (fa1be2b)
  • use notesLoader in router definition (96ea38c)
  • use replace for a few Links (f8b55e5)
  • widen type for FlashcardContext (255053d)
  • wrap card creation buttons in a div (626a832)

Bug Fixes

  • actually extract question and answer text (70a4ffe)
  • add another newline cause you're stupid (cdde996)
  • add book argument for updating flashcards (ab66d2f)
  • add correct action for inserting cards (ed15cf2)
  • add error handling logic for legacy flashcards (e7765c6)
  • add explicit null check and throw error (875756e)
  • add flag argument with default value (b03e8e9)
  • add interface for annotationLoader params (04a10a8)
  • add interface for cardLoader params (d3ff9cb)
  • add interface for chapterLoader params (ff825e4)
  • add interface for deckLoader params (b565f70)
  • add key instead of id for React lists (e021148)
  • add key to fix warning (0d25ba0)
  • add missing import (8246a16)
  • add missing import for icon (e12fd97)
  • add missing import for type (65829ec)
  • add missing loader import (03a0260)
  • add missing plugin import (f80960d)
  • add missing regex char (91abd45)
  • add missing type (819b661)
  • add missing useLocation hook (c7d9ba8)
  • add optional chaining (189733f)
  • add the newline in the correct place (0caa776)
  • add ts-ignore with todo note (1eb7ee2)
  • add types (8286a20)
  • add typing (e04bf23)
  • add typing and error handling (bff86bb)
  • adjust prop interfaces (1cffccc)
  • annotation ID assignment (9544efa)
  • annotation id regex (9ee0801)
  • annotation ID regex (c4b73e5)
  • annotation id regex to use 5 digit moon reader ids (6fd51fa)
  • ANNOTATION_REGEX (2e0113b)
  • ANNOTATION_REGEX and note text cleanup (8bc4713)
  • AnnotationCount and countAnnotation attrib usage (bb9269a)
  • annotationsWithFlashcards needs to be a reverse lookup (7f382ed)
  • API argument for updating flashcard (ce3fc30)
  • attempt fixing manifest for brat (c80ec84)
  • back button navigation logic (1772769)
  • book names (ee4f956)
  • bookSections call inside Book.initialize() (5c3c4a9)
  • broken button text to use new button text generation functions (838d77f)
  • broken count usage (cbde570)
  • broken getNextCard() implementation from earlier refactor (658cd8d)
  • broken import (f9c7372)
  • broken interface import (08fe5f0)
  • broken redirect for review action (87c7fed)
  • broken redirect for when review finished (e5080dc)
  • broken regex for scheduling info (c4abaae)
  • broken split character for parsing card text (0752058)
  • broken tag search when tags are in frontmatter (4a71612)
  • broken types from Flashcard interface rename (ed7dd23)
  • Cancel button TSX (f049466)
  • card write format (8e3f65a)
  • cast the reviewResponse as it's becoming a string somehow (bc4477d)
  • change annotation attribute to method call (2ebccb7)
  • change css classes for deck tree items (76975b1)
  • change initialization to use constructor (1fbfe9b)
  • change title attrib to name (95a0bd4)
  • ChapterList: remove unused prop childKey and add explicit types to props (1dd85bd)
  • clickHandler arg type (e1e504e)
  • CollapseIcon: clickHandler arg type (2824ee9)
  • CollapsibleTreeEntry: arrow function prop arg type (233cd7d)
  • comment out broken card counts for now (83a5f4a)
  • comment out broken card counts for now (c66a9a3)
  • comment out missing broken route (cf63305)
  • component name (977bb2f)
  • conditional logic for existing flashcard list (62f1fbd)
  • correct loader for AnnotationWithOutlet (9a6c72f)
  • correct paths broken by earlier rename (6d62dd8)
  • correctly add redirect (0dd6e5a)
  • correctly initialize edit modal's answerText (16d7c93)
  • count type (6379deb)
  • count type (86a97d3)
  • create review deck on initialization (4f44c74)
  • createFlashcardForAnnotation throws error when book not found (e31d91f)
  • deck counts for title positioning (5a6de4d)
  • DeckBuilder: use correct settings arg when calling parse() (d9d19ca)
  • do not overwrite counts when generating tree (e336923)
  • don't mutate object when generating tree (2f544c0)
  • don't replace history stack when reviewing (edccf5f)
  • dynamically query highlight page data using params (a9234e2)
  • eslint error (6fafc50)
  • eslint error (bb29c69)
  • eslint error (da78bf0)
  • eslint error for moment usage (4ed7847)
  • eslint errors (176ad5e)
  • eslint errors (aac0abf)
  • eslint errors (004d7a9)
  • eslint errors (9a7d836)
  • eslint errors and remove unused import (a92a9db)
  • eslint errors for unused any and variable (25d7b3b)
  • explicit return type for CardBack component (9854216)
  • extend obsidian API definition to include internal APIs (df05fe3)
  • findNextHeader correctly returns -1 for header not found (b11b5d8)
  • findPreviousHeader and add comments (2a09598)
  • fix card editing writeback (9be25e6)
  • flag string substitution (4d15347)
  • flipped argument order for findNextHeader (206c95d)
  • generate link correctly (74e9bf5)
  • getParentFolderName returns parent folder name (24da257)
  • handle code fences better (#402) (7390905)
  • highlight text containing '> ' (7d7a100)
  • import (3f98e5f)
  • imports (2a791f4)
  • imports (fcf8727)
  • imports (c4c204d)
  • imports (e21cc98)
  • imports and add comments (f94f887)
  • imports and random try line (6ec442e)
  • imports for the tests (64517f4)
  • incorrect this reference (31c72f4)
  • incorrect conditional for mobile buttons (09517b2)
  • incorrect metadata string generation (3458cdf)
  • incorrect rest param usage (6f80a33)
  • incorrect type (9d0a85d)
  • initial values (ee59b9a)
  • initialize counts (eba12cc)
  • initialize plugin state (e6b53b4)
  • interface member types (b3abe74)
  • list key (cd92d4c)
  • loader function for flashcard routes (e307b80)
  • loader gets current card instead of always fetching next card (2b95162)
  • loader redirect and safe navigation (3c3a77c)
  • make deck div clickable instead of generating anchor (6aefb81)
  • make member in loader optional (2531136)
  • make NoteAndHighlight dynamic and update dummy data (af1321d)
  • make notePath in ParsedCard a required member (b729e3b)
  • make response required arg (836f180)
  • make scheduling data optional (90f7249)
  • missing attribute reference operator (84ed177)
  • missing back button navigation logic (088a1f4)
  • missing route? (bec6394)
  • missing safe navigation for next card id (9d27b46)
  • missing type check which was inlined in prior commit (396049b)
  • move logic to correct component to work with new UI (cb10aa7)
  • moveToNextFlashcard() now called only when card modified (b5e2cc1)
  • narrow type (2846460)
  • non existent attribute reference (f4d3fca)
  • object references (6e5e083)
  • outdated types (6fd333b)
  • overlapping context header and question text (ebd4485)
  • parsedCardCopy filter (8753dbd)
  • parseMetadata: set flag correctly (855e939)
  • point review path at the right component (75a7606)
  • PreviewExistingFlashcards: key attribute for lists (3d52400)
  • push all items from parseAnnotations (98bac40)
  • QuestionEdit component input (7623d8b)
  • redirect path (2bad2d8)
  • redirect path (d74e5bc)
  • remove any usage and add type checks (8b63dac)
  • remove extra curly to fix build (fcd2126)
  • remove flashcard count hardcoding (43af30c)
  • remove setting usage and use hardcoding (6dc9811)
  • remove unused any (e63ec1a)
  • remove unused imports and make filePaths public (eeeb875)
  • remove weird rounding logic (96853ce)
  • rename attrib for sections to children (f5ec38f)
  • renamed route (eb58a93)
  • replace hardcoded counts with calculated test counts (5aaeeeb)
  • replace history stack when navigating to CardForm (cad0137)
  • replace route string (d198e4f)
  • reset review deck when done reviewing (ab57413)
  • return type (fd92baf)
  • return value for section tree (2cbdb39)
  • returned value for getFlashcardById to match return type (19be16c)
  • revert esbuild config (167a51a)
  • rewrite form structure to follow HTML conventions (011c111)
  • route link (750a1ac)
  • route path (fae9194)
  • route path for chapter links (273f02e)
  • route path for existing flashcards (ed105f0)
  • set presence check (fc68663)
  • several eslint errors (9cf5abf)
  • several eslint errors (089377f)
  • several eslint errors (d02a9c0)
  • state update to use a function (44100e6)
  • submit button correctly writes to file (02e35de)
  • tag search function (2bff164)
  • tests and add mocks (d1e5db1)
  • throw error if metadata not found (b7e2c0e)
  • throw error if regex matches not found (f366974)
  • throw error if TFile not found (1e4baa8)
  • throw error instead of just creating one (424f763)
  • throw errors for book not found (70cd41c)
  • throw not implemented error for unsupported card type (df1af24)
  • Tree component to narrow types, remove unused props (f0b54f9)
  • Tree: fix types for render prop (4f5f2cb)
  • TSX for button rendering (caa58ea)
  • type (f822a2a)
  • type (a8dca3d)
  • type check (b0f5b8e)
  • type for book interface (1247ef7)
  • type property check (64c5800)
  • type returned by getFlashcardById (28f2cab)
  • type usage (b03551e)
  • types (37e0f6f)
  • types for button click handlers (4a8ef3e)
  • typing and null/undefined issues (1ce1152)
  • typings inside action (05f0216)
  • update href for card creation button (da18fb2)
  • update imports (e56dba2)
  • update imports (27285f4)
  • update imports (79e9fbb)
  • update imports (3569ed4)
  • update imports (1ea5d26)
  • update imports (bb73c1a)
  • update imports (d450260)
  • update imports and fix earlier loader rename refactor (46acfec)
  • update interface to use Record type (6b11b45)
  • update links to match new routes in flashcard-modal (9376ead)
  • update loaded data to use new interfaces (7f4ed42)
  • update loader attrib in route definitions (86311a1)
  • update pages to use loaders instead of hardcoded data (af89ed4)
  • use absolute values for delay calculation (240428b)
  • use book instead of plugin and remove hardcoded path (5b433f0)
  • use correct label text (9164b8a)
  • use correct object structure for counts (c4a929a)
  • use correct path value (412de12)
  • use correct type for book.children (7317e49)
  • use Form button instead of Link button (52a776a)
  • use global state instead of this (64c21c8)
  • use global state instead of this (6002ce0)
  • use loaded data to calculate header counts (066c7dc)
  • use nanoid type id instead of number (bd91ba0)
  • use parent folder name when creating Book objects (0021767)

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.