« get me outta code hell

hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/data/things
AgeCommit message (Collapse)Author
2023-09-05data: signature changes to misc compositional functions(quasar) nebula
2023-09-05data: filter only requested deps, require requesting 'this'(quasar) nebula
* Thing.composite.from() only provides the dependencies specified in each step and the base, and prevents '#'-prefixed keys from being specified on the main (composite) dependency list. * CacheableObject no longer provides a "reflection" dependency to every compute/transform function, and now requires the property 'this' to be specified instead of the constructor.instance symbol. (The static CacheableObject.instance, inherited by all subclasses, was also removed.) * Also minor improvements to sugar.js data processing utility functions.
2023-09-05content, data: be even more guarded about contrib arrays(quasar) nebula
2023-09-05data: 2x facepalm combobob(quasar) nebula
2023-09-05data: track: more composite shenanigans(quasar) nebula
2023-09-05data: fix compute() bugs in Thing.composite.from()(quasar) nebula
2023-09-05content, data: be more guarded about track contribs arrays(quasar) nebula
2023-09-05data: track: experimental Thing.compose.from() processing style(quasar) nebula
2023-09-05data, test: track: inherit album props more declaratively(quasar) nebula
2023-08-21data: valdiateArrayItems: use same index formatting as other errors(quasar) nebula
Specifically, the same as decorateErrorWithIndex.
2023-08-20content: listArtistsByName: divide by main groups(quasar) nebula
2023-08-19clean up imports & miscellaneous metastructures across codebase(quasar) nebula
2023-08-15data, yaml: inherit music-related properties from original release(quasar) nebula
When a track has 'Originally Released As', these fields are now automatically inherited: * Artists * Contributors * Referenced Tracks * Sampled Tracks Including any of these fields alongside 'Originally Released As' is an error. Corresponding properties are valid, but ignored. This uses a new "compositional" style to define how each of these properties inherits while retaining the original behavior for tracks that aren't re-releases, and avoids hard-coding much of anything!
2023-08-15data: track: indicate rereleases in util.inspect(quasar) nebula
2023-08-14data: remove 'Has Track Art', compute from credits(quasar) nebula
2023-08-06data: art tags: short names(quasar) nebula
2023-07-15data: split arrayOf validator into {strict,sparse}ArrayOf(quasar) nebula
2023-07-02content: listArtistsByContributions(quasar) nebula
2023-06-30content: generateArtistGroupContributionsInfo: table layout 👻(quasar) nebula
2023-06-23use {...null} style destructuring where appropriate(quasar) nebula
Yay JavaScript! for {...null} working but not (...null). (tc39/ecma262#687)
2023-06-04Merge remote-tracking branch 'origin/staging' into data-steps(quasar) nebula
2023-06-02data: artist: don't depend on hasCoverArt expose-only prop(quasar) nebula
2023-05-25content: multiline content & fill out album/track pages more(quasar) nebula
2023-04-27data: track: null coverArtistContribs if hasTrackArt false(quasar) nebula
Fixes #178. This commit also cleans up the documentation for the utility used here, dynamicInheritContribs. These are the only two uses of that utility at all but like, code comments very rarely hurt and d'accord are probably even more useful here lol
2023-04-12content: stub track page, misc. other changes(quasar) nebula
* generateContributionLinks replaced with linkContribution, tests still need updating * album pages respect albums without cover art * track pages without unique art inherit art tags from album (fixes #13) not heavily tested, this commit probably breaks some pages which were loading correctly before
2023-04-08html: drastically simplify template/slot system(quasar) nebula
2023-03-29data steps: stringify args to list intl functions(quasar) nebula
2023-03-27data steps: implement leftover data unit test TODOs(quasar) nebula
2023-03-02per-track color support(quasar) nebula
2023-02-26Merge branch 'preview' into sheet-music-midis(quasar) nebula
2023-02-26new 'Sheet Music Files' & 'MIDI Project Files' fields(quasar) nebula
2023-02-05data format cleanup: commentary fields(quasar) nebula
The parseCommentary function was actually going unused. This commit moves its behavior to the more appropriate location (validateCommentary), which actually unveils a couple data errors in the HSMusic data files.
2023-02-04data format cleanup: albums(quasar) nebula
* Remove `Is Major Release` (`isMajorRelease`) * Remove major-release code in wiki-data.js * Tidy `propertyFieldMapping` order Major releases were useful when albums were being added to the wiki on the regular, but are unused on HSMusic now, and alternative approaches get more particular results (currently hard-coded grid layout for larger icons, and manually selected albums in homepage rows).
2023-01-31data format cleanup: tracks(quasar) nebula
* Remove `Has URLs` (`hasURLs`), unused * Tidy `propertyFieldMapping` order
2023-01-15Merge pull request #117 from hsmusic/track-sections(quasar) nebula
Change trackGroups to trackSections, avoid usage of a dedicated "domain-specific" Thing subclass
2023-01-05remove needless "previously known as" thing comments(quasar) nebula
2023-01-04trackGroups -> trackSections(quasar) nebula
2023-01-01specify homepage navbar links & order in data(quasar) nebula
...rather than just making a guess off the order files are listed by directory access, and using out-of-place 'Show in Navigation Bar'
2022-12-28'Listed in Albums' gallery flag(quasar) nebula
2022-12-28properly support 4-18 item carousels(quasar) nebula
2022-12-28montage -> carousel(quasar) nebula
2022-12-22many homepage carousel shenanigans(quasar) nebula
2022-12-21gallery conditions for tracks without unique art(quasar) nebula
2022-12-07no coverArtDate for albums without cover art either(quasar) nebula
2022-12-07don't expose/show coverArtDate without cover art(quasar) nebula
2022-12-03sticky subheadings(quasar) nebula
2022-11-28divide things.js into modular files (hilariously)(quasar) nebula