Mercurial > code > home > repos > video
changeset 13:b73941c4dc0a
more wip on ingest page; shared styles
author | drewp@bigasterisk.com |
---|---|
date | Sat, 15 Apr 2023 16:11:23 -0700 |
parents | e60be5d74c07 |
children | 4f337f9ab80e |
files | package.json pnpm-lock.yaml src/VideoPage.ts src/ingest/IngestDrop.ts src/ingest/IngestStatus.ts src/ingest/index.html src/ingest/main.ts src/main.css src/vite-env.d.ts tsconfig.json |
diffstat | 10 files changed, 138 insertions(+), 56 deletions(-) [+] |
line wrap: on
line diff
--- a/package.json Sat Apr 15 15:20:12 2023 -0700 +++ b/package.json Sat Apr 15 16:11:23 2023 -0700 @@ -10,7 +10,7 @@ "lit": "^2.7.2", "serve-index": "^1.9.1", "shaka-video-element": "^0.0.6", - "vite": "4.3.0-beta.6", + "vite": "4.3.0-beta.6" }, "devDependencies": { "@types/jest": "^29.5.0",
--- a/pnpm-lock.yaml Sat Apr 15 15:20:12 2023 -0700 +++ b/pnpm-lock.yaml Sat Apr 15 16:11:23 2023 -0700 @@ -4,31 +4,33 @@ '@types/jest': ^29.5.0 express: ^4.18.2 jest: ^29.5.0 - lit: ^2.6.1 + lit: ^2.7.2 node-globals: ^0.1.5 serve-index: ^1.9.1 shaka-video-element: ^0.0.6 stylus: ^0.59.0 - ts-jest: ^29.0.5 + ts-jest: ^29.1.0 tslib: ^2.5.0 - typescript: ^5.0.2 - vite: ^4.2.1 + typescript: ^5.0.4 + vite: 4.3.0-beta.6 + vite-plugin-multipage: ^1.0.0 dependencies: express: 4.18.2 - lit: 2.6.1 + lit: 2.7.2 serve-index: 1.9.1 shaka-video-element: 0.0.6 - vite: 4.2.1_stylus@0.59.0 + vite: 4.3.0-beta.6_stylus@0.59.0 + vite-plugin-multipage: 1.0.0 devDependencies: '@types/jest': 29.5.0 jest: 29.5.0 node-globals: 0.1.5 stylus: 0.59.0 - ts-jest: 29.0.5_44ttdtjaknnkcgzh5px4h2qxl4 + ts-jest: 29.1.0_tobmchb5uviuq5lwsinkw5fvje tslib: 2.5.0 - typescript: 5.0.2 + typescript: 5.0.4 packages: @@ -845,6 +847,10 @@ resolution: {integrity: sha512-ic93MBXfApIFTrup4a70M/+ddD8xdt2zxxj9sRwHQzhS9ag/syqkD8JPdTXsc1gUy2K8TTirhlCqyTEM/sifNw==} dev: false + /@lit-labs/ssr-dom-shim/1.1.0: + resolution: {integrity: sha512-92uQ5ARf7UXYrzaFcAX3T2rTvaS9Z1//ukV+DqjACM4c8s0ZBQd7ayJU5Dh2AFLD/Ayuyz4uMmxQec8q3U4Ong==} + dev: false + /@lit/reactive-element/1.6.1: resolution: {integrity: sha512-va15kYZr7KZNNPZdxONGQzpUr+4sxVu7V/VG7a8mRfPPXUyhEYj5RzXCQmGrlP3tAh0L3HHm5AjBMFYRqlM9SA==} dependencies: @@ -3400,6 +3406,11 @@ xtend: 4.0.2 dev: true + /interpret/1.4.0: + resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} + engines: {node: '>= 0.10'} + dev: false + /invariant/2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} dependencies: @@ -4225,25 +4236,26 @@ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /lit-element/3.2.2: - resolution: {integrity: sha512-6ZgxBR9KNroqKb6+htkyBwD90XGRiqKDHVrW/Eh0EZ+l+iC+u+v+w3/BA5NGi4nizAVHGYvQBHUDuSmLjPp7NQ==} - dependencies: + /lit-element/3.3.1: + resolution: {integrity: sha512-Gl+2409uXWbf7n6cCl7Kzasm7zjT9xmdwi2BhLNi70sRKAgRkqueDu5mSIH3hPYMM0/vqBCdPXod3NbGkRA2ww==} + dependencies: + '@lit-labs/ssr-dom-shim': 1.1.0 '@lit/reactive-element': 1.6.1 - lit-html: 2.6.1 + lit-html: 2.7.2 dev: false - /lit-html/2.6.1: - resolution: {integrity: sha512-Z3iw+E+3KKFn9t2YKNjsXNEu/LRLI98mtH/C6lnFg7kvaqPIzPn124Yd4eT/43lyqrejpc5Wb6BHq3fdv4S8Rw==} + /lit-html/2.7.2: + resolution: {integrity: sha512-ZJCfKlA2XELu5tn7XuzOziGFGvf1SeQm+ngLWoJ8bXtSkRrrR3ms6SWy+gsdxeYwySLij5xAhdd2C3EX0ftxdQ==} dependencies: '@types/trusted-types': 2.0.3 dev: false - /lit/2.6.1: - resolution: {integrity: sha512-DT87LD64f8acR7uVp7kZfhLRrHkfC/N4BVzAtnw9Yg8087mbBJ//qedwdwX0kzDbxgPccWRW6mFwGbRQIxy0pw==} + /lit/2.7.2: + resolution: {integrity: sha512-9QnZmG5mIKPRja96cpndMclLSi0Qrz2BXD6EbqNqCKMMjOWVm/BwAeXufFk2jqFsNmY07HOzU8X+8aTSVt3yrA==} dependencies: '@lit/reactive-element': 1.6.1 - lit-element: 3.2.2 - lit-html: 2.6.1 + lit-element: 3.3.1 + lit-html: 2.7.2 dev: false /locate-path/5.0.0: @@ -4895,7 +4907,6 @@ /punycode/1.3.2: resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==} - dev: true /punycode/1.4.1: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} @@ -4921,7 +4932,6 @@ resolution: {integrity: sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==} engines: {node: '>=0.4.x'} deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. - dev: true /randomatic/3.1.1: resolution: {integrity: sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==} @@ -5015,6 +5025,13 @@ dev: true optional: true + /rechoir/0.6.2: + resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} + engines: {node: '>= 0.10'} + dependencies: + resolve: 1.22.1 + dev: false + /regenerate/1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: true @@ -5148,8 +5165,8 @@ inherits: 2.0.4 dev: true - /rollup/3.20.0: - resolution: {integrity: sha512-YsIfrk80NqUDrxrjWPXUa7PWvAfegZEXHuPsEZg58fGCdjL1I9C1i/NaG+L+27kxxwkrG/QEDEQc8s/ynXWWGQ==} + /rollup/3.20.2: + resolution: {integrity: sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==} engines: {node: '>=14.18.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: @@ -5311,6 +5328,16 @@ resolution: {integrity: sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==} dev: true + /shelljs/0.8.5: + resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} + engines: {node: '>=4'} + hasBin: true + dependencies: + glob: 7.2.3 + interpret: 1.4.0 + rechoir: 0.6.2 + dev: false + /side-channel/1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: @@ -5695,8 +5722,8 @@ engines: {node: '>=0.10.0'} dev: true - /ts-jest/29.0.5_44ttdtjaknnkcgzh5px4h2qxl4: - resolution: {integrity: sha512-PL3UciSgIpQ7f6XjVOmbi96vmDHUqAyqDr8YxzopDqX3kfgYtX1cuNeBjP+L9sFXi6nzsGGA6R3fP3DDDJyrxA==} + /ts-jest/29.1.0_tobmchb5uviuq5lwsinkw5fvje: + resolution: {integrity: sha512-ZhNr7Z4PcYa+JjMl62ir+zPiNJfXJN6E8hSLnaUKhOgqcn8vb3e537cpkd0FuAfRK3sR1LSqM1MOhliXNgOFPA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: @@ -5705,7 +5732,7 @@ babel-jest: ^29.0.0 esbuild: '*' jest: ^29.0.0 - typescript: '>=4.3' + typescript: '>=4.3 <6' peerDependenciesMeta: '@babel/core': optional: true @@ -5724,7 +5751,7 @@ lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.3.8 - typescript: 5.0.2 + typescript: 5.0.4 yargs-parser: 21.1.1 dev: true @@ -5762,8 +5789,8 @@ resolution: {integrity: sha512-ueeb9YybpjhivjbHP2LdFDAjbS948fGEPj+ACAMs4xCMmh72OCOMQWBQKlaN4ZNQ04yfLSDLSx1tGRIoWimObQ==} dev: true - /typescript/5.0.2: - resolution: {integrity: sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==} + /typescript/5.0.4: + resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} engines: {node: '>=12.20'} hasBin: true dev: true @@ -5831,7 +5858,6 @@ dependencies: punycode: 1.3.2 querystring: 0.2.0 - dev: true /use/3.1.1: resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} @@ -5887,8 +5913,16 @@ engines: {node: '>= 0.8'} dev: false - /vite/4.2.1_stylus@0.59.0: - resolution: {integrity: sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==} + /vite-plugin-multipage/1.0.0: + resolution: {integrity: sha512-S7f6ySPo6EZW/badia/kunwEPfOFnL4RFyYi/OPmrl4Q4UMyKBfjEpFNVOWb2e/9WHmFs19uzPWNmmhPI4Wdsw==} + dependencies: + mime-types: 2.1.35 + shelljs: 0.8.5 + url: 0.11.0 + dev: false + + /vite/4.3.0-beta.6_stylus@0.59.0: + resolution: {integrity: sha512-sbSBOxO5+s3+KacKk1GiyXcdh4g3MYbvvDGpfigXPs+CQPm99BcXrzVa5FjsN9wBoRoBbhfoejzxhS0nE6JnYA==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -5914,8 +5948,7 @@ dependencies: esbuild: 0.17.12 postcss: 8.4.21 - resolve: 1.22.1 - rollup: 3.20.0 + rollup: 3.20.2 stylus: 0.59.0 optionalDependencies: fsevents: 2.3.2
--- a/src/VideoPage.ts Sat Apr 15 15:20:12 2023 -0700 +++ b/src/VideoPage.ts Sat Apr 15 16:11:23 2023 -0700 @@ -1,9 +1,13 @@ -import { LitElement, html, css } from "lit"; +import { LitElement, html, css, CSSResult, unsafeCSS } from "lit"; import { customElement, property } from "lit/decorators.js"; import { PagePlayer } from "./PagePlayer"; export { VideoSection } from "./VideoSection"; export { PagePlayer } from "./PagePlayer"; import { ShakaVideoElement } from "./PagePlayer"; + +import maincss from "./main.css?inline"; + + interface VideoFile { webRelPath: string; label: string; @@ -52,30 +56,15 @@ this.requestUpdate(); } static styles = [ + unsafeCSS(maincss), css` - a { - color: white; - - } + .listing a { font-size: 20px; text-transform: uppercase; text-underline-offset: 10px; } - #path-segs > span { - color: white; - padding: 11px; - display: inline-block; - background: #4ea1bd21; - margin: 5px; - border-top-left-radius: 29px; - } - #path-segs > span:after { - content: " >"; - font-size: 33px; - vertical-align: middle; - color: gray; - } + .subdir { vertical-align: top; color: white;
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ingest/IngestDrop.ts Sat Apr 15 16:11:23 2023 -0700 @@ -0,0 +1,16 @@ +import { LitElement, html, css } from "lit"; +import { customElement, property } from "lit/decorators.js"; + +@customElement("ingest-drop") +export class IngestDrop extends LitElement { + + static styles = [ + css` + `, + ]; + render() { + return html` + <div id="drop">Drop video urls here</div> + `; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ingest/IngestStatus.ts Sat Apr 15 16:11:23 2023 -0700 @@ -0,0 +1,21 @@ +import { LitElement, html, css } from "lit"; +import { customElement, property } from "lit/decorators.js"; + +@customElement("ingest-status") +export class IngestStatus extends LitElement { + + static styles = [ + css` + `, + ]; + render() { + return html` + +<table> + <thead><th>Source</th><th>Status</th></thead> + <tbody id="processing"> + </tbody> + </table> + `; + } +}
--- a/src/ingest/index.html Sat Apr 15 15:20:12 2023 -0700 +++ b/src/ingest/index.html Sat Apr 15 16:11:23 2023 -0700 @@ -2,10 +2,13 @@ <html> <head> <title>video on bigasterisk</title> - <link rel="stylesheet" type="text/css" media="screen" href="./main.css" /> + <link rel="stylesheet" type="text/css" media="screen" href="../main.css" /> <script type="module" src="./main.ts"></script> </head> <body> + <div id="path-segs"> + <span><a href="../">TOP</a></span> + </div> <h1>Video library ingest</h1> <ingest-drop></ingest-drop>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ingest/main.ts Sat Apr 15 16:11:23 2023 -0700 @@ -0,0 +1,2 @@ +export { IngestDrop } from "./IngestDrop"; +export { IngestStatus } from "./IngestStatus";
--- a/src/main.css Sat Apr 15 15:20:12 2023 -0700 +++ b/src/main.css Sat Apr 15 16:11:23 2023 -0700 @@ -2,4 +2,21 @@ margin: 0; height: 100vh; background: radial-gradient(ellipse at center, #162c4a 0%, #0c2236 36%, #020f16 100%); - } \ No newline at end of file + } + h1,h2,a { + color: white; + } + #path-segs > span { + color: white; + padding: 11px; + display: inline-block; + background: #4ea1bd21; + margin: 5px; + border-top-left-radius: 29px; + } + #path-segs > span:after { + content: " >"; + font-size: 33px; + vertical-align: middle; + color: gray; + }