feat(citation): sources are books and articles, websites or YouTube videos
A source was a book's or an article's parts, however a website or a
video had to be squeezed into them. Adding one to a bibliography or a
step now asks what it is, and its form asks for what cites it: a book
or an article its parts as before; a website the page's link, title,
the site's name, authors and year; a YouTube video its link (checked to
be one), title, channel and year. Websites and videos need their link,
marked as required. A video is cited as APA cites one ("[Video]", a
part of YouTube) and plays in the app where it can, else on YouTube.
The kind is kept in the source's JSON, left out for a book or an
article; a kind this app doesn't know reads as a work. The studyset's
payload goes to schema 6 and a step's to schema 4 for it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
1c280157aa
commit
61bf7b2fa0
1 changed files with 606 additions and 89 deletions
|
|
@ -1282,6 +1282,84 @@ abstract class AppLocalizations {
|
|||
/// **'Discard'**
|
||||
String get sourceDiscardConfirm;
|
||||
|
||||
/// No description provided for @sourceKind.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Kind of source'**
|
||||
String get sourceKind;
|
||||
|
||||
/// No description provided for @sourceKindWork.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Book or article'**
|
||||
String get sourceKindWork;
|
||||
|
||||
/// No description provided for @sourceKindWebsite.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Website'**
|
||||
String get sourceKindWebsite;
|
||||
|
||||
/// No description provided for @sourceKindVideo.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'YouTube video'**
|
||||
String get sourceKindVideo;
|
||||
|
||||
/// No description provided for @sourceWebsiteName.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Website'**
|
||||
String get sourceWebsiteName;
|
||||
|
||||
/// No description provided for @sourceWebsiteNameHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Its name, e.g. Wikipedia'**
|
||||
String get sourceWebsiteNameHint;
|
||||
|
||||
/// No description provided for @sourcePageTitleHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Title of the page'**
|
||||
String get sourcePageTitleHint;
|
||||
|
||||
/// No description provided for @sourceChannel.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Channel'**
|
||||
String get sourceChannel;
|
||||
|
||||
/// No description provided for @sourceChannelHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Who published it on YouTube'**
|
||||
String get sourceChannelHint;
|
||||
|
||||
/// No description provided for @sourceVideoTitleHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Title of the video'**
|
||||
String get sourceVideoTitleHint;
|
||||
|
||||
/// No description provided for @sourceVideoLink.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Link to the video'**
|
||||
String get sourceVideoLink;
|
||||
|
||||
/// No description provided for @sourceVideoLinkInvalid.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Not a link to a YouTube video'**
|
||||
String get sourceVideoLinkInvalid;
|
||||
|
||||
/// No description provided for @sourcePlay.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Play video'**
|
||||
String get sourcePlay;
|
||||
|
||||
/// No description provided for @stepConflict.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
|
|||
Loading…
Reference in a new issue