working on fixing compatibility issues with ios
This commit is contained in:
parent
b64ee5ffce
commit
7eaeb022b0
|
@ -1,42 +0,0 @@
|
|||
[
|
||||
{
|
||||
"title": "Totally Wired with Kimberly Haas",
|
||||
"details": "1980s",
|
||||
"media": "01_Meredith Monk_Totally Wired with Kimberly Haas_1980s"
|
||||
},
|
||||
{
|
||||
"title": "Speaking of Music",
|
||||
"details": "1984, Other Minds radio program Part 1 of 2",
|
||||
"media": "02_Speaking of Music, Meredith Monk. 1984 Other Minds radio program_Part 1 of 2"
|
||||
},
|
||||
{
|
||||
"title": "Speaking of Music",
|
||||
"details": "1984, Other Minds radio program Part 2 of 2",
|
||||
"media": "03_Speaking of Music_ Meredith Monk, 1984. Other Minds radio program_Part 2 of 2"
|
||||
},
|
||||
{
|
||||
"title": "Interview with Irene Ferchl Bayn Rundfunk Vielkurjieunal",
|
||||
"details": "1986",
|
||||
"media": "04 Meredith Monk Interview with Irene Ferchl_Bayn Rundfunk Vielkurjieunal_1986"
|
||||
},
|
||||
{
|
||||
"title": "Terry Gross Interview",
|
||||
"details": "1988",
|
||||
"media": "05 Terry Gross interview_1987"
|
||||
},
|
||||
{
|
||||
"title": "WNYC Interview with David Garland",
|
||||
"details": "2008, Sacred Sundays",
|
||||
"media": "06 WNYC Interview w_ David Garland_SacredSundays_2008"
|
||||
},
|
||||
{
|
||||
"title": "Mark Frosty McNeil and Meredith Monk in Conversation",
|
||||
"details": "2019, Red Bull Radio, Fireside Chat",
|
||||
"media": "07_Red Bull Radio_Fireside Chat_Mark frosty McNeil and MM in conversation_4.11.19"
|
||||
},
|
||||
{
|
||||
"title": "Late Junction",
|
||||
"details": "2019, BBC",
|
||||
"media": "08_Late Junction_2019 - Meredith Monk v2 BBC"
|
||||
}
|
||||
]
|
|
@ -1,32 +0,0 @@
|
|||
[
|
||||
{
|
||||
"title": "Meredith Monk: Inner Voice",
|
||||
"detail": "2009, 82:00",
|
||||
"media": "MeredithMonk_Inner Voice.mp4"
|
||||
},
|
||||
{
|
||||
"title": "Meredith Monk: A Documentary",
|
||||
"detail": "by Sidsel Mundal, Norwegian Television Documentary, 1994",
|
||||
"media": "1994 documentary by Sidsel Mundal_for Norwegian Television.m4v"
|
||||
},
|
||||
{
|
||||
"title": "Meredith Monk: A Documentary",
|
||||
"detail": "by Mariusz Grzegorzek, Polish Television Documentary, 1995",
|
||||
"media": ""
|
||||
},
|
||||
{
|
||||
"title": "Souls messenger",
|
||||
"detail": "Poland, 2011",
|
||||
"media": ""
|
||||
},
|
||||
{
|
||||
"title": "Meredith Monk",
|
||||
"detail": "by Ingo Berhman, ECM Documentary - ECM50 | 1981, 2019",
|
||||
"media": ""
|
||||
},
|
||||
{
|
||||
"title": "4 American Composers",
|
||||
"detail": "Peter Greenaway Documentary",
|
||||
"media": ""
|
||||
}
|
||||
]
|
|
@ -0,0 +1,42 @@
|
|||
[
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-21 08_Late Junction_2019 - Meredith Monk v2 BBC.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-22 02_Speaking of Music Meredith Monk 1984 Part 1 of 2.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-23 03_Speaking of Music_ Meredith Monk 1984 Part 2 of 2.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-24 04 Meredith Monk Interview with I Ferchl_Bayn Rundfunk 1986.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-25 05 Terry Gross interview_1987.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-26 06 WNYC Interview w_ David Garland_SacredSundays_2008.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-27 07_Red Bull Radio_Fireside Chat_M frosty McNeil and MM_41119.mp3"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_audio",
|
||||
"media": "-28 08_Late Junction_2019 - Meredith Monk v2 BBC.mp3"
|
||||
}
|
||||
]
|
|
@ -0,0 +1,82 @@
|
|||
[
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--2 MichaelBlackwoodMakingDances.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--3 ECM1981 Video Meredith Monk V2_2019.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--4 Meredith Monk_Andere Avantgarde_TV Interview_1982_.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--5 New Sounds for a New World_1982.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--6 Four American Composers_Peter Greenaway.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--7 bbc_late_show (Original).m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--8 1994 documentary by Sidsel Mundal_for Norwegian Telev.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "--9 Meredith Monk - Polish Television Documentary (1995).m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-12 MeredithMonk_Inner Voice.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-13 Bennington College lecture performance 3.11.11.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-14 MMonk_TheSoulsMessenger_Lublin_2012.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-15 Girlchild Diary_61116.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-16 Q2 Spaces_Meredith Monk_2014.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-17 Gish Prize Ceremony Camera A.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-18 MM and Adam Shatz - Book of Days conversation_2020.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "documentaries_interviews_video",
|
||||
"media": "-19 Coffee and Composition with Meredith Monk_2021.m4v"
|
||||
}
|
||||
]
|
|
@ -1 +1,27 @@
|
|||
[]
|
||||
[
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "films",
|
||||
"media": "_72 01 16_Millimeter_Earrings_1980_Color_IN_HD_23-98_ProRes4444_Pillar Scan GOOD copy v4 2023 0812.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "films",
|
||||
"media": "_74 Ellis Island.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "films",
|
||||
"media": "_75 Book of Days.m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "films",
|
||||
"media": "_76 1982 Paris KTCA (full).m4v"
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "films",
|
||||
"media": "_77 TurtleDreams(Waltz)_Stereo_Tranfer1inchApril2018.m4v"
|
||||
}
|
||||
]
|
|
@ -1,163 +0,0 @@
|
|||
[
|
||||
{
|
||||
"title": "On Behalf of Nature - Album",
|
||||
"details": "2016",
|
||||
"media": "on_behalf_of_nature",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"01 Monk_ Dark_Light 1.mp3",
|
||||
"02 Monk_ High Realm.mp3",
|
||||
"03 Monk_ Fractal Activity.mp3",
|
||||
"04 Monk_ Environs 1.mp3",
|
||||
"05 Monk_ Eon.mp3",
|
||||
"06 Monk_ Duet With Shifting Ground.mp3",
|
||||
"07 Monk_ Environs 2.mp3",
|
||||
"08 Monk_ Pavement Steps.mp3",
|
||||
"09 Monk_ Evolution.mp3",
|
||||
"10 Monk_ Ritual Zone.mp3",
|
||||
"11 Monk_ Water_Sky Rant.mp3",
|
||||
"12 Monk_ Memory Zone.mp3",
|
||||
"13 Monk_ Environs 3.mp3",
|
||||
"14 Monk_ Harvest.mp3",
|
||||
"15 Monk_ Dark_Light 2.mp3",
|
||||
"16 Monk_ High Realm Reprise.mp3",
|
||||
"17 Monk_ Fractal Mirror.mp3",
|
||||
"18 Monk_ Ringing.mp3",
|
||||
"19 Monk_ Spider Web Anthem.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "Piano Songs - Album",
|
||||
"details": "2014",
|
||||
"media": "piano_songs",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"01 Monk_ Obsolete Objects.mp3",
|
||||
"02 Monk_ Ellis Island.mp3",
|
||||
"03 Monk_ Folkdance.mp3",
|
||||
"04 Monk_ Urban March (Shadow).mp3",
|
||||
"05 Monk_ Tower.mp3",
|
||||
"06 Monk_ Paris.mp3",
|
||||
"07 Monk_ Railroad (Travel Song).mp3",
|
||||
"08 Monk_ Parlour Games.mp3",
|
||||
"09 Monk_ St. Petersburg Waltz.mp3",
|
||||
"10 Monk_ Window In 7's.mp3",
|
||||
"11 Monk_ Totentanz.mp3",
|
||||
"12 Monk_ Phantom Waltz.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "Songs of Ascension",
|
||||
"details": "2011",
|
||||
"media": "songs_of_ascension",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "impermanance",
|
||||
"details": "2008",
|
||||
"media": "impermanance",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "mercy",
|
||||
"details": "2003",
|
||||
"media": "mercy",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Volcano Songs",
|
||||
"details": "1997",
|
||||
"media": "volcano_songs",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "ATLAS: an opera in three parts",
|
||||
"details": "2-CD album, 1993",
|
||||
"media": "atlas",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Facing North",
|
||||
"details": "1992",
|
||||
"media": "facing_north",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Book of Days",
|
||||
"details": "1990",
|
||||
"media": "book_of_days",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Do You Be",
|
||||
"details": "1987",
|
||||
"media": "do_you_be",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Turtle Dreams - Album",
|
||||
"details": "1983",
|
||||
"media": "turtule_dreams",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Dolmen Music - Album",
|
||||
"details": "1981",
|
||||
"media": "dolmen_music",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Songs from the Hill/Tablet - Album",
|
||||
"details": "1977",
|
||||
"media": "songs_from_the_hill",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Our Lady of Late - Album",
|
||||
"details": "1973",
|
||||
"media": "our_lady_of_late",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "KEY: an album of invisible theater - Album",
|
||||
"details": "1971",
|
||||
"media": "key",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "MEMORY GAME",
|
||||
"details": "2020",
|
||||
"media": "memory_game",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "MONK MIX: Remixes and Interpretations of Music by Meredith Monk",
|
||||
"details": "2-CD Album, 2012",
|
||||
"media": "monk_mix",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Beginnings",
|
||||
"details": "Album, 2009",
|
||||
"media": "beginnings",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Radio Songs",
|
||||
"details": "LP/Album, 2014",
|
||||
"media": "radio_songs",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Monk and the Abbiss",
|
||||
"details": "1996",
|
||||
"media": "monk_and_the_abbiss",
|
||||
"album": true
|
||||
},
|
||||
{
|
||||
"title": "Biography (from Education of the Girlchild)",
|
||||
"details": "recording, 1978",
|
||||
"media": "biography",
|
||||
"album": true
|
||||
}
|
||||
]
|
|
@ -0,0 +1,269 @@
|
|||
[
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-43 Dolmen Music",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-43-01 Monk_ Gotham Lullaby.mp3",
|
||||
"-43-02 Monk_ Travelling.mp3",
|
||||
"-43-03 Monk_ The Tale.mp3",
|
||||
"-43-04 Monk_ Biography.mp3",
|
||||
"-43-05 Monk_ Dolmen Music.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-44 Turtle Dreams",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-44-01 Monk_ Turtle Dreams.mp3",
|
||||
"-44-02 Monk_ View 1.mp3",
|
||||
"-44-03 Monk_ Engine Steps.mp3",
|
||||
"-44-04 Monk_ Ester's Song.mp3",
|
||||
"-44-05 Monk_ View 2.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-45 Do You Be",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-45-01 Monk_ Scared Song.mp3",
|
||||
"-45-02 Monk_ I Don't Know.mp3",
|
||||
"-45-03 Monk_ Window In 7's.mp3",
|
||||
"-45-04 Monk_ Double Fiesta.mp3",
|
||||
"-45-05 Monk_ Do You Be.mp3",
|
||||
"-45-06 Monk_ Panda Chant 1.mp3",
|
||||
"-45-07 Monk_ Memory Song.mp3",
|
||||
"-45-08 Monk_ Panda Chant 2.mp3",
|
||||
"-45-09 Monk_ Quarry Lullaby.mp3",
|
||||
"-45-10 Monk_ Shadow Song.mp3",
|
||||
"-45-11 Monk_ Astronaut Anthem.mp3",
|
||||
"-45-12 Monk_ Wheel.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-46 Book of Days",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-46-01 Early Morning Melody.mp3",
|
||||
"-46-02 Travellers 1, 2, 3.mp3",
|
||||
"-46-03 Dawn.mp3",
|
||||
"-46-04 Travellers 4 _ Curchyard Entertainment.mp3",
|
||||
"-46-05 Afternoon Melodies.mp3",
|
||||
"-46-06 Fields _ Clouds.mp3",
|
||||
"-46-07 Dusk.mp3",
|
||||
"-46-08 Eva's Song.mp3",
|
||||
"-46-09 Evening.mp3",
|
||||
"-46-10 Travellers 5.mp3",
|
||||
"-46-11 Jewish Storyteller _ Dance _ Dream.mp3",
|
||||
"-46-12 Plague.mp3",
|
||||
"-46-13 Madwoman's Vision.mp3",
|
||||
"-46-14 Cave Song.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-47 Facing North",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-47-01 Monk_ Facing North - Northern Lights 1.mp3",
|
||||
"-47-02 Monk_ Facing North - Chinook.mp3",
|
||||
"-47-03 Monk_ Facing North - Long Shadows 1.mp3",
|
||||
"-47-04 Monk_ Facing North - Keeping Warm.mp3",
|
||||
"-47-05 Monk_ Facing North - Northern Lights 2.mp3",
|
||||
"-47-06 Monk_ Facing North - Chinook Whispers.mp3",
|
||||
"-47-07 Monk_ Facing North - Arctic Bar.mp3",
|
||||
"-47-08 Monk_ Facing North - Hocket.mp3",
|
||||
"-47-09 Monk_ Facing North - Long Shadows 2.mp3",
|
||||
"-47-10 Monk_ Facing North - Long Shadows 2.mp3",
|
||||
"-47-11 Monk_ Vessel - Fire Dance.mp3",
|
||||
"-47-12 Monk_ Vessel - Little Epiphany; Sybil Song.mp3",
|
||||
"-47-13 Monk_ Vessel - Mill.mp3",
|
||||
"-47-14 Monk_ Vessel - Mill.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-48 ATLAS an opera in three parts 2-CD album",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-48-1-01 Monk_ Atlas - Part.mp3",
|
||||
"-48-1-02 Monk_ Atlas - Part 1_ Pe.mp3",
|
||||
"-48-1-03 Monk_ Atlas - Part 1_ Pe.mp3",
|
||||
"-48-1-04 Monk_ Atlas - Part 1_ Pe.mp3",
|
||||
"-48-1-05 Monk_ Atlas - Part 1_ Pe.mp3",
|
||||
"-48-1-06 Monk_ Atlas - Part 1_ Pe.mp3",
|
||||
"-48-1-07 Monk_ Atlas - Part 1_ Pe.mp3",
|
||||
"-48-1-08 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-1-09 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-1-10 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-01 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-02 Monk_ Atlas - Part.mp3",
|
||||
"-48-2-03 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-04 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-05 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-06 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-07 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-08 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-09 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-10 Monk_ Atlas - Part 2_ Ni.mp3",
|
||||
"-48-2-11 Monk_ Atlas - Part 3_ In.mp3",
|
||||
"-48-2-12 Monk_ Atlas - Part 3_ In.mp3",
|
||||
"-48-2-13 Monk_ Atlas - Part 3_ In.mp3",
|
||||
"-48-2-14 Monk_ Atlas - Part 3_ In.mp3",
|
||||
"-48-2-15 Monk_ Atlas - Part 3_ In.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-49 Volcano Songs",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-49-01 Monk_ Volcano Songs - Walking Song.mp3",
|
||||
"-49-02 Monk_ Volcano Songs - Lost Wind.mp3",
|
||||
"-49-03 Monk_ Volcano Songs - Hips Dance.mp3",
|
||||
"-49-04 Monk_ Volcano Songs - Cry #1.mp3",
|
||||
"-49-05 Monk_ New York Requiem.mp3",
|
||||
"-49-06 Monk_ Volcano Songs - Offering.mp3",
|
||||
"-49-07 Monk_ Volcano Songs - Boat Man.mp3",
|
||||
"-49-08 Monk_ Volcano Songs - Skip Song.mp3",
|
||||
"-49-09 Monk_ Volcano Songs - Old Lava.mp3",
|
||||
"-49-10 Monk_ Volcano Songs - Cry #2.mp3",
|
||||
"-49-11 Monk_ St. Petersburg Waltz.mp3",
|
||||
"-49-12 Monk_ Three Heavens & Hells.mp3",
|
||||
"-49-13 Monk_ Light Songs - Click Song #1.mp3",
|
||||
"-49-14 Monk_ Light Songs - Click Song #2.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-50 mercy",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-50-01 Monk_ Braid 1 & Leaping Song.mp3",
|
||||
"-50-02 Monk_ Braid 2.mp3",
|
||||
"-50-03 Monk_ Urban March (Shadow).mp3",
|
||||
"-50-04 Monk_ Masks.mp3",
|
||||
"-50-05 Monk_ Line 1.mp3",
|
||||
"-50-06 Monk_ Doctor_Patient.mp3",
|
||||
"-50-07 Monk_ Line 2.mp3",
|
||||
"-50-08 Monk_ Woman At The Door.mp3",
|
||||
"-50-09 Monk_ Line 3 & Prisoner.mp3",
|
||||
"-50-10 Monk_ Epilogue.mp3",
|
||||
"-50-11 Monk_ Shaking.mp3",
|
||||
"-50-12 Monk_ Liquid Air.mp3",
|
||||
"-50-13 Monk_ Urban March (Light).mp3",
|
||||
"-50-14 Monk_ Core Chant.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-51 impermanance",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-51-01 Monk_ Last Song.mp3",
|
||||
"-51-02 Monk_ Maybe 1.mp3",
|
||||
"-51-03 Monk_ Little Breath.mp3",
|
||||
"-51-04 Monk_ Liminal.mp3",
|
||||
"-51-05 Monk_ Disequilibrium.mp3",
|
||||
"-51-06 Monk_ Particular Dance.mp3",
|
||||
"-51-07 Monk_ Between Song.mp3",
|
||||
"-51-08 Monk_ Passage.mp3",
|
||||
"-51-09 Monk_ Maybe 2.mp3",
|
||||
"-51-10 Monk_ Skeleton Lines.mp3",
|
||||
"-51-11 Monk_ Slow Dissolve.mp3",
|
||||
"-51-12 Monk_ Totentanz.mp3",
|
||||
"-51-13 Hilash_ Sweep 1.mp3",
|
||||
"-51-14 Monk_ Rocking.mp3",
|
||||
"_46_15 Hilash_ Sweep 2.mp3",
|
||||
"_46_16 Hoek_ Mieke's Melody #5.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-52 Songs of Ascension",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-52-01 Clusters 1.mp3",
|
||||
"-52-02 Strand (Gathering).mp3",
|
||||
"-52-03 Winter Variation.mp3",
|
||||
"-52-04 Cloud Code.mp3",
|
||||
"-52-05 Shift.mp3",
|
||||
"-52-06 Mapping.mp3",
|
||||
"-52-07 Summer Variation.mp3",
|
||||
"-52-08 Vow.mp3",
|
||||
"-52-09 Clusters 2.mp3",
|
||||
"-52-10 Falling.mp3",
|
||||
"-52-11 Burn.mp3",
|
||||
"-52-12 Strand (Inner Psalm).mp3",
|
||||
"-52-13 Autumn Variation.mp3",
|
||||
"-52-14 Ledge Dance.mp3",
|
||||
"-52-15 Traces.mp3",
|
||||
"-52-16 Respite.mp3",
|
||||
"-52-17 Mapping Continued.mp3",
|
||||
"-52-18 Clusters 3.mp3",
|
||||
"-52-19 Spring Variation.mp3",
|
||||
"-52-20 Fathom.mp3",
|
||||
"-52-21 Ascent.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-53 Piano Songs",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-53-01 Monk_ Obsolete Objects.mp3",
|
||||
"-53-02 Monk_ Ellis Island.mp3",
|
||||
"-53-03 Monk_ Folkdance.mp3",
|
||||
"-53-04 Monk_ Urban March (Shadow).mp3",
|
||||
"-53-05 Monk_ Tower.mp3",
|
||||
"-53-06 Monk_ Paris.mp3",
|
||||
"-53-07 Monk_ Railroad (Travel Song).mp3",
|
||||
"-53-08 Monk_ Parlour Games.mp3",
|
||||
"-53-09 Monk_ St. Petersburg Waltz.mp3",
|
||||
"-53-10 Monk_ Window In 7's.mp3",
|
||||
"-53-11 Monk_ Totentanz.mp3",
|
||||
"-53-12 Monk_ Phantom Waltz.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_ecm",
|
||||
"media": "-54 On Behalf of Nature",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"-54-01 Monk_ Dark_Light 1.mp3",
|
||||
"-54-02 Monk_ High Realm.mp3",
|
||||
"-54-03 Monk_ Fractal Activity.mp3",
|
||||
"-54-04 Monk_ Environs 1.mp3",
|
||||
"-54-05 Monk_ Eon.mp3",
|
||||
"-54-06 Monk_ Duet With Shifting Ground.mp3",
|
||||
"-54-07 Monk_ Environs 2.mp3",
|
||||
"-54-08 Monk_ Pavement Steps.mp3",
|
||||
"-54-09 Monk_ Evolution.mp3",
|
||||
"-54-10 Monk_ Ritual Zone.mp3",
|
||||
"-54-11 Monk_ Water_Sky Rant.mp3",
|
||||
"-54-12 Monk_ Memory Zone.mp3",
|
||||
"-54-13 Monk_ Environs 3.mp3",
|
||||
"-54-14 Monk_ Harvest.mp3",
|
||||
"-54-15 Monk_ Dark_Light 2.mp3",
|
||||
"-54-16 Monk_ High Realm Reprise.mp3",
|
||||
"-54-17 Monk_ Fractal Mirror.mp3",
|
||||
"-54-18 Monk_ Ringing.mp3",
|
||||
"-54-19 Monk_ Spider Web Anthem.mp3"
|
||||
]
|
||||
}
|
||||
]
|
|
@ -0,0 +1,8 @@
|
|||
[
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_unpublished",
|
||||
"media": "no content recieved",
|
||||
"tracks": []
|
||||
}
|
||||
]
|
|
@ -0,0 +1,153 @@
|
|||
[
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_55 Songs from the Hill-Tablet",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_55_01 Lullaby.mp3",
|
||||
"_55_02 Mesa.mp3",
|
||||
"_55_03 Jade (old woman's song).mp3",
|
||||
"_55_04 Wa-lie-oh.mp3",
|
||||
"_55_05 Insect.mp3",
|
||||
"_55_06 Descending.mp3",
|
||||
"_55_07 Silo.mp3",
|
||||
"_55_08 Bird Code.mp3",
|
||||
"_55_09 Jew's Harp.mp3",
|
||||
"_55_10 Prairie Ghost.mp3",
|
||||
"_55_11 Tablet.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_56 Our Lady of Late",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_56_01 Prologue.mp3",
|
||||
"_56_02 Unison.mp3",
|
||||
"_56_03 Knee.mp3",
|
||||
"_56_04 Hey Rhythm.mp3",
|
||||
"_56_05 Cow Song.mp3",
|
||||
"_56_06 Sigh.mp3",
|
||||
"_56_07 Morning.mp3",
|
||||
"_56_08 Slide.mp3",
|
||||
"_56_09 Waltz.mp3",
|
||||
"_56_10 Prophecy.mp3",
|
||||
"_56_11 Dumb.mp3",
|
||||
"_56_12 Conversation.mp3",
|
||||
"_56_13 Low Ring.mp3",
|
||||
"_56_14 High Ring.mp3",
|
||||
"_56_15 Free.mp3",
|
||||
"_56_16 Edge.mp3",
|
||||
"_56_17 Scale Down.mp3",
|
||||
"_56_18 Epilogue.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_57 KEY-an album of invisible theater",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_57_01 Porch.mp3",
|
||||
"_57_02 Understreet.mp3",
|
||||
"_57_03 What Does It Mean_.mp3",
|
||||
"_57_04 Vision #1.mp3",
|
||||
"_57_05 Fat Stream.mp3",
|
||||
"_57_06 Vision #2.mp3",
|
||||
"_57_07 Do You Be_.mp3",
|
||||
"_57_08 Vision (#3).mp3",
|
||||
"_57_09 Change.mp3",
|
||||
"_57_10 Dungeon.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_58 MEMORY GAME",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_58_01 Spaceship.mp3",
|
||||
"_58_02 Gamemaster's Song.mp3",
|
||||
"_58_03 Migration.mp3",
|
||||
"_58_04 Memory Song.mp3",
|
||||
"_58_05 Downfall.mp3",
|
||||
"_58_06 Waltz In 5s.mp3",
|
||||
"_58_07 Tokyo CHa Cha.mp3",
|
||||
"_58_08 Totentanz.mp3",
|
||||
"_58_09 Double Fiesta.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_59 MONK MIX Remixes and Interpretations of Music by Meredith Monk 2-CD",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"MONK MIX CD1",
|
||||
"MONK MIX CD2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_60 Beginnings",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_60_01 Greensleeves.mp3",
|
||||
"_60_02 Nota.mp3",
|
||||
"_60_03 Duet For Voice And Echoplex.mp3",
|
||||
"_60_04 Candy Bullets And Moon.mp3",
|
||||
"_60_05 Trance.mp3",
|
||||
"_60_06 Epic I.mp3",
|
||||
"_60_07 Paris.mp3",
|
||||
"_60_08 Biography.mp3",
|
||||
"_60_09 Mill.mp3",
|
||||
"_60_10 The Tale.mp3",
|
||||
"_60_11 Quarry Weave.mp3",
|
||||
"_60_12 Epic II.mp3",
|
||||
"_60_13 Tower.mp3",
|
||||
"_60_14 Mill.mp3",
|
||||
"_60_15 Do You Be_.mp3",
|
||||
"_60_16 Quarry Procession.mp3",
|
||||
"_60_17 Porch.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_61 Radio Songs",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_61_01 Quarry Radio.mp3",
|
||||
"_61_02 Gotham Blues.mp3",
|
||||
"_61_03 Quarry Waltz.mp3",
|
||||
"_61_04 Gotham Lullaby.mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_62 Monk and the Abbiss",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_62_05 Dawn (1985).mp3",
|
||||
"_62_06 Quarry weave 1 (1976).mp3",
|
||||
"_62_07 Quarry lullaby (1976).mp3",
|
||||
"_62_08 Quarry weave 2 (1976).mp3",
|
||||
"_62_09 Farmer's song (1974).mp3",
|
||||
"_62_10 Astronaut anthem (1983).mp3",
|
||||
"_62_11 Nightfall (1995).mp3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "",
|
||||
"parent_dir": "music_sound_various",
|
||||
"media": "_63 Biography (from Education of the Girlchild)",
|
||||
"album": true,
|
||||
"tracks": [
|
||||
"_63_13 Biography_Big Ego album.m4a"
|
||||
]
|
||||
}
|
||||
]
|
|
@ -0,0 +1,63 @@
|
|||
[
|
||||
{
|
||||
"title": "Specimen Days",
|
||||
"details": "The Public Theater, New York, 1981. 1:26:17",
|
||||
"media": "-34 Specimen Days.m4v",
|
||||
},
|
||||
{
|
||||
"title": "The Games: a science fiction opera",
|
||||
"details": "Brooklyn Academy of Music (BAM), New York, 1984. 2:00:35",
|
||||
"media": "-37 MMonk_TheGames_BAM1984.m4v",
|
||||
},
|
||||
{
|
||||
"title": "Facing North",
|
||||
"details": "George Washington University, Washington, DC, 1992. 54:32",
|
||||
},
|
||||
{
|
||||
"title": "The Politics of Quiet",
|
||||
"details": "Brooklyn Academy of Music, BAM, New York, 1996. 1:43:46",
|
||||
"media": "-36 The Politics of Quiet at BAM - 10.13.96.m4v",
|
||||
},
|
||||
{
|
||||
"title": "Magic Frequencies (excerpts)",
|
||||
"details": "Muffathalle, Munich, Germany, 1998. 25:49",
|
||||
"media": "-42 1998 Magic Frequencies (excerpts) BetaCamSP transfer 2021.m4v"
|
||||
},
|
||||
{
|
||||
"title":"A Celebration Service",
|
||||
"details": "St. Mark’s Church, NYC, 1999. 55:02",
|
||||
"media": "-35 Meredith Monk - A Celebration Service_ Danspace at St. Mark's Church_1999.m4v",
|
||||
},
|
||||
{
|
||||
impermanence, Brooklyn Academy of Music (BAM), New York, 2006. 1:22:03
|
||||
},
|
||||
{
|
||||
Songs of Ascension, Brooklyn Academy of Music (BAM), New York, 2009. 1:17:29
|
||||
},
|
||||
{
|
||||
"title": "On Behalf of Nature",
|
||||
"details": "UCLA, Los Angeles, California, 2013. 1:14:55"
|
||||
"media": ""
|
||||
}
|
||||
|
||||
{
|
||||
Cellular Songs, UCLA, Los Angeles, California, 2019. 1:24:07
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
"media": "-29 Education of the Gildchild solo_Common Ground_1973.m4v",
|
||||
"media": "-30 Quarry_full film_1977_FINAL_20200127_added to dropbox.m4v",
|
||||
"media": "-33 MEREDITH_MONK_SOLO_CONCERT_1980.m4v",
|
||||
"media": "-38 MeredithMonk_SoloConcert_College des Bernadins Paris_20120516.m4v",
|
||||
"media": "-39 Meredith Monk with Katie Geissinger in Concert, Haus der Kunst, Munich, Germany (2012).m4v",
|
||||
"media": "-40 Candy_Bullets_and_Moon.m4v",
|
||||
"media": "-41 Monk_Anthem_Final.m4v",
|
||||
]
|
|
@ -40,7 +40,8 @@ export class App extends LitElement {
|
|||
|
||||
static styles = [ css`${unsafeCSS(MainCSS)}`, css`
|
||||
:host {
|
||||
display: flex;
|
||||
display: grid;
|
||||
grid-template-rows: auto 1fr auto;
|
||||
flex-direction: column;
|
||||
height: 100vh;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
// // Conditional ESM module loading (Node.js and browser)
|
||||
// // @ts-ignore: Property 'UrlPattern' does not exist
|
||||
// Conditional ESM module loading (Node.js and browser)
|
||||
// @ts-ignore: Property 'UrlPattern' does not exist
|
||||
// eslint-disable-next-line no-undef
|
||||
if (!globalThis.URLPattern) {
|
||||
await import('urlpattern-polyfill')
|
||||
}
|
||||
|
@ -24,19 +25,64 @@ export default new Router({
|
|||
render: () => html`<mm-home></mm-home>`
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('documentaries_interviews'),
|
||||
title: 'Video Documentaries & Interviews',
|
||||
short: 'docs & interviews',
|
||||
path: resolveRouterPath('documentaries_interviews_video'),
|
||||
title: 'Video Documentaries, Interviews & Talks',
|
||||
short: 'VideoDocs',
|
||||
icon: 'film',
|
||||
group: 'Documentaries, Interviews & Talks',
|
||||
plugins: [
|
||||
lazy(() => import('../views/videos.js'))
|
||||
],
|
||||
render: () => html`<mm-videos></mm-videos>`
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('audio_interviews'),
|
||||
path: resolveRouterPath('documentaries_interviews_audio'),
|
||||
title: 'Audio Interviews',
|
||||
short: 'interviews',
|
||||
short: 'Interviews',
|
||||
icon: 'headphones',
|
||||
group: 'Documentaries, Interviews & Talks',
|
||||
plugins: [
|
||||
lazy(() => import('../views/audio.js'))
|
||||
],
|
||||
render: () => html`<mm-audio></mm-audio>`
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('music_sound_ecm'),
|
||||
title: 'ECM',
|
||||
short: 'ECM',
|
||||
icon: 'headphones',
|
||||
group: 'Music & Sound',
|
||||
plugins: [
|
||||
lazy(() => import('../views/audio.js'))
|
||||
],
|
||||
render: () => html`<mm-audio></mm-audio>`,
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('music_sound_various'),
|
||||
title: 'Recordings on Various Labels',
|
||||
short: 'Various Labels',
|
||||
icon: 'headphones',
|
||||
group: 'Music & Sound',
|
||||
plugins: [
|
||||
lazy(() => import('../views/audio.js'))
|
||||
],
|
||||
render: () => html`<mm-audio></mm-audio>`,
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('music_sound_unpublished'),
|
||||
title: 'Unpublished Music Recordings',
|
||||
short: 'Unpublished',
|
||||
icon: 'headphones',
|
||||
group: 'Music & Sound',
|
||||
plugins: [
|
||||
lazy(() => import('../views/audio.js'))
|
||||
],
|
||||
render: () => html`<mm-audio></mm-audio>`,
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('theatre'),
|
||||
title: 'Music - Theatre Works',
|
||||
short: 'Theatre Works',
|
||||
icon: 'headphones',
|
||||
plugins: [
|
||||
lazy(() => import('../views/audio.js'))
|
||||
|
@ -44,19 +90,9 @@ export default new Router({
|
|||
render: () => html`<mm-audio></mm-audio>`
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('recordings_live'),
|
||||
title: 'Recordings of Live Works',
|
||||
short: 'live works',
|
||||
icon: 'film',
|
||||
plugins: [
|
||||
lazy(() => import('../views/videos.js'))
|
||||
],
|
||||
render: () => html`<mm-videos></mm-videos>`
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('music_sound'),
|
||||
title: 'Music & Sound',
|
||||
short: 'music & sound',
|
||||
path: resolveRouterPath('concerts'),
|
||||
title: 'Concert Recordings',
|
||||
short: 'Concerts',
|
||||
icon: 'headphones',
|
||||
plugins: [
|
||||
lazy(() => import('../views/audio.js'))
|
||||
|
@ -66,16 +102,16 @@ export default new Router({
|
|||
{
|
||||
path: resolveRouterPath('films'),
|
||||
title: 'Films',
|
||||
short: 'films',
|
||||
short: 'Films',
|
||||
icon: 'film',
|
||||
plugins: [
|
||||
lazy(() => import('../views/videos.js'))
|
||||
],
|
||||
render: () => html`<mm-videos></mm-videos>`
|
||||
render: () => html`<mm-video></mm-video>`
|
||||
},
|
||||
{
|
||||
path: resolveRouterPath('images'),
|
||||
title: 'Images',
|
||||
title: 'Scores, Posters, Ephemera',
|
||||
short: 'images',
|
||||
icon: 'camera',
|
||||
plugins: [
|
||||
|
@ -97,7 +133,7 @@ export default new Router({
|
|||
|
||||
export function resolveRouterPath(unresolvedPath) {
|
||||
let resolvedPath = baseURL
|
||||
if(unresolvedPath) {
|
||||
if (unresolvedPath) {
|
||||
resolvedPath = resolvedPath + unresolvedPath
|
||||
}
|
||||
|
||||
|
|
|
@ -20,12 +20,8 @@ body {
|
|||
|
||||
--neutral-gradient-400: linear-gradient(to bottom, hsl(228, 5%, 82%) 0%, var(--neutral-400) 100%);
|
||||
--green-gradient-400: linear-gradient(to bottom, var(--green-400) 0%, var(--green-500) 100%);
|
||||
--green-inside-gradient-400: linear-gradient(to bottom, rgba(0, 154, 69, 1) 0%,rgba(177, 178, 181, 0) 100%), linear-gradient(rgba(0, 173, 78, 1),rgba(0, 173, 78, 1));
|
||||
|
||||
--box-shadow: 0 0 6px 2px #00000010;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1280px) {
|
||||
body {
|
||||
font-size: 32px;
|
||||
}
|
||||
--shadow-invert: 0 0 6px 2px #ffffff40;
|
||||
}
|
||||
|
|
|
@ -14,6 +14,10 @@ class Header extends LitElement {
|
|||
super()
|
||||
}
|
||||
|
||||
firstUpdated() {
|
||||
this.title = Router.context.title
|
||||
}
|
||||
|
||||
navHome() {
|
||||
Router.navigate('/')
|
||||
}
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
import { LitElement, css, html } from 'lit'
|
||||
|
||||
class Image extends LitElement {
|
||||
static properties = {
|
||||
details: { type: Object }
|
||||
}
|
||||
|
||||
constructor() {
|
||||
super()
|
||||
this.details = {}
|
||||
}
|
||||
|
||||
firstUpdated() {
|
||||
console.log(this.details)
|
||||
}
|
||||
|
||||
render() {
|
||||
return html`
|
||||
<picture>
|
||||
<img src=${this.details?.path} alt=${this.details?.alt}>
|
||||
${this.detalis?.caption ? html`<figcaption>
|
||||
<p>${this.details.caption}</p>
|
||||
</figcaption>` : '' }
|
||||
</picture>
|
||||
`
|
||||
}
|
||||
|
||||
static styles = css`
|
||||
picture {
|
||||
position: absolute;
|
||||
display: grid;
|
||||
justify-items: center;
|
||||
inset: 0.5em;
|
||||
}
|
||||
|
||||
picture > img {
|
||||
display: block;
|
||||
max-height: 100%;
|
||||
max-width: 100%;
|
||||
object-fit: contain;
|
||||
}
|
||||
`
|
||||
}
|
||||
|
||||
customElements.define('mm-image', Image)
|
|
@ -0,0 +1,52 @@
|
|||
import { LitElement, css, html } from 'lit'
|
||||
|
||||
import '../components/Image.js'
|
||||
|
||||
class ImageCarousel extends LitElement {
|
||||
static properties = {
|
||||
images: { type: Array }
|
||||
}
|
||||
|
||||
constructor() {
|
||||
super()
|
||||
this.images = []
|
||||
}
|
||||
|
||||
firstUpdated() {
|
||||
console.log(this.images)
|
||||
}
|
||||
|
||||
render() {
|
||||
return html`
|
||||
${this.images.map(i => html`<mm-image .details=${i}></mm-image>`)}
|
||||
`
|
||||
}
|
||||
|
||||
static styles = css`
|
||||
:host {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
display: grid;
|
||||
grid-auto-flow: column;
|
||||
grid-auto-columns: 100%;
|
||||
grid-template-rows: 100%;
|
||||
overflow: auto;
|
||||
justify-items: center;
|
||||
|
||||
scroll-behaviour: smooth;
|
||||
scroll-padding-inline: 0.5em;
|
||||
padding-inline-start: 0.5em;
|
||||
padding-inline-end: 0.5em;
|
||||
padding-block-start: 0.25em;
|
||||
padding-block-end: 0.75em;
|
||||
}
|
||||
|
||||
mm-image {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
`
|
||||
}
|
||||
|
||||
customElements.define('mm-img-carousel', ImageCarousel)
|
|
@ -28,6 +28,12 @@ class ImageViewer extends LitElement {
|
|||
|
||||
firstUpdated() {
|
||||
this.figEl = this.shadowRoot.querySelector('figure')
|
||||
|
||||
this.figEl.addEventListener('fullscreenchange', (evt) => {
|
||||
console.log('figel fullscreen', evt)
|
||||
|
||||
this.captionWidth = `${this.imgEl.offsetWidth}px`
|
||||
})
|
||||
}
|
||||
|
||||
connectedCallback() {
|
||||
|
@ -53,6 +59,11 @@ class ImageViewer extends LitElement {
|
|||
this.imgEl.src = this.details.media
|
||||
})
|
||||
}
|
||||
|
||||
if (att.has('captionWidth') && this.details?.media) {
|
||||
console.log('captionWidth updated')
|
||||
this.captionWidth = `${this.imgEl.offsetWidth}px`
|
||||
}
|
||||
this.update()
|
||||
}
|
||||
|
||||
|
@ -62,10 +73,12 @@ class ImageViewer extends LitElement {
|
|||
return
|
||||
}
|
||||
|
||||
|
||||
if (document.fullscreenElement !== null) {
|
||||
document.exitFullscreen()
|
||||
this.figEl.removeAttribute('data-fullscreen')
|
||||
} else {
|
||||
console.log(this.captionWidth)
|
||||
this.figEl.requestFullscreen()
|
||||
this.figEl.setAttribute('data-fullscreen', true)
|
||||
}
|
||||
|
|
|
@ -168,6 +168,7 @@ class ModularPlayer extends LitElement {
|
|||
_volHandler(evt) {
|
||||
if (evt.detail) {
|
||||
this.volCtrl.update(evt.detail.value)
|
||||
this.audio.volume = this.volCtrl.volume
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -16,16 +16,39 @@ class NavCard extends LitElement {
|
|||
}
|
||||
|
||||
firstUpdated() {
|
||||
console.log(this.route)
|
||||
this.shadowRoot.host.addEventListener('click', () => {
|
||||
Router.navigate(this.route.path)
|
||||
})
|
||||
}
|
||||
|
||||
navigate(path) {
|
||||
path = path || this.route.path
|
||||
Router.navigate(path)
|
||||
}
|
||||
|
||||
render() {
|
||||
return html`
|
||||
<div class="card">
|
||||
<mm-icon name=${this.route?.icon}></mm-icon>
|
||||
<p class="title">${this.route?.title}</p>
|
||||
${Array.isArray(this.route) ? html`
|
||||
<p class="title">${this.route[0].group}</p>
|
||||
${this.route.map(r =>
|
||||
html`
|
||||
<button @click=${() => this.navigate(r.path)}>
|
||||
<mm-icon name=${r.icon}></mm-icon>
|
||||
${r.title}
|
||||
</button>
|
||||
`
|
||||
)}
|
||||
`
|
||||
:
|
||||
html`
|
||||
<p class="title">${this.route?.title}</p>
|
||||
<button class="iconOnly" @click=${() => this.navigate()}>
|
||||
<mm-icon name=${this.route.icon}></mm-icon>
|
||||
</button>
|
||||
`
|
||||
}
|
||||
</div>
|
||||
`
|
||||
}
|
||||
|
@ -45,9 +68,9 @@ class NavCard extends LitElement {
|
|||
|
||||
.card {
|
||||
display: grid;
|
||||
grid-template-columns: auto 1fr;
|
||||
border-top: thin solid var(--highlight-color);
|
||||
padding-block-start: 0.3em;
|
||||
grid-auto-flow: rows;
|
||||
gap: 0.5em;
|
||||
padding: 0.25em;
|
||||
cursor: pointer;
|
||||
font-size: 1.65em;
|
||||
}
|
||||
|
@ -56,10 +79,45 @@ class NavCard extends LitElement {
|
|||
--svg-shadow: var(--shadow);
|
||||
margin-inline-end: 0.5em;
|
||||
font-size: 0.8em;
|
||||
color: currentcolor;
|
||||
}
|
||||
|
||||
.title {
|
||||
max-width: 12ch;
|
||||
padding-bottom: 0.75em;
|
||||
font-size: 0.75em;
|
||||
text-align: center;
|
||||
border-bottom: thin solid var(--highlight-color);
|
||||
}
|
||||
|
||||
button {
|
||||
display: grid;
|
||||
grid-template-columns: 1em auto;
|
||||
gap: 0.25em;
|
||||
width: 100%;
|
||||
background: var(--green-inside-gradient-400);
|
||||
border: none;
|
||||
border-radius: 0.5em;
|
||||
font-size: 0.75em;
|
||||
color: white;
|
||||
padding: 0.5em;
|
||||
text-align: left;
|
||||
text-shadow: 0 0 5px #ffffff;
|
||||
margin: 0;
|
||||
|
||||
&.iconOnly {
|
||||
display: flex;
|
||||
gap: 0;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 1.5em;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
& mm-icon {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
--svg-shadow: 0 0 5px #ffffff;
|
||||
}
|
||||
}
|
||||
`]
|
||||
}
|
||||
|
|
|
@ -133,6 +133,7 @@ class VideoPlayer extends LitElement {
|
|||
|
||||
if (evt.detail) {
|
||||
this.volCtrl.update(evt.detail.value)
|
||||
this.videoEl.volume = this.volCtrl.volume
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -7,12 +7,37 @@ import MainCSS from '../assets/styles/main.scss?inline'
|
|||
import '../components/NavCard.js'
|
||||
|
||||
class Home extends LitElement {
|
||||
static properties = {}
|
||||
static properties = {
|
||||
navigation: { state: true }
|
||||
}
|
||||
|
||||
constructor() {
|
||||
super()
|
||||
}
|
||||
|
||||
firstUpdated() {
|
||||
this.renderRoutes()
|
||||
|
||||
console.log(this.navigation)
|
||||
}
|
||||
|
||||
renderRoutes() {
|
||||
const grouped = {}
|
||||
const ungrouped = Router.routes.filter(r => !r.group && !r.hide)
|
||||
|
||||
Router.routes.forEach(r => {
|
||||
if (r.group) {
|
||||
if (!grouped[r.group]) {
|
||||
grouped[r.group] = []
|
||||
}
|
||||
grouped[r.group].push(r)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
this.navigation = [ ...Object.values(grouped), ...ungrouped ]
|
||||
}
|
||||
|
||||
render() {
|
||||
return html`
|
||||
<header>
|
||||
|
@ -23,7 +48,11 @@ class Home extends LitElement {
|
|||
</header>
|
||||
|
||||
<nav class="home-nav">
|
||||
${Router.routes.map(r => (r.title != 'Not found' && r.title != 'home') ? html`<mm-ncard .route=${r}></mm-ncard>` : '')}
|
||||
${this.navigation?.map((r, i) => {
|
||||
if (r.path !== '/' && !r.hide) {
|
||||
return html`<mm-ncard .route=${r}></mm-ncard>`
|
||||
}
|
||||
})}
|
||||
</nav>
|
||||
|
||||
<footer>
|
||||
|
@ -36,14 +65,13 @@ class Home extends LitElement {
|
|||
|
||||
static styles = [ css`${unsafeCSS(MainCSS)}`, css`
|
||||
:host {
|
||||
display: block;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background-image: url('/images/home-bg.png');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
border: 0.75em white solid;
|
||||
height: 100%;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
div {
|
||||
|
@ -70,9 +98,9 @@ class Home extends LitElement {
|
|||
|
||||
.home-nav {
|
||||
display: grid;
|
||||
margin: 4em;
|
||||
margin: 2em;
|
||||
flex-grow: 1;
|
||||
gap: 2.5em;
|
||||
gap: 2em;
|
||||
grid-template-columns: repeat(auto-fill, minmax(25vw, 1fr));
|
||||
grid-auto-rows: 1fr;
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import MainCSS from '../assets/styles/main.scss?inline'
|
|||
import '../components/HorizontalScroller.js'
|
||||
import '../components/VerticalCard.js'
|
||||
import '../components/ImageViewer.js'
|
||||
import '../components/ImageCarousel.js'
|
||||
|
||||
class ImageView extends LitElement {
|
||||
static properties = {
|
||||
|
@ -26,8 +27,12 @@ class ImageView extends LitElement {
|
|||
const res = await fetch('/data/images.json')
|
||||
const json = await res.json()
|
||||
|
||||
json.forEach(i => i.path = `/media${Router.route.path}/${i.media}`)
|
||||
|
||||
this.images = json
|
||||
this.selected = { ...this.images[0], media: `/media${Router.route.path}/${this.images[0].media}`}
|
||||
this.selected = this.images[0]
|
||||
|
||||
console.log(this.selected)
|
||||
|
||||
} catch (err) {
|
||||
console.error(err)
|
||||
|
@ -39,15 +44,13 @@ class ImageView extends LitElement {
|
|||
selectImage({ target }) {
|
||||
const { details } = target
|
||||
if (details?.title != this.selected?.title) {
|
||||
this.selected = { ...details, media: `/media${Router.route.path}/${details.media}` }
|
||||
this.selected = details
|
||||
}
|
||||
}
|
||||
|
||||
render() {
|
||||
return html`
|
||||
<div class="image">
|
||||
<mm-imageviewer .details=${this.selected}></mm-imageviewer>
|
||||
</div>
|
||||
<mm-img-carousel .images=${this.images}></mm-img-carousel>
|
||||
|
||||
<mm-hscroller>
|
||||
${this._getImages.render({ complete: () => this.images.map(i => html`
|
||||
|
|
|
@ -66,10 +66,10 @@ class VideoView extends LitElement {
|
|||
static styles = [ css`${unsafeCSS(MainCSS)}`, css`
|
||||
:host {
|
||||
flex-grow: 1;
|
||||
height: 100%;
|
||||
display: grid;
|
||||
grid-template-rows: 1fr min-content;
|
||||
gap: 0.25em;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
mm-vcard {
|
||||
|
|
Loading…
Reference in New Issue