├── src
├── FastNZB
│ ├── .nvmrc
│ ├── config
│ │ ├── resource-override.js
│ │ ├── empty.js
│ │ ├── helpers.js
│ │ ├── protractor.conf.js
│ │ ├── spec-bundle.js
│ │ ├── head-config.common.js
│ │ ├── github-deploy
│ │ │ └── index.js
│ │ ├── webpack.github-deploy.js
│ │ ├── html-elements-plugin
│ │ │ └── index.js
│ │ └── karma.conf.js
│ ├── src
│ │ ├── assets
│ │ │ ├── css
│ │ │ │ └── .gitkeep
│ │ │ ├── data.json
│ │ │ ├── robots.txt
│ │ │ ├── mock-data
│ │ │ │ └── mock-data.json
│ │ │ ├── service-worker.js
│ │ │ ├── img
│ │ │ │ ├── btc.png
│ │ │ │ ├── nzb.png
│ │ │ │ ├── angular-logo.png
│ │ │ │ ├── angularclass-logo.png
│ │ │ │ └── angularclass-avatar.png
│ │ │ ├── icon
│ │ │ │ ├── favicon.ico
│ │ │ │ ├── apple-icon.png
│ │ │ │ ├── favicon-16x16.png
│ │ │ │ ├── favicon-32x32.png
│ │ │ │ ├── favicon-96x96.png
│ │ │ │ ├── ms-icon-70x70.png
│ │ │ │ ├── apple-icon-57x57.png
│ │ │ │ ├── apple-icon-60x60.png
│ │ │ │ ├── apple-icon-72x72.png
│ │ │ │ ├── apple-icon-76x76.png
│ │ │ │ ├── ms-icon-144x144.png
│ │ │ │ ├── ms-icon-150x150.png
│ │ │ │ ├── ms-icon-310x310.png
│ │ │ │ ├── android-icon-36x36.png
│ │ │ │ ├── android-icon-48x48.png
│ │ │ │ ├── android-icon-72x72.png
│ │ │ │ ├── android-icon-96x96.png
│ │ │ │ ├── apple-icon-114x114.png
│ │ │ │ ├── apple-icon-120x120.png
│ │ │ │ ├── apple-icon-144x144.png
│ │ │ │ ├── apple-icon-152x152.png
│ │ │ │ ├── apple-icon-180x180.png
│ │ │ │ ├── android-icon-144x144.png
│ │ │ │ ├── android-icon-192x192.png
│ │ │ │ ├── apple-icon-precomposed.png
│ │ │ │ └── browserconfig.xml
│ │ │ ├── humans.txt
│ │ │ └── manifest.json
│ │ ├── styles
│ │ │ ├── _variables.scss
│ │ │ └── headings.css
│ │ ├── app
│ │ │ ├── home
│ │ │ │ ├── index.ts
│ │ │ │ ├── home.component.css
│ │ │ │ ├── title
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── title.service.ts
│ │ │ │ │ └── title.service.spec.ts
│ │ │ │ ├── x-large
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── x-large.directive.ts
│ │ │ │ │ └── x-large.directive.spec.ts
│ │ │ │ ├── home.e2e.ts
│ │ │ │ ├── home.component.spec.ts
│ │ │ │ └── home.component.ts
│ │ │ ├── search
│ │ │ │ ├── index.ts
│ │ │ │ ├── search.component.spec.ts
│ │ │ │ ├── search.component.html
│ │ │ │ └── search.component.ts
│ │ │ ├── no-content
│ │ │ │ ├── index.ts
│ │ │ │ └── no-content.component.ts
│ │ │ ├── +detail
│ │ │ │ ├── index.ts
│ │ │ │ ├── +child-detail
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── child-detail.routes.ts
│ │ │ │ │ ├── child-detail.component.ts
│ │ │ │ │ └── child-detail.module.ts
│ │ │ │ ├── detail.routes.ts
│ │ │ │ ├── detail.component.html
│ │ │ │ ├── detail.module.ts
│ │ │ │ └── detail.component.ts
│ │ │ ├── +reset
│ │ │ │ ├── index.ts
│ │ │ │ ├── reset.routes.ts
│ │ │ │ ├── reset.component.html
│ │ │ │ ├── reset.module.ts
│ │ │ │ └── reset.component.ts
│ │ │ ├── index.ts
│ │ │ ├── app.component.css
│ │ │ ├── user.component.ts
│ │ │ ├── nzb.component.ts
│ │ │ ├── release-result.component.ts
│ │ │ ├── release.component.ts
│ │ │ ├── bytes.pipe.ts
│ │ │ ├── app.resolver.ts
│ │ │ ├── app.spec.ts
│ │ │ ├── release-search.component.html
│ │ │ ├── app.routes.ts
│ │ │ ├── release.service.ts
│ │ │ ├── app.e2e.ts
│ │ │ ├── app.service.ts
│ │ │ ├── app.component.ts
│ │ │ ├── release-search.service.ts
│ │ │ ├── environment.ts
│ │ │ ├── release-search.component.ts
│ │ │ ├── app.component.spec.ts
│ │ │ ├── user.service.ts
│ │ │ ├── app.module.ts
│ │ │ └── app.style.css
│ │ ├── meta
│ │ │ ├── robots.txt
│ │ │ └── humans.txt
│ │ ├── fonts
│ │ │ ├── FontAwesome.otf
│ │ │ ├── fontawesome-webfont.eot
│ │ │ ├── fontawesome-webfont.ttf
│ │ │ ├── fontawesome-webfont.woff
│ │ │ └── fontawesome-webfont.woff2
│ │ ├── vendor.browser.ts
│ │ ├── main.browser.aot.ts
│ │ ├── main.browser.ts
│ │ ├── polyfills.browser.ts
│ │ ├── index.html
│ │ └── custom-typings.d.ts
│ ├── wwwroot
│ │ ├── assets
│ │ │ ├── css
│ │ │ │ └── .gitkeep
│ │ │ ├── data.json
│ │ │ ├── robots.txt
│ │ │ ├── service-worker.js
│ │ │ ├── img
│ │ │ │ ├── btc.png
│ │ │ │ ├── nzb.png
│ │ │ │ ├── angular-logo.png
│ │ │ │ ├── angularclass-logo.png
│ │ │ │ └── angularclass-avatar.png
│ │ │ ├── icon
│ │ │ │ ├── favicon.ico
│ │ │ │ ├── apple-icon.png
│ │ │ │ ├── favicon-16x16.png
│ │ │ │ ├── favicon-32x32.png
│ │ │ │ ├── favicon-96x96.png
│ │ │ │ ├── ms-icon-144x144.png
│ │ │ │ ├── ms-icon-150x150.png
│ │ │ │ ├── ms-icon-310x310.png
│ │ │ │ ├── ms-icon-70x70.png
│ │ │ │ ├── apple-icon-57x57.png
│ │ │ │ ├── apple-icon-60x60.png
│ │ │ │ ├── apple-icon-72x72.png
│ │ │ │ ├── apple-icon-76x76.png
│ │ │ │ ├── android-icon-144x144.png
│ │ │ │ ├── android-icon-192x192.png
│ │ │ │ ├── android-icon-36x36.png
│ │ │ │ ├── android-icon-48x48.png
│ │ │ │ ├── android-icon-72x72.png
│ │ │ │ ├── android-icon-96x96.png
│ │ │ │ ├── apple-icon-114x114.png
│ │ │ │ ├── apple-icon-120x120.png
│ │ │ │ ├── apple-icon-144x144.png
│ │ │ │ ├── apple-icon-152x152.png
│ │ │ │ ├── apple-icon-180x180.png
│ │ │ │ ├── apple-icon-precomposed.png
│ │ │ │ └── browserconfig.xml
│ │ │ ├── humans.txt
│ │ │ └── manifest.json
│ │ ├── robots.txt
│ │ ├── main.903320ae724f7b4fce31fd535d77a96d.css.map
│ │ ├── humans.txt
│ │ ├── 2.ab3d001619a899ed5bb8.chunk.js
│ │ ├── 1.a85d2a7f3e86deb8bacf.chunk.js
│ │ ├── 0.fb795abddb64fb794e68.chunk.js
│ │ └── index.html
│ ├── typings
│ │ ├── index.d.ts
│ │ └── globals
│ │ │ └── jquery
│ │ │ └── typings.json
│ ├── netlify.toml
│ ├── typings.json
│ ├── karma.conf.js
│ ├── protractor.conf.js
│ ├── firebase.json
│ ├── .editorconfig
│ ├── typedoc.json
│ ├── appsettings.sample.txt
│ ├── webpack.config.js
│ ├── Properties
│ │ └── launchSettings.json
│ ├── Program.cs
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ ├── web.config
│ ├── LICENSE
│ ├── Startup.cs
│ ├── tslint.json
│ ├── FastNZB.csproj
│ └── AppHost.cs
├── lib
│ ├── ServiceStack.dll
│ ├── ServiceStack.Aws.dll
│ ├── ServiceStack.Mvc.dll
│ ├── ServiceStack.Admin.dll
│ ├── ServiceStack.Client.dll
│ ├── ServiceStack.Common.dll
│ ├── ServiceStack.Redis.dll
│ ├── ServiceStack.Server.dll
│ ├── ServiceStack.Text.dll
│ ├── ServiceStack.OrmLite.dll
│ ├── ServiceStack.Interfaces.dll
│ ├── ServiceStack.OrmLite.MySql.dll
│ ├── ServiceStack.OrmLite.Sqlite.dll
│ ├── ServiceStack.OrmLite.PostgreSQL.dll
│ ├── ServiceStack.OrmLite.SqlServer.dll
│ ├── ServiceStack.Admin.xml
│ ├── ServiceStack.OrmLite.MySql.xml
│ ├── ServiceStack.OrmLite.SqlServer.xml
│ ├── ServiceStack.OrmLite.Sqlite.xml
│ ├── ServiceStack.OrmLite.PostgreSQL.xml
│ └── ServiceStack.OrmLite.MySql.dll.config
├── FastNZB.ServiceModel
│ ├── SessionModels.cs
│ ├── RSS
│ │ ├── Author.cs
│ │ └── Item.cs
│ ├── Types
│ │ ├── Count.cs
│ │ ├── Download.cs
│ │ ├── Category.cs
│ │ ├── APIKey.cs
│ │ ├── Vote.cs
│ │ ├── Title.cs
│ │ ├── APIRequest.cs
│ │ ├── TVEpisode.cs
│ │ ├── NZBResult.cs
│ │ ├── Video.cs
│ │ └── NZB.cs
│ ├── UserModels.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── FastNZB.ServiceModel.csproj
│ ├── FindNZBModels.cs
│ └── ImportNZBModels.cs
└── FastNZB.ServiceInterface
│ ├── FastNZBSession.cs
│ ├── SearchServices.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── FallbackServices.cs
│ ├── SessionServices.cs
│ ├── FastNZB.ServiceInterface.csproj
│ ├── UserServices.cs
│ └── FastNZBAuthRepo.cs
├── scripts
└── FastNZB.Import
│ ├── appsettings.sample.txt
│ ├── FastNZB.Import.csproj
│ └── Models.cs
├── README.md
├── FastNZB.sln
└── .gitignore
/src/FastNZB/.nvmrc:
--------------------------------------------------------------------------------
1 | lts/*
2 |
--------------------------------------------------------------------------------
/src/FastNZB/config/resource-override.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/css/.gitkeep:
--------------------------------------------------------------------------------
1 | @AngularClass
2 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/css/.gitkeep:
--------------------------------------------------------------------------------
1 | @AngularClass
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/styles/_variables.scss:
--------------------------------------------------------------------------------
1 | $nav-button-color: #00838F;
--------------------------------------------------------------------------------
/src/FastNZB/src/styles/headings.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: #00BCD4;
3 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/index.ts:
--------------------------------------------------------------------------------
1 | export * from './home.component';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/robots.txt:
--------------------------------------------------------------------------------
1 | # robotstxt.org
2 |
3 | User-agent: *
4 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/home.component.css:
--------------------------------------------------------------------------------
1 | /*styles for home content only*/
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/title/index.ts:
--------------------------------------------------------------------------------
1 | export * from './title.service';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/search/index.ts:
--------------------------------------------------------------------------------
1 | export * from './search.component';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/data.json:
--------------------------------------------------------------------------------
1 | {
2 | "value": "AngularClass"
3 | }
4 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/robots.txt:
--------------------------------------------------------------------------------
1 | # robotstxt.org
2 |
3 | User-agent: *
4 |
--------------------------------------------------------------------------------
/src/FastNZB/src/meta/robots.txt:
--------------------------------------------------------------------------------
1 | # robotstxt.org
2 |
3 | User-agent: *
4 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/data.json:
--------------------------------------------------------------------------------
1 | {
2 | "value": "AngularClass"
3 | }
4 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/x-large/index.ts:
--------------------------------------------------------------------------------
1 | export * from './x-large.directive';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/no-content/index.ts:
--------------------------------------------------------------------------------
1 | export * from './no-content.component';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/mock-data/mock-data.json:
--------------------------------------------------------------------------------
1 | [
2 | {"res": "data"}
3 | ]
4 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/robots.txt:
--------------------------------------------------------------------------------
1 | # robotstxt.org
2 |
3 | User-agent: *
4 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/index.ts:
--------------------------------------------------------------------------------
1 | export { DetailModule } from './detail.module';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+reset/index.ts:
--------------------------------------------------------------------------------
1 | export { ResetModule } from './reset.module';
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/service-worker.js:
--------------------------------------------------------------------------------
1 | // This file is intentionally without code.
2 |
--------------------------------------------------------------------------------
/src/FastNZB/typings/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * App
3 | */
4 | export * from './app.module';
5 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/service-worker.js:
--------------------------------------------------------------------------------
1 | // This file is intentionally without code.
2 |
--------------------------------------------------------------------------------
/src/FastNZB/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | command = "npm run build:prod"
3 | publish = "dist"
4 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Aws.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Aws.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Mvc.dll
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/+child-detail/index.ts:
--------------------------------------------------------------------------------
1 | export { ChildDetailModule } from './child-detail.module';
2 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Admin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Admin.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Client.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Client.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Common.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Common.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Redis.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Redis.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Server.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Server.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Text.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Text.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.OrmLite.dll
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/img/btc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/img/btc.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/img/nzb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/img/nzb.png
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Interfaces.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.Interfaces.dll
--------------------------------------------------------------------------------
/src/FastNZB/src/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/img/btc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/img/btc.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/img/nzb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/img/nzb.png
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.MySql.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.OrmLite.MySql.dll
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/favicon.ico
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.Sqlite.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.OrmLite.Sqlite.dll
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/img/angular-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/img/angular-logo.png
--------------------------------------------------------------------------------
/src/FastNZB/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "globalDependencies": {
3 | "jquery": "registry:dt/jquery#1.10.0+20170310222111"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/favicon.ico
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.PostgreSQL.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.OrmLite.PostgreSQL.dll
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.SqlServer.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/lib/ServiceStack.OrmLite.SqlServer.dll
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/favicon-16x16.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/favicon-32x32.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/favicon-96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/favicon-96x96.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/ms-icon-70x70.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/ms-icon-70x70.png
--------------------------------------------------------------------------------
/src/FastNZB/src/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/src/FastNZB/src/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/src/FastNZB/src/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-57x57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-57x57.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-60x60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-60x60.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-72x72.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-76x76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-76x76.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/ms-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/ms-icon-144x144.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/ms-icon-150x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/ms-icon-150x150.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/ms-icon-310x310.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/ms-icon-310x310.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/img/angularclass-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/img/angularclass-logo.png
--------------------------------------------------------------------------------
/src/FastNZB/src/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/img/angular-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/img/angular-logo.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/android-icon-36x36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/android-icon-36x36.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/android-icon-48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/android-icon-48x48.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/android-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/android-icon-72x72.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/android-icon-96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/android-icon-96x96.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-114x114.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-114x114.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-120x120.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-144x144.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-152x152.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-180x180.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/img/angularclass-avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/img/angularclass-avatar.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/favicon-16x16.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/favicon-32x32.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/favicon-96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/favicon-96x96.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/ms-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/ms-icon-144x144.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/ms-icon-150x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/ms-icon-150x150.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/ms-icon-310x310.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/ms-icon-310x310.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/ms-icon-70x70.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/ms-icon-70x70.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/android-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/android-icon-144x144.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/android-icon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/android-icon-192x192.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-57x57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-57x57.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-60x60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-60x60.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-72x72.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-76x76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-76x76.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/img/angularclass-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/img/angularclass-logo.png
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/apple-icon-precomposed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/src/assets/icon/apple-icon-precomposed.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/android-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/android-icon-144x144.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/android-icon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/android-icon-192x192.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/android-icon-36x36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/android-icon-36x36.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/android-icon-48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/android-icon-48x48.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/android-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/android-icon-72x72.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/android-icon-96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/android-icon-96x96.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-114x114.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-114x114.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-120x120.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-144x144.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-152x152.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-180x180.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/img/angularclass-avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/img/angularclass-avatar.png
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/apple-icon-precomposed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fastnzb/fastNZB/HEAD/src/FastNZB/wwwroot/assets/icon/apple-icon-precomposed.png
--------------------------------------------------------------------------------
/src/FastNZB/src/app/app.component.css:
--------------------------------------------------------------------------------
1 | html, body{
2 | height: 100%;
3 | font-family: Arial, Helvetica, sans-serif
4 | }
5 |
6 | a.active {
7 | background-color: gray;
8 | }
9 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/main.903320ae724f7b4fce31fd535d77a96d.css.map:
--------------------------------------------------------------------------------
1 | {"version":3,"sources":[],"names":[],"mappings":"","file":"main.903320ae724f7b4fce31fd535d77a96d.css","sourceRoot":""}
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/SessionModels.cs:
--------------------------------------------------------------------------------
1 | using ServiceStack;
2 |
3 | namespace FastNZB.ServiceModel
4 | {
5 | [Route("/api/session-info")]
6 | public class SessionInfo { }
7 | }
8 |
--------------------------------------------------------------------------------
/src/FastNZB/karma.conf.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @author: @AngularClass
3 | */
4 |
5 | /**
6 | * Look in ./config for karma.conf.js
7 | */
8 | module.exports = require('./config/karma.conf.js');
9 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.Admin.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ServiceStack.Admin
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/FastNZB/protractor.conf.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @author: @AngularClass
3 | */
4 |
5 | /**
6 | * look in ./config for protractor.conf.js
7 | */
8 | exports.config = require('./config/protractor.conf.js').config;
9 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.MySql.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ServiceStack.OrmLite.MySql
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/scripts/FastNZB.Import/appsettings.sample.txt:
--------------------------------------------------------------------------------
1 | #copy this to appsettings.txt
2 | MySQL Server=127.0.0.1;Database=fastnzb;UID=root;Password=;SslMode=None
3 | BaseUrl https://localhost:5000
4 | NZBPath /
5 | ApiKey 123
6 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.SqlServer.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ServiceStack.OrmLite.SqlServer
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+reset/reset.routes.ts:
--------------------------------------------------------------------------------
1 | import { ResetComponent } from './reset.component';
2 |
3 | export const routes = [
4 | { path: '', children: [
5 | { path: '', component: ResetComponent },
6 | ]},
7 | ];
8 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/RSS/Author.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace FastNZB.ServiceModel.Rss
4 | {
5 | public class Author
6 | {
7 | public string Name { get; set; }
8 | public string Email { get; set; }
9 | }
10 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/+child-detail/child-detail.routes.ts:
--------------------------------------------------------------------------------
1 | import { ChildDetailComponent } from './child-detail.component';
2 |
3 | export const routes = [
4 | { path: '', component: ChildDetailComponent, pathMatch: 'full' },
5 | ];
6 |
--------------------------------------------------------------------------------
/src/FastNZB/config/empty.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | NgProbeToken: {},
3 | HmrState: function() {},
4 | _createConditionalRootRenderer: function(rootRenderer, extraTokens, coreTokens) {
5 | return rootRenderer;
6 | },
7 | __platform_browser_private__: {}
8 | };
9 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/detail.routes.ts:
--------------------------------------------------------------------------------
1 | import { DetailComponent } from './detail.component';
2 |
3 | export const routes = [
4 | { path: '', children: [
5 | { path: '', component: DetailComponent },
6 | { path: 'child-detail', loadChildren: './+child-detail#ChildDetailModule' }
7 | ]},
8 | ];
9 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/no-content/no-content.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'no-content',
5 | template: `
6 |
7 |
404: page missing
8 |
9 | `
10 | })
11 | export class NoContentComponent {
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/icon/browserconfig.xml:
--------------------------------------------------------------------------------
1 |
2 | #ffffff
--------------------------------------------------------------------------------
/src/FastNZB/firebase.json:
--------------------------------------------------------------------------------
1 | {
2 | "hosting": {
3 | "public": "dist",
4 | "rewrites": [
5 | {
6 | "source": "**",
7 | "destination": "/index.html"
8 | }
9 | ],
10 | "ignore": [
11 | "firebase.json",
12 | "**/.*",
13 | "**/node_modules/**"
14 | ]
15 | }
16 | }
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/icon/browserconfig.xml:
--------------------------------------------------------------------------------
1 |
2 | #ffffff
--------------------------------------------------------------------------------
/src/FastNZB/.editorconfig:
--------------------------------------------------------------------------------
1 | # @AngularClass
2 | # http://editorconfig.org
3 |
4 | root = true
5 |
6 | [*]
7 | charset = utf-8
8 | indent_style = space
9 | indent_size = 2
10 | end_of_line = lf
11 | insert_final_newline = true
12 | trim_trailing_whitespace = true
13 |
14 | [*.md]
15 | insert_final_newline = false
16 | trim_trailing_whitespace = false
17 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/user.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'user',
5 | template: 'My First Angular 2 App
'
6 | })
7 |
8 | export class User {
9 | sessionId: string;
10 | userId: string;
11 | userName: string;
12 | apiKey: string;
13 | nl: boolean;
14 | }
15 |
--------------------------------------------------------------------------------
/src/FastNZB/src/meta/humans.txt:
--------------------------------------------------------------------------------
1 | # humanstxt.org/
2 | # The humans responsible & technology colophon
3 |
4 | # TEAM
5 |
6 | -- --
7 |
8 | # THANKS
9 |
10 |
11 | PatrickJS -- @gdi2290
12 | AngularClass -- @AngularClass
13 |
14 | # TECHNOLOGY COLOPHON
15 |
16 | HTML5, CSS3
17 | Angular2, TypeScript, Webpack
18 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/humans.txt:
--------------------------------------------------------------------------------
1 | # humanstxt.org/
2 | # The humans responsible & technology colophon
3 |
4 | # TEAM
5 |
6 | -- --
7 |
8 | # THANKS
9 |
10 |
11 | PatrickJS -- @gdi2290
12 | AngularClass -- @AngularClass
13 |
14 | # TECHNOLOGY COLOPHON
15 |
16 | HTML5, CSS3
17 | Angular2, TypeScript, Webpack
18 |
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/humans.txt:
--------------------------------------------------------------------------------
1 | # humanstxt.org/
2 | # The humans responsible & technology colophon
3 |
4 | # TEAM
5 |
6 | -- --
7 |
8 | # THANKS
9 |
10 |
11 | PatrickJS -- @gdi2290
12 | AngularClass -- @AngularClass
13 |
14 | # TECHNOLOGY COLOPHON
15 |
16 | HTML5, CSS3
17 | Angular2, TypeScript, Webpack
18 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/humans.txt:
--------------------------------------------------------------------------------
1 | # humanstxt.org/
2 | # The humans responsible & technology colophon
3 |
4 | # TEAM
5 |
6 | -- --
7 |
8 | # THANKS
9 |
10 |
11 | PatrickJS -- @gdi2290
12 | AngularClass -- @AngularClass
13 |
14 | # TECHNOLOGY COLOPHON
15 |
16 | HTML5, CSS3
17 | Angular2, TypeScript, Webpack
18 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/nzb.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'nzb',
5 | template: 'My First Angular 2 App
'
6 | })
7 |
8 | export class NZB {
9 | id: number;
10 | name: string;
11 | parts: number;
12 | size: number;
13 | guid: string;
14 | _Days: number;
15 | _Votes: number;
16 | }
17 |
--------------------------------------------------------------------------------
/src/FastNZB/typings/globals/jquery/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/f4fdcaca9c94f90442dcedb0c8a84399c47e731f/jquery/index.d.ts",
5 | "raw": "registry:dt/jquery#1.10.0+20170310222111",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/f4fdcaca9c94f90442dcedb0c8a84399c47e731f/jquery/index.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.Sqlite.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ServiceStack.OrmLite.Sqlite
5 |
6 |
7 |
8 |
9 | New behavior from using System.Data.SQLite.Core
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/release-result.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { Release } from './release.component';
3 | import { Observable } from 'rxjs/Observable';
4 | import 'rxjs/Rx';
5 |
6 | @Component({
7 | selector: 'query',
8 | template: 'My First Angular 2 App
'
9 | })
10 |
11 | export class ReleaseResult {
12 | offset: number;
13 | total: number;
14 | results: Observable;
15 | }
16 |
--------------------------------------------------------------------------------
/src/FastNZB/typedoc.json:
--------------------------------------------------------------------------------
1 | {
2 | "mode": "modules",
3 | "out": "doc",
4 | "theme": "default",
5 | "ignoreCompilerErrors": "true",
6 | "experimentalDecorators": "true",
7 | "emitDecoratorMetadata": "true",
8 | "target": "ES5",
9 | "moduleResolution": "node",
10 | "preserveConstEnums": "true",
11 | "stripInternal": "true",
12 | "suppressExcessPropertyErrors": "true",
13 | "suppressImplicitAnyIndexErrors": "true",
14 | "module": "commonjs"
15 | }
16 |
--------------------------------------------------------------------------------
/src/FastNZB/appsettings.sample.txt:
--------------------------------------------------------------------------------
1 | #copy to appsettings.txt
2 | MySQL Server=127.0.0.1;Database=fastnzb;UID=root;Password=;SslMode=None
3 | MySQLRead Server=127.0.0.1;Database=fastnzb;UID=root;Password=;SslMode=None
4 | AWS_ACCESS_KEY 123
5 | AWS_SECRET_KEY 123
6 | S3BucketName fastnzb
7 | Redis 127.0.0.1
8 | BaseUrl https://localhost:5000
9 | FSPath /
10 | SMTPHost email-smtp.us-east-1.amazonaws.com
11 | SMTPUser 123
12 | SMTPPass 123
13 | EmailFromName fastNZB
14 | EmailFrom test@domain.local
15 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Types/Count.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack.DataAnnotations;
3 |
4 | namespace FastNZB.ServiceModel.Types
5 | {
6 | public class Count
7 | {
8 | private int _categoryId = 0;
9 | private long _total = 0;
10 |
11 | [PrimaryKey]
12 | public int CategoryId { get { return _categoryId; } set { _categoryId = value; } }
13 | [Alias("Count")]
14 | public long Total { get { return _total; } set { _total = value; } }
15 | }
16 | }
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.PostgreSQL.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ServiceStack.OrmLite.PostgreSQL
5 |
6 |
7 |
8 |
9 | based on Npgsql2's source: Npgsql2\src\NpgsqlTypes\NpgsqlTypeConverters.cs
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/release.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { NZB } from './nzb.component';
3 | import { Observable } from 'rxjs';
4 |
5 | @Component({
6 | selector: 'releases',
7 | template: 'My First Angular 2 App
'
8 | })
9 |
10 | export class Release {
11 | id: number;
12 | title: string;
13 | totalpart: number;
14 | group_id: number;
15 | size: number;
16 | guid: string;
17 | nzb_guid: string;
18 | nzbs: NZB[];
19 | open: boolean;
20 | loading: boolean;
21 | }
22 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/title/title.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 | import { Http } from '@angular/http';
3 |
4 | @Injectable()
5 | export class Title {
6 |
7 | public value = 'Angular 2';
8 |
9 | constructor(
10 | public http: Http
11 | ) {}
12 |
13 | public getData() {
14 | console.log('Title#getData(): Get Data');
15 | /**
16 | * return this.http.get('/assets/data.json')
17 | * .map(res => res.json());
18 | */
19 | return {
20 | value: 'AngularClass'
21 | };
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/bytes.pipe.ts:
--------------------------------------------------------------------------------
1 | import { Pipe, PipeTransform } from '@angular/core';
2 |
3 | @Pipe({name: 'bytes'})
4 | export class BytesPipe implements PipeTransform {
5 | transform(bytes: number) : string {
6 | var decimals = 1;
7 | if(bytes == 0) return '0 Byte';
8 | var k = 1000; // or 1024 for binary
9 | var dm = decimals + 1 || 3;
10 | var sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
11 | var i = Math.floor(Math.log(bytes) / Math.log(k));
12 | return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + '' + sizes[i];
13 | }
14 | }
--------------------------------------------------------------------------------
/src/FastNZB/webpack.config.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @author: @AngularClass
3 | */
4 |
5 | /**
6 | * Look in ./config folder for webpack.dev.js
7 | */
8 | switch (process.env.NODE_ENV) {
9 | case 'prod':
10 | case 'production':
11 | module.exports = require('./config/webpack.prod')({env: 'production'});
12 | break;
13 | case 'test':
14 | case 'testing':
15 | module.exports = require('./config/webpack.test')({env: 'test'});
16 | break;
17 | case 'dev':
18 | case 'development':
19 | default:
20 | module.exports = require('./config/webpack.dev')({env: 'development'});
21 | }
22 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceInterface/FastNZBSession.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Runtime.Serialization;
4 | using ServiceStack;
5 | using ServiceStack.Auth;
6 | using ServiceStack.Configuration;
7 | using ServiceStack.Data;
8 |
9 | using FastNZB.ServiceModel.Types;
10 |
11 | namespace FastNZB.ServiceInterface
12 | {
13 | [DataContract]
14 | public class FastNZBUserSession : AuthUserSession
15 | {
16 | [DataMember]
17 | public string APIKey { get; set; }
18 |
19 | [DataMember]
20 | public long APIRequests { get; set; }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/lib/ServiceStack.OrmLite.MySql.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/detail.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {{ nzb._Votes }}
6 |
7 |
8 |
{{ nzb.name }}
9 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/app.resolver.ts:
--------------------------------------------------------------------------------
1 | import { Resolve, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
2 | import { Injectable } from '@angular/core';
3 | import { Observable } from 'rxjs/Observable';
4 | import 'rxjs/add/observable/of';
5 |
6 | @Injectable()
7 | export class DataResolver implements Resolve {
8 | public resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
9 | return Observable.of({ res: 'I am data'});
10 | }
11 | }
12 |
13 | /**
14 | * An array of services to resolve routes with data.
15 | */
16 | export const APP_RESOLVER_PROVIDERS = [
17 | DataResolver
18 | ];
19 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceInterface/SearchServices.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using System.Collections.Generic;
3 | using ServiceStack;
4 | using FastNZB.ServiceModel;
5 | using ServiceStack.Redis;
6 | using ServiceStack.Data;
7 | using ServiceStack.OrmLite;
8 | using FastNZB.ServiceModel.Types;
9 |
10 | namespace FastNZB.ServiceInterface
11 | {
12 | [Authenticate]
13 | public class SearchServices : Service
14 | {
15 | public object Any(FindNZB request)
16 | {
17 | return Db.Select("SELECT * FROM Title WHERE MATCH(Name) AGAINST(@term)", new { term = request.text });
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/app/app.spec.ts:
--------------------------------------------------------------------------------
1 | import {
2 | inject,
3 | TestBed
4 | } from '@angular/core/testing';
5 |
6 | // Load the implementations that should be tested
7 | //import { App } from './app.component';
8 | import { AppState } from './app.service';
9 |
10 | describe('App', () => {
11 | // provide our implementations or mocks to the dependency injector
12 | beforeEach(() => TestBed.configureTestingModule({
13 | providers: [
14 | AppState,
15 | //App
16 | ]}));
17 |
18 | /*it('should have a url', inject([ App ], (app) => {
19 | expect(app.url).toEqual('https://twitter.com/AngularClass');
20 | }));*/
21 |
22 | });
23 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/release-search.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |

9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+reset/reset.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
{{message}}
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/+child-detail/child-detail.component.ts:
--------------------------------------------------------------------------------
1 | import {
2 | Component,
3 | OnInit,
4 | } from '@angular/core';
5 | /**
6 | * We're loading this component asynchronously
7 | * We are using some magic with es6-promise-loader that will wrap the module with a Promise
8 | * see https://github.com/gdi2290/es6-promise-loader for more info
9 | */
10 |
11 | console.log('`ChildDetail` component loaded asynchronously');
12 |
13 | @Component({
14 | selector: 'child-detail',
15 | template: `
16 | Hello from Child Detail
17 | `,
18 | })
19 | export class ChildDetailComponent implements OnInit {
20 |
21 | public ngOnInit() {
22 | console.log('hello `ChildDetail` component');
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/app.routes.ts:
--------------------------------------------------------------------------------
1 | import { Routes, RouterModule } from '@angular/router';
2 | import { HomeComponent } from './home';
3 | import { SearchComponent } from './search';
4 | import { NoContentComponent } from './no-content';
5 |
6 | import { DataResolver } from './app.resolver';
7 |
8 | export const ROUTES: Routes = [
9 | { path: '', component: HomeComponent },
10 | { path: 'home', component: HomeComponent },
11 | { path: 'search', component: SearchComponent },
12 | { path: 'search/:val', component: SearchComponent },
13 | { path: 'details/:id', loadChildren: './+detail#DetailModule'},
14 | { path: 'reset/:id', loadChildren: './+reset#ResetModule'},
15 | { path: '**', component: NoContentComponent },
16 | ];
17 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/detail.module.ts:
--------------------------------------------------------------------------------
1 | import { CommonModule } from '@angular/common';
2 | import { FormsModule } from '@angular/forms';
3 | import { NgModule } from '@angular/core';
4 | import { RouterModule } from '@angular/router';
5 |
6 | import { routes } from './detail.routes';
7 | import { DetailComponent } from './detail.component';
8 |
9 | console.log('`Detail` bundle loaded asynchronously');
10 |
11 | @NgModule({
12 | declarations: [
13 | /**
14 | * Components / Directives/ Pipes
15 | */
16 | DetailComponent,
17 | ],
18 | imports: [
19 | CommonModule,
20 | FormsModule,
21 | RouterModule.forChild(routes),
22 | ],
23 | })
24 | export class DetailModule {
25 | public static routes = routes;
26 | }
27 |
--------------------------------------------------------------------------------
/src/FastNZB/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "iisSettings": {
3 | "windowsAuthentication": false,
4 | "anonymousAuthentication": true,
5 | "iisExpress": {
6 | "applicationUrl": "http://localhost:57573/",
7 | "sslPort": 0
8 | }
9 | },
10 | "profiles": {
11 | "IIS Express": {
12 | "commandName": "IISExpress",
13 | "launchBrowser": true,
14 | "environmentVariables": {
15 | "ASPNETCORE_ENVIRONMENT": "Development"
16 | }
17 | },
18 | "RedisGeo": {
19 | "commandName": "Project",
20 | "launchBrowser": true,
21 | "launchUrl": "http://localhost:5000",
22 | "environmentVariables": {
23 | "ASPNETCORE_ENVIRONMENT": "Development"
24 | }
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+reset/reset.module.ts:
--------------------------------------------------------------------------------
1 | import { CommonModule } from '@angular/common';
2 | import { FormsModule } from '@angular/forms';
3 | import { NgModule } from '@angular/core';
4 | import { RouterModule } from '@angular/router';
5 | import { AlertModule } from 'ngx-bootstrap/alert';
6 |
7 | import { routes } from './reset.routes';
8 | import { ResetComponent } from './reset.component';
9 |
10 | @NgModule({
11 | declarations: [
12 | /**
13 | * Components / Directives/ Pipes
14 | */
15 | ResetComponent,
16 | ],
17 | imports: [
18 | CommonModule,
19 | FormsModule,
20 | RouterModule.forChild(routes),
21 | AlertModule.forRoot(),
22 | ],
23 | })
24 | export class ResetModule {
25 | public static routes = routes;
26 | }
27 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Types/Download.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack.DataAnnotations;
3 |
4 | namespace FastNZB.ServiceModel.Types
5 | {
6 | public class Download
7 | {
8 | private int _id = 0;
9 | private int _apiKeyId = 0;
10 | private int _nzbId = 0;
11 | private string _ipAddress = String.Empty;
12 |
13 | [AutoIncrementAttribute]
14 | [PrimaryKey]
15 | public int Id { get { return _id; } set { _id = value; } }
16 | public int APIKeyId { get { return _apiKeyId; } set { _apiKeyId = value; } }
17 | public int NZBId { get { return _nzbId; } set { _nzbId = value; } }
18 | public string IPAddress { get { return _ipAddress; } set { _ipAddress = value; } }
19 | }
20 | }
--------------------------------------------------------------------------------
/src/FastNZB/config/helpers.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @author: @AngularClass
3 | */
4 | var path = require('path');
5 |
6 | const EVENT = process.env.npm_lifecycle_event || '';
7 |
8 | /**
9 | * Helper functions.
10 | */
11 | var ROOT = path.resolve(__dirname, '..');
12 |
13 | function hasProcessFlag(flag) {
14 | return process.argv.join('').indexOf(flag) > -1;
15 | }
16 |
17 | function hasNpmFlag(flag) {
18 | return EVENT.includes(flag);
19 | }
20 |
21 | function isWebpackDevServer() {
22 | return process.argv[1] && !! (/webpack-dev-server/.exec(process.argv[1]));
23 | }
24 |
25 | var root = path.join.bind(path, ROOT);
26 |
27 | exports.hasProcessFlag = hasProcessFlag;
28 | exports.hasNpmFlag = hasNpmFlag;
29 | exports.isWebpackDevServer = isWebpackDevServer;
30 | exports.root = root;
31 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/home.e2e.ts:
--------------------------------------------------------------------------------
1 | import { browser, by, element } from 'protractor';
2 | import 'tslib';
3 |
4 | describe('App', () => {
5 |
6 | beforeEach(async () => {
7 | /**
8 | * Change hash depending on router LocationStrategy.
9 | */
10 | await browser.get('/#/home');
11 | });
12 |
13 | it('should have a title', async () => {
14 | let subject = await browser.getTitle();
15 | let result = 'Angular2 Webpack Starter by @gdi2290 from @AngularClass';
16 | expect(subject).toEqual(result);
17 | });
18 |
19 | it('should have `your content here` x-large', async () => {
20 | let subject = await element(by.css('[x-large]')).getText();
21 | let result = 'Your Content Here';
22 | expect(subject).toEqual(result);
23 | });
24 |
25 | });
26 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/UserModels.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using ServiceStack;
7 | using FastNZB.ServiceModel.Types;
8 |
9 | namespace FastNZB.ServiceModel
10 | {
11 | [Route("/api/users/passwordreset/{Id}")]
12 | [Route("/api/users/passwordreset")]
13 | public class PasswordResetRequest
14 | {
15 | public string Email { get; set; }
16 | public string Id { get; set; }
17 | public string NewPassword { get; set; }
18 | }
19 |
20 | public class PasswordResetResponse
21 | {
22 | public string Id { get; set; }
23 | public bool PasswordChanged { get; set; }
24 | public bool Valid { get; set; }
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/+detail/+child-detail/child-detail.module.ts:
--------------------------------------------------------------------------------
1 | import { CommonModule } from '@angular/common';
2 | import { FormsModule } from '@angular/forms';
3 | import { NgModule } from '@angular/core';
4 | import { RouterModule } from '@angular/router';
5 |
6 | import { routes } from './child-detail.routes';
7 | import { ChildDetailComponent } from './child-detail.component';
8 |
9 | console.log('`ChildDetail` bundle loaded asynchronously');
10 |
11 | @NgModule({
12 | declarations: [
13 | /**
14 | * Components / Directives/ Pipes
15 | */
16 | ChildDetailComponent,
17 | ],
18 | imports: [
19 | CommonModule,
20 | FormsModule,
21 | RouterModule.forChild(routes),
22 | ],
23 | })
24 | export class ChildDetailModule {
25 | public static routes = routes;
26 | }
27 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Types/Category.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack.DataAnnotations;
3 |
4 | namespace FastNZB.ServiceModel.Types
5 | {
6 | public class Category
7 | {
8 | private int _id = 0;
9 | private string _title = String.Empty;
10 | private int _parentId = 0;
11 |
12 | [PrimaryKey]
13 | [Alias("id")]
14 | public int Id { get { return _id; } set { _id = value; } }
15 | [Alias("title")]
16 | public string Title { get { return _title; } set { _title = value; } }
17 | [Alias("parentid")]
18 | public int ParentId { get { return _parentId; } set { _parentId = value; } }
19 |
20 | public bool IsParent() {
21 | return this.ParentId == 0;
22 | }
23 | }
24 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/app/release.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 | import { Http, Response } from '@angular/http';
3 | import { Observable } from 'rxjs';
4 |
5 | import { Release } from './release.component';
6 |
7 | //import 'rxjs/add/operator/toPromise';
8 |
9 | @Injectable()
10 | export class ReleaseService {
11 |
12 | constructor(private http: Http) {}
13 |
14 | search(term: string): Observable {
15 | return this.http
16 | .get(`/api/query/titles?NameContains=${term}&format=json&take=100`)
17 | .map((r: Response) => r.json() as Release[]);
18 | }
19 |
20 | private handleError(error: any): Promise {
21 | //console.error('An error occurred', error); // for demo purposes only
22 | return Promise.reject(error.message || error);
23 | }
24 |
25 | }
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/RSS/Item.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using FastNZB.ServiceModel.Types;
4 |
5 | namespace FastNZB.ServiceModel.Rss
6 | {
7 | public class Item
8 | {
9 | public Author Author { get; set; }
10 | public string Body { get; set; }
11 | public ICollection Categories { get; set; } = new List();
12 | public Uri Comments { get; set; }
13 | public Uri Link { get; set; }
14 | public string Permalink { get; set; }
15 | public DateTime PublishDate { get; set; }
16 | public string Title { get; set; }
17 | public string Description { get; set; }
18 | public string Category { get; set; }
19 | public string Length { get; set; }
20 | public string CategoryId { get; set; }
21 | public NZBResult Result { get; set; }
22 |
23 | }
24 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/assets/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "App",
3 | "icons": [
4 | {
5 | "src": "/assets/icon/android-icon-36x36.png",
6 | "sizes": "36x36",
7 | "type": "image/png"
8 | },
9 | {
10 | "src": "/assets/icon/android-icon-48x48.png",
11 | "sizes": "48x48",
12 | "type": "image/png"
13 | },
14 | {
15 | "src": "/assets/icon/android-icon-72x72.png",
16 | "sizes": "72x72",
17 | "type": "image/png"
18 | },
19 | {
20 | "src": "/assets/icon/android-icon-96x96.png",
21 | "sizes": "96x96",
22 | "type": "image/png"
23 | },
24 | {
25 | "src": "/assets/icon/android-icon-144x144.png",
26 | "sizes": "144x144",
27 | "type": "image/png"
28 | },
29 | {
30 | "src": "/assets/icon/android-icon-192x192.png",
31 | "sizes": "192x192",
32 | "type": "image/png"
33 | }
34 | ]
35 | }
36 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/assets/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "App",
3 | "icons": [
4 | {
5 | "src": "/assets/icon/android-icon-36x36.png",
6 | "sizes": "36x36",
7 | "type": "image/png"
8 | },
9 | {
10 | "src": "/assets/icon/android-icon-48x48.png",
11 | "sizes": "48x48",
12 | "type": "image/png"
13 | },
14 | {
15 | "src": "/assets/icon/android-icon-72x72.png",
16 | "sizes": "72x72",
17 | "type": "image/png"
18 | },
19 | {
20 | "src": "/assets/icon/android-icon-96x96.png",
21 | "sizes": "96x96",
22 | "type": "image/png"
23 | },
24 | {
25 | "src": "/assets/icon/android-icon-144x144.png",
26 | "sizes": "144x144",
27 | "type": "image/png"
28 | },
29 | {
30 | "src": "/assets/icon/android-icon-192x192.png",
31 | "sizes": "192x192",
32 | "type": "image/png"
33 | }
34 | ]
35 | }
36 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/home/x-large/x-large.directive.ts:
--------------------------------------------------------------------------------
1 | import {
2 | Component,
3 | Directive,
4 | ElementRef,
5 | Renderer
6 | } from '@angular/core';
7 | /**
8 | * Directive
9 | * XLarge is a simple directive to show how one is made
10 | */
11 | @Directive({
12 | selector: '[x-large]' // using [ ] means selecting attributes
13 | })
14 | export class XLargeDirective {
15 | constructor(
16 | public element: ElementRef,
17 | public renderer: Renderer
18 | ) {
19 | /**
20 | * Simple DOM manipulation to set font size to x-large
21 | * `nativeElement` is the direct reference to the DOM element
22 | * element.nativeElement.style.fontSize = 'x-large';
23 | *
24 | * for server/webworker support use the renderer
25 | */
26 | renderer.setElementStyle(element.nativeElement, 'fontSize', 'x-large');
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Types/APIKey.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack.DataAnnotations;
3 |
4 | namespace FastNZB.ServiceModel.Types
5 | {
6 | public class APIKey {
7 |
8 | private int _id = 0;
9 | private int _userId = 0;
10 | private int _requests = 0;
11 | private int _requestLimit = 0;
12 | private string _key = String.Empty;
13 |
14 | [AutoIncrementAttribute]
15 | [PrimaryKey]
16 | public int Id { get { return _id; } set { _id = value; } }
17 | public int UserId { get { return _userId; } set { _userId = value; } }
18 | public int Requests { get { return _requests; } set { _requests = value;} }
19 | public int RequestLimit { get { return _requestLimit; } set { _requestLimit = value; } }
20 | public string Key { get { return _key; } set { _key = value; } }
21 | }
22 | }
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Types/Vote.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack.DataAnnotations;
3 |
4 | namespace FastNZB.ServiceModel.Types
5 | {
6 | public class Vote
7 | {
8 | private int _id = 0;
9 | private int _nzbId = 0;
10 | private string _ipAddress = String.Empty;
11 | private int _value = 0;
12 | private int _userId = 0;
13 |
14 | [AutoIncrementAttribute]
15 | [PrimaryKey]
16 | public int Id { get { return _id; } set { _id = value; } }
17 |
18 | [References(typeof(NZB))]
19 | public int NZBId { get { return _nzbId; } set { _nzbId = value; } }
20 | public string IPAddress { get { return _ipAddress; } set { _ipAddress = value; } }
21 | public int Value { get { return _value; } set { _value = value; } }
22 | public int UserId { get { return _userId; } set { _userId = value; } }
23 | }
24 | }
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyConfiguration("")]
9 | [assembly: AssemblyCompany("")]
10 | [assembly: AssemblyProduct("RedisGeo.ServiceModel")]
11 | [assembly: AssemblyTrademark("")]
12 |
13 | // Setting ComVisible to false makes the types in this assembly not visible
14 | // to COM components. If you need to access a type in this assembly from
15 | // COM, set the ComVisible attribute to true on that type.
16 | [assembly: ComVisible(false)]
17 |
18 | // The following GUID is for the ID of the typelib if this project is exposed to COM
19 | [assembly: Guid("d6e47201-1cf1-48da-8b40-7418070ec783")]
20 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceInterface/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyConfiguration("")]
9 | [assembly: AssemblyCompany("")]
10 | [assembly: AssemblyProduct("RedisGeo.ServiceInterface")]
11 | [assembly: AssemblyTrademark("")]
12 |
13 | // Setting ComVisible to false makes the types in this assembly not visible
14 | // to COM components. If you need to access a type in this assembly from
15 | // COM, set the ComVisible attribute to true on that type.
16 | [assembly: ComVisible(false)]
17 |
18 | // The following GUID is for the ID of the typelib if this project is exposed to COM
19 | [assembly: Guid("e532e09d-d750-4a9f-b682-e7ba1508ea2c")]
20 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceInterface/FallbackServices.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.IO;
6 | using System.IO.Compression;
7 | using System.Data;
8 | using ServiceStack;
9 | using ServiceStack.OrmLite;
10 | using ServiceStack.Data;
11 | using ServiceStack.Configuration;
12 |
13 | using FastNZB.ServiceModel.Types;
14 |
15 | using FastNZB.ServiceModel;
16 |
17 | namespace FastNZB.ServiceInterface
18 | {
19 | [FallbackRoute("/{Path*}")]
20 | [Route("/index.html")]
21 | public class Fallback
22 | {
23 | public string Path { get; set; }
24 | }
25 |
26 | public class FallBackService : Service
27 | {
28 | public TextFileSettings Settings { get; set; }
29 | public object Any(Fallback request)
30 | {
31 | return new HttpResult(new FileInfo("wwwroot/index.html")) { ContentType = "text/html" };
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/src/FastNZB/src/vendor.browser.ts:
--------------------------------------------------------------------------------
1 | // For vendors for example jQuery, Lodash, angular2-jwt just import them here unless you plan on
2 | // chunking vendors files for async loading. You would need to import the async loaded vendors
3 | // at the entry point of the async loaded file. Also see custom-typings.d.ts as you also need to
4 | // run `typings install x` where `x` is your module
5 |
6 | // TODO(gdi2290): switch to DLLs
7 |
8 | // Angular 2
9 | import '@angular/platform-browser';
10 | import '@angular/platform-browser-dynamic';
11 | import '@angular/core';
12 | import '@angular/common';
13 | import '@angular/forms';
14 | import '@angular/http';
15 | import '@angular/router';
16 |
17 | // AngularClass
18 | import '@angularclass/hmr';
19 |
20 | // RxJS
21 | import 'rxjs/add/operator/map';
22 | import 'rxjs/add/operator/mergeMap';
23 |
24 | import 'jquery';
25 |
26 | if ('production' === ENV) {
27 | // Production
28 |
29 |
30 | } else {
31 | // Development
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/src/FastNZB/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Threading.Tasks;
6 | using Microsoft.AspNetCore.Hosting;
7 | using Microsoft.Extensions.Configuration;
8 |
9 | namespace FastNZB
10 | {
11 | public class Program
12 | {
13 | public static void Main(string[] args)
14 | {
15 | var config = new ConfigurationBuilder()
16 | .SetBasePath(Directory.GetCurrentDirectory())
17 | .AddEnvironmentVariables()
18 | .Build();
19 |
20 | var host = new WebHostBuilder()
21 | .UseConfiguration(config)
22 | .UseKestrel()
23 | .UseContentRoot(Directory.GetCurrentDirectory())
24 | .UseIISIntegration()
25 | .UseStartup()
26 | .Build();
27 |
28 | host.Run();
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/FastNZB.ServiceModel.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.0
5 | FastNZB.ServiceModel
6 | FastNZB.ServiceModel
7 | false
8 | false
9 | false
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | ..\lib\ServiceStack.Interfaces.dll
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/FastNZB/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "module": "commonjs",
5 | "moduleResolution": "node",
6 | "emitDecoratorMetadata": true,
7 | "experimentalDecorators": true,
8 | "allowSyntheticDefaultImports": true,
9 | "sourceMap": true,
10 | "noEmit": true,
11 | "noEmitHelpers": true,
12 | "importHelpers": true,
13 | "strictNullChecks": false,
14 | "lib": [
15 | "dom",
16 | "es6"
17 | ],
18 | "typeRoots": [
19 | "node_modules/@types"
20 | ],
21 | "types": [
22 | "hammerjs",
23 | "jasmine",
24 | "node",
25 | "source-map",
26 | "uglify-js",
27 | "webpack"
28 | ]
29 | },
30 | "exclude": [
31 | "node_modules",
32 | "dist"
33 | ],
34 | "awesomeTypescriptLoaderOptions": {
35 | "forkChecker": true,
36 | "useWebpackText": true
37 | },
38 | "compileOnSave": false,
39 | "buildOnSave": false,
40 | "atom": {
41 | "rewriteTsconfig": false
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/src/FastNZB/src/main.browser.aot.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * Angular bootstrapping
3 | */
4 | import { platformBrowser } from '@angular/platform-browser';
5 | import { decorateModuleRef } from './app/environment';
6 | /**
7 | * App Module
8 | * our top level module that holds all of our components.
9 | */
10 | import { AppModuleNgFactory } from '../compiled/src/app/app.module.ngfactory';
11 | /**
12 | * Bootstrap our Angular app with a top level NgModule.
13 | */
14 | export function main(): Promise {
15 | return platformBrowser()
16 | .bootstrapModuleFactory(AppModuleNgFactory)
17 | .then(decorateModuleRef)
18 | .catch((err) => console.error(err));
19 | }
20 |
21 | switch (document.readyState) {
22 | case 'loading':
23 | document.addEventListener('DOMContentLoaded', _domReadyHandler, false);
24 | break;
25 | case 'interactive':
26 | case 'complete':
27 | default:
28 | main();
29 | }
30 |
31 | function _domReadyHandler() {
32 | document.removeEventListener('DOMContentLoaded', _domReadyHandler, false);
33 | main();
34 | }
35 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/app.e2e.ts:
--------------------------------------------------------------------------------
1 | import { browser, by, element } from 'protractor';
2 | import 'tslib';
3 |
4 | describe('App', () => {
5 |
6 | beforeEach(async () => {
7 | await browser.get('/');
8 | });
9 |
10 | it('should have a title', async () => {
11 | let subject = await browser.getTitle();
12 | let result = 'Angular2 Webpack Starter by @gdi2290 from @AngularClass';
13 | expect(subject).toEqual(result);
14 | });
15 |
16 | it('should have header', async () => {
17 | let subject = await element(by.css('h1')).isPresent();
18 | let result = true;
19 | expect(subject).toEqual(result);
20 | });
21 |
22 | it('should have ', async () => {
23 | let subject = await element(by.css('app home')).isPresent();
24 | let result = true;
25 | expect(subject).toEqual(result);
26 | });
27 |
28 | it('should have buttons', async () => {
29 | let subject = await element(by.css('button')).getText();
30 | let result = 'Submit Value';
31 | expect(subject).toEqual(result);
32 | });
33 |
34 | });
35 |
--------------------------------------------------------------------------------
/src/FastNZB/wwwroot/2.ab3d001619a899ed5bb8.chunk.js:
--------------------------------------------------------------------------------
1 | webpackJsonp([2],{"02s1":function(o,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var e=t("JbPC");t.d(n,"ChildDetailModule",(function(){return e.a}))},JbPC:function(o,n,t){"use strict";t.d(n,"a",(function(){return d}));var e=t("TToO"),l=t("2Je8"),a=t("NVOs"),u=t("3j3K"),i=t("5oXY"),r=t("o5Qd"),c=t("Xb4m");console.log("`ChildDetail` bundle loaded asynchronously");var d=(function(){function o(){}return o.routes=r.a,o=e.a([u.NgModule({declarations:[c.a],imports:[l.CommonModule,a.a,i.RouterModule.forChild(r.a)]})],o)})()},Xb4m:function(o,n,t){"use strict";t.d(n,"a",(function(){return a}));var e=t("TToO"),l=t("3j3K");console.log("`ChildDetail` component loaded asynchronously");var a=(function(){function o(){}return o.prototype.ngOnInit=function(){console.log("hello `ChildDetail` component")},o=e.a([l.Component({selector:"child-detail",template:"\n Hello from Child Detail
\n "})],o)})()},o5Qd:function(o,n,t){"use strict";t.d(n,"a",(function(){return l}));var e=t("Xb4m"),l=[{path:"",component:e.a,pathMatch:"full"}]}});
--------------------------------------------------------------------------------
/src/FastNZB/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "module": "es2015",
5 | "moduleResolution": "node",
6 | "emitDecoratorMetadata": true,
7 | "experimentalDecorators": true,
8 | "allowSyntheticDefaultImports": true,
9 | "sourceMap": true,
10 | "noEmit": true,
11 | "noEmitHelpers": true,
12 | "importHelpers": true,
13 | "strictNullChecks": false,
14 | "lib": [
15 | "es2015",
16 | "dom"
17 | ],
18 | "typeRoots": [
19 | "node_modules/@types"
20 | ],
21 | "types": [
22 | "hammerjs",
23 | "node"
24 | ]
25 | },
26 | "exclude": [
27 | "node_modules",
28 | "dist",
29 | "src/**/*.spec.ts",
30 | "src/**/*.e2e.ts"
31 | ],
32 | "awesomeTypescriptLoaderOptions": {
33 | "forkChecker": true,
34 | "useWebpackText": true
35 | },
36 | "angularCompilerOptions": {
37 | "genDir": "./compiled",
38 | "skipMetadataEmit": true
39 | },
40 | "compileOnSave": false,
41 | "buildOnSave": false,
42 | "atom": {
43 | "rewriteTsconfig": false
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/FastNZB/src/main.browser.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * Angular bootstrapping
3 | */
4 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
5 | import { decorateModuleRef } from './app/environment';
6 |
7 | /**
8 | * App Module
9 | * our top level module that holds all of our components
10 | */
11 | import { AppModule } from './app';
12 |
13 | /**
14 | * Bootstrap our Angular app with a top level NgModule
15 | */
16 | export function main(): Promise {
17 | return platformBrowserDynamic()
18 | .bootstrapModule(AppModule)
19 | .then(decorateModuleRef)
20 | .catch((err) => console.error(err));
21 | }
22 |
23 | /**
24 | * Needed for hmr
25 | * in prod this is replace for document ready
26 | */
27 | switch (document.readyState) {
28 | case 'loading':
29 | document.addEventListener('DOMContentLoaded', _domReadyHandler, false);
30 | break;
31 | case 'interactive':
32 | case 'complete':
33 | default:
34 | main();
35 | }
36 |
37 | function _domReadyHandler() {
38 | document.removeEventListener('DOMContentLoaded', _domReadyHandler, false);
39 | main();
40 | }
41 |
--------------------------------------------------------------------------------
/src/FastNZB/web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/app.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 |
3 | export type InternalStateType = {
4 | [key: string]: any
5 | };
6 |
7 | @Injectable()
8 | export class AppState {
9 |
10 | public _state: InternalStateType = { };
11 |
12 | /**
13 | * Already return a clone of the current state.
14 | */
15 | public get state() {
16 | return this._state = this._clone(this._state);
17 | }
18 | /**
19 | * Never allow mutation
20 | */
21 | public set state(value) {
22 | throw new Error('do not mutate the `.state` directly');
23 | }
24 |
25 | public get(prop?: any) {
26 | /**
27 | * Use our state getter for the clone.
28 | */
29 | const state = this.state;
30 | return state.hasOwnProperty(prop) ? state[prop] : state;
31 | }
32 |
33 | public set(prop: string, value: any) {
34 | /**
35 | * Internally mutate our state.
36 | */
37 | return this._state[prop] = value;
38 | }
39 |
40 | private _clone(object: InternalStateType) {
41 | /**
42 | * Simple object clone.
43 | */
44 | return JSON.parse(JSON.stringify( object ));
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/src/FastNZB/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015-2016 AngularClass LLC
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceInterface/SessionServices.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack;
3 | using ServiceStack.Auth;
4 | using FastNZB.ServiceModel;
5 | using FastNZB.ServiceModel.Types;
6 | using System.Data;
7 | using ServiceStack.Data;
8 | using ServiceStack.OrmLite;
9 | using ServiceStack.Configuration;
10 |
11 | namespace FastNZB.ServiceInterface
12 | {
13 | [Authenticate]
14 | [ConnectionInfo(NamedConnection="ReadOnly")]
15 | public class SessionInfoServices : Service
16 | {
17 | public object Any(SessionInfo request)
18 | {
19 | var result = SessionAs();
20 | var userId = int.Parse(result.UserAuthId);
21 |
22 | if (String.IsNullOrEmpty(result.APIKey)) {
23 | var apiKey = Db.Single(q=> q.UserId == userId);
24 | result.APIKey = apiKey != null ? apiKey.Key : "";
25 | Request.SaveSession(result);
26 | }
27 |
28 | result.APIRequests = Db.Count(q=>q.UserId == userId && q.Date > DateTime.Now.AddDays(-1));
29 |
30 | return result;
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/FastNZB/src/app/search/search.component.spec.ts:
--------------------------------------------------------------------------------
1 | import { ActivatedRoute, Data } from '@angular/router';
2 | import { Component } from '@angular/core';
3 | import { inject, TestBed } from '@angular/core/testing';
4 |
5 | /**
6 | * Load the implementations that should be tested.
7 | */
8 | import { AboutComponent } from './about.component';
9 |
10 | describe('About', () => {
11 | /**
12 | * Provide our implementations or mocks to the dependency injector
13 | */
14 | beforeEach(() => TestBed.configureTestingModule({
15 | providers: [
16 | /**
17 | * Provide a better mock.
18 | */
19 | {
20 | provide: ActivatedRoute,
21 | useValue: {
22 | data: {
23 | subscribe: (fn: (value: Data) => void) => fn({
24 | yourData: 'yolo'
25 | })
26 | }
27 | }
28 | },
29 | AboutComponent
30 | ]
31 | }));
32 |
33 | it('should log ngOnInit', inject([AboutComponent], (about: AboutComponent) => {
34 | spyOn(console, 'log');
35 | expect(console.log).not.toHaveBeenCalled();
36 |
37 | about.ngOnInit();
38 | expect(console.log).toHaveBeenCalled();
39 | }));
40 |
41 | });
42 |
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/Types/Title.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using ServiceStack.DataAnnotations;
3 | namespace FastNZB.ServiceModel.Types
4 | {
5 | public class Title
6 | {
7 | private int _id = 0;
8 | private string _name = String.Empty;
9 | private int _imdbId = 0;
10 | private int _tvEpisodeId = 0;
11 | private int _videoId = 0;
12 | private string _name1 = String.Empty;
13 | private string _name2 = String.Empty;
14 |
15 | [AutoIncrementAttribute]
16 | [PrimaryKey]
17 | public int Id { get { return _id; } set { _id = value; } }
18 | public string Name { get { return _name; } set { _name = value; } }
19 | [Index]
20 | public int ImdbId { get { return _imdbId; } set { _imdbId = value; } }
21 | [Index]
22 | public int TVEpisodeId { get { return _tvEpisodeId; } set { _tvEpisodeId = value; } }
23 | [Index]
24 | public int VideoId { get { return _videoId; } set { _videoId = value; } }
25 | public string Name1 { get { return _name1; } set { _name1 = value; } }
26 | public string Name2 { get { return _name2; } set { _name2 = value; } }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/FastNZB.ServiceModel/FindNZBModels.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using ServiceStack;
3 | using FastNZB.ServiceModel.Types;
4 | namespace FastNZB.ServiceModel
5 | {
6 | [Route("/api/search/{text}")]
7 | public class FindNZB : IReturn