Compare commits
	
		
			5 Commits
		
	
	
		
			2a4f6f2c48
			...
			9cd91dc788
		
	
	| Author | SHA1 | Date | 
|---|---|---|
| 
							
							
								
									
								
								 | 
						9cd91dc788 | |
| 
							
							
								
									
								
								 | 
						537c8c0f3e | |
| 
							
							
								
									
								
								 | 
						2e828eb087 | |
| 
							
							
								
									
								
								 | 
						cb2e5e9f17 | |
| 
							
							
								
									
								
								 | 
						7129322105 | 
							
								
								
									
										27
									
								
								README.md
								
								
								
								
							
							
						
						
									
										27
									
								
								README.md
								
								
								
								
							| 
						 | 
					@ -3,3 +3,30 @@
 | 
				
			||||||
> https://href.plus
 | 
					> https://href.plus
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* If you find a release that has a link which just shows the domain and not a proper name, please post it in [#5](https://github.com/Bauke/href-plus/issues/5). Thank you!
 | 
					* If you find a release that has a link which just shows the domain and not a proper name, please post it in [#5](https://github.com/Bauke/href-plus/issues/5). Thank you!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Building
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					*Requires a recent version of [Node](https://nodejs.org) and [pnpm](https://pnpm.io).* In the command-line:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```sh
 | 
				
			||||||
 | 
					# Clone the repository.
 | 
				
			||||||
 | 
					git clone https://github.com/Bauke/href-plus.git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Move into it.
 | 
				
			||||||
 | 
					cd href-plus
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Install the dependencies.
 | 
				
			||||||
 | 
					pnpm install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Start a local development server.
 | 
				
			||||||
 | 
					pnpm start -- --open
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Build for production.
 | 
				
			||||||
 | 
					pnpm vite build --emptyOutDir
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## License
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This project is licensed under the [GPL-3.0-or-later](LICENSE) license.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Icons in [`source/assets/icons`](source/assets/icons) belong to their respective owners.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										29
									
								
								package.json
								
								
								
								
							
							
						
						
									
										29
									
								
								package.json
								
								
								
								
							| 
						 | 
					@ -10,21 +10,21 @@
 | 
				
			||||||
    "deploy:netlify": "netlify deploy --prod -d 'public' -s 'href.plus'"
 | 
					    "deploy:netlify": "netlify deploy --prod -d 'public' -s 'href.plus'"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@fontsource/inter": "^4.5.2",
 | 
					    "@fontsource/inter": "^4.5.12",
 | 
				
			||||||
    "htm": "^3.1.0",
 | 
					    "htm": "^3.1.1",
 | 
				
			||||||
    "modern-normalize": "^1.1.0",
 | 
					    "modern-normalize": "^1.1.0",
 | 
				
			||||||
    "preact": "^10.6.5",
 | 
					    "preact": "^10.11.0",
 | 
				
			||||||
    "preact-router": "^3.2.1"
 | 
					    "preact-router": "^4.1.0"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "@types/node": "^17.0.14",
 | 
					    "@types/node": "^18.7.23",
 | 
				
			||||||
    "postcss": "^8.4.6",
 | 
					    "postcss": "^8.4.16",
 | 
				
			||||||
    "sass": "^1.49.7",
 | 
					    "sass": "^1.55.0",
 | 
				
			||||||
    "stylelint": "^14.3.0",
 | 
					    "stylelint": "^14.13.0",
 | 
				
			||||||
    "stylelint-config-standard-scss": "^3.0.0",
 | 
					    "stylelint-config-standard-scss": "^5.0.0",
 | 
				
			||||||
    "typescript": "^4.5.5",
 | 
					    "typescript": "^4.8.4",
 | 
				
			||||||
    "vite": "^2.7.13",
 | 
					    "vite": "^3.1.4",
 | 
				
			||||||
    "xo": "^0.47.0"
 | 
					    "xo": "^0.52.3"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "stylelint": {
 | 
					  "stylelint": {
 | 
				
			||||||
    "extends": [
 | 
					    "extends": [
 | 
				
			||||||
| 
						 | 
					@ -36,6 +36,11 @@
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "xo": {
 | 
					  "xo": {
 | 
				
			||||||
    "prettier": true,
 | 
					    "prettier": true,
 | 
				
			||||||
 | 
					    "rules": {
 | 
				
			||||||
 | 
					      "@typescript-eslint/consistent-type-definitions": "off",
 | 
				
			||||||
 | 
					      "@typescript-eslint/consistent-type-imports": "off",
 | 
				
			||||||
 | 
					      "n/file-extension-in-import": "off"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "space": true
 | 
					    "space": true
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1615
									
								
								pnpm-lock.yaml
								
								
								
								
							
							
						
						
									
										1615
									
								
								pnpm-lock.yaml
								
								
								
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| 
						 | 
					@ -63,3 +63,7 @@
 | 
				
			||||||
    margin-right: 1rem;
 | 
					    margin-right: 1rem;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.release-date {
 | 
				
			||||||
 | 
					  font-size: 80%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -66,6 +66,11 @@ export default class ReleasePage extends Component<Props, State> {
 | 
				
			||||||
    if (loading === 'finished' && release !== undefined) {
 | 
					    if (loading === 'finished' && release !== undefined) {
 | 
				
			||||||
      document.title = release.display();
 | 
					      document.title = release.display();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      const date =
 | 
				
			||||||
 | 
					        release.date === undefined
 | 
				
			||||||
 | 
					          ? undefined
 | 
				
			||||||
 | 
					          : html`<span class="release-date">${release.date}</span>`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      const image =
 | 
					      const image =
 | 
				
			||||||
        release.image === undefined
 | 
					        release.image === undefined
 | 
				
			||||||
          ? undefined
 | 
					          ? undefined
 | 
				
			||||||
| 
						 | 
					@ -117,6 +122,7 @@ export default class ReleasePage extends Component<Props, State> {
 | 
				
			||||||
          <header class="release-header">
 | 
					          <header class="release-header">
 | 
				
			||||||
            ${image}
 | 
					            ${image}
 | 
				
			||||||
            <h1>${release.artist}<br />${release.title}</h1>
 | 
					            <h1>${release.artist}<br />${release.title}</h1>
 | 
				
			||||||
 | 
					            ${date}
 | 
				
			||||||
          </header>
 | 
					          </header>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          <main class="release-main">
 | 
					          <main class="release-main">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,6 +9,7 @@ type ApiReleaseData = {
 | 
				
			||||||
  'cover-art-archive': {
 | 
					  'cover-art-archive': {
 | 
				
			||||||
    front: boolean;
 | 
					    front: boolean;
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					  date: string | undefined;
 | 
				
			||||||
  id: string;
 | 
					  id: string;
 | 
				
			||||||
  relations: Array<{
 | 
					  relations: Array<{
 | 
				
			||||||
    ended: boolean;
 | 
					    ended: boolean;
 | 
				
			||||||
| 
						 | 
					@ -23,6 +24,7 @@ type ApiReleaseData = {
 | 
				
			||||||
// eslint-disable-next-line @typescript-eslint/naming-convention
 | 
					// eslint-disable-next-line @typescript-eslint/naming-convention
 | 
				
			||||||
interface IRelease {
 | 
					interface IRelease {
 | 
				
			||||||
  artist: string;
 | 
					  artist: string;
 | 
				
			||||||
 | 
					  date: string | undefined;
 | 
				
			||||||
  image: string | undefined;
 | 
					  image: string | undefined;
 | 
				
			||||||
  links: RelationLink[];
 | 
					  links: RelationLink[];
 | 
				
			||||||
  title: string;
 | 
					  title: string;
 | 
				
			||||||
| 
						 | 
					@ -77,6 +79,7 @@ export default class Release {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return new Release({
 | 
					    return new Release({
 | 
				
			||||||
      artist,
 | 
					      artist,
 | 
				
			||||||
 | 
					      date: data.date,
 | 
				
			||||||
      image,
 | 
					      image,
 | 
				
			||||||
      links,
 | 
					      links,
 | 
				
			||||||
      title: data.title,
 | 
					      title: data.title,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,7 +13,7 @@ function gitRevParse(): string {
 | 
				
			||||||
  const revParse = childProcess.spawnSync(
 | 
					  const revParse = childProcess.spawnSync(
 | 
				
			||||||
    'git',
 | 
					    'git',
 | 
				
			||||||
    ['rev-parse', '--short', '--verify', 'main'],
 | 
					    ['rev-parse', '--short', '--verify', 'main'],
 | 
				
			||||||
    {encoding: 'utf-8'},
 | 
					    {encoding: 'utf8'},
 | 
				
			||||||
  );
 | 
					  );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (revParse.error) {
 | 
					  if (revParse.error) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue