Skip to content

Commit

Permalink
fix: 🐛 Fixes TS config + lint etc
Browse files Browse the repository at this point in the history
  • Loading branch information
viktorlarsson committed Nov 12, 2021
1 parent e2e1ff8 commit 4663269
Show file tree
Hide file tree
Showing 18 changed files with 77 additions and 77 deletions.
23 changes: 23 additions & 0 deletions libs/api-hjarntorget/.eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"extends": ["plugin:@nrwl/nx/react", "../../.eslintrc.json"],
"ignorePatterns": ["!**/*", "public", ".cache", "node_modules"],
"overrides": [
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
"rules": {}
},
{
"files": ["*.ts", "*.tsx"],
"rules": {
"@typescript-eslint/ban-ts-comment": "off"
}
},
{
"files": ["*.js", "*.jsx"],
"rules": {
"@typescript-eslint/no-var-requires": "off"
}
}
]
}

19 changes: 0 additions & 19 deletions libs/api-hjarntorget/.eslintrc.js

This file was deleted.

8 changes: 3 additions & 5 deletions libs/api-hjarntorget/lib/apiHjarntorget.test.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
import init from './'
import { ApiHjarntorget } from './apiHjarntorget'
import { Fetcher } from '../../api/lib/fetcher'
import { checkStatus } from './loginStatus'

import { wrapToughCookie } from '../../api/lib/cookies'
import { wrapToughCookie } from '@skolplattformen/api'
import { CookieJar } from 'tough-cookie'

const setupSuccessfullLoginInitiation = (fetcherMock: jest.Mock) => {
Expand Down Expand Up @@ -83,7 +80,7 @@ describe('api', () => {
fetcherMock = fetcher as jest.Mock

const cookieManager = wrapToughCookie(new CookieJar())
cookieManager.clearAll
cookieManager.clearAll();
api = new ApiHjarntorget(jest.fn(), cookieManager)
api.replaceFetcher(fetcher)
})
Expand Down Expand Up @@ -210,6 +207,7 @@ describe('api', () => {
expect(api.isLoggedIn).toBe(false)
})
it('forgets personalNumber', async () => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
(api as any).personalNumber = 'my personal number'
api.isLoggedIn = true

Expand Down
19 changes: 9 additions & 10 deletions libs/api-hjarntorget/lib/apiHjarntorget.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
import { DateTime, FixedOffsetZone } from 'luxon'
import { EventEmitter } from 'events'
import * as html from 'node-html-parser'
import { decode } from 'he'
import wrap, { Fetcher, FetcherOptions } from '../../api/lib/fetcher'
import {
CalendarItem,
import { toMarkdown, Api, URLSearchParams, LoginStatusChecker, CalendarItem,
Classmate,
CookieManager,
EtjanstChild,
Expand All @@ -15,12 +14,11 @@ import {
ScheduleItem,
Skola24Child,
TimetableEntry,
User
} from "../../api/lib/types"
import { LoginStatusChecker } from '../../api/lib/loginStatus'
import { URLSearchParams } from '../../api/lib/URLSearchParams'
import { Api } from '../../api/lib/api'
import { toMarkdown } from '../../api/lib/parseHtml'
User,
Fetcher,
FetcherOptions,
wrap
} from '@skolplattformen/api'
import { checkStatus } from './loginStatus'
import { extractMvghostRequestBody, parseCalendarItem } from './parse/parsers'
import {
Expand Down Expand Up @@ -91,7 +89,8 @@ export class ApiHjarntorget extends EventEmitter implements Api {
options?: FetcherOptions
) {
super()
this.realFetcher = this.fetch = wrap(fetch, options)
this.fetch = wrap(fetch, options);
this.realFetcher = this.fetch;
this.cookieManager = cookieManager
}

Expand Down
23 changes: 7 additions & 16 deletions libs/api-hjarntorget/lib/index.ts
Original file line number Diff line number Diff line change
@@ -1,28 +1,19 @@
import { Api } from '../../api/lib/api'
import { FetcherOptions } from '../../api/lib/fetcher'
import { Fetch } from '../../api/lib/types'
import {
RNCookieManager,
import { ApiHjarntorget } from './apiHjarntorget'
import { Api, FetcherOptions, Fetch, RNCookieManager,
ToughCookieJar,
wrapReactNativeCookieManager,
wrapToughCookie,
} from '../../api/lib/cookies'
import { ApiHjarntorget } from './apiHjarntorget'

export { Api, FetcherOptions }
export * from '../../api/lib/types'
export { LoginStatusChecker } from '../../api/lib/loginStatus'
wrapToughCookie } from '@skolplattformen/api'

const init = (
fetch: Fetch,
cookieManagerImpl: RNCookieManager | ToughCookieJar,
fetchImpl: Fetch,
cookieManagerImpl: any,
options?: FetcherOptions
): Api => {
// prettier-ignore
const cookieManager = ((cookieManagerImpl as RNCookieManager).get)
? wrapReactNativeCookieManager(cookieManagerImpl as RNCookieManager)
: wrapToughCookie(cookieManagerImpl as ToughCookieJar)
return new ApiHjarntorget(fetch, cookieManager, options)
return new ApiHjarntorget(fetchImpl, cookieManager, options)
}

export default init
export default init
3 changes: 1 addition & 2 deletions libs/api-hjarntorget/lib/loginStatus.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { EventEmitter } from 'events'
import { Fetcher } from '../../api/lib/fetcher'
import { LoginStatusChecker } from '../../api/lib/loginStatus'
import { LoginStatusChecker, Fetcher} from '@skolplattformen/api'
import {
extractAuthGbgLoginRequestBody,
extractHjarntorgetSAMLLogin
Expand Down
3 changes: 1 addition & 2 deletions libs/api-hjarntorget/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
"exclude": [
"node_modules",
"**/__tests__/*",
"**/__mocks__/*",
"**/*.test.ts"
"**/__mocks__/*"
]
}
File renamed without changes.
3 changes: 2 additions & 1 deletion libs/api-skolplattformen/lib/api.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import init from './'
import { ApiSkolplattformen } from './api'
import { Fetch, Headers, Response } from '../../api/lib/types'
import { Fetch, Headers, Response } from '@skolplattformen/api'
import CookieManager from '@react-native-cookies/cookies'

describe('api', () => {
Expand Down Expand Up @@ -110,6 +110,7 @@ describe('api', () => {
const personalNumber = 'my personal number'
try {
await api.login(personalNumber)
// eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (error: any) {
expect(error.message).toEqual(expect.stringContaining('Server Error'))
}
Expand Down
9 changes: 5 additions & 4 deletions libs/api-skolplattformen/lib/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { EventEmitter } from 'events'
import { decode } from 'he'
import { DateTime } from 'luxon'
import * as html from 'node-html-parser'
import { LoginStatusChecker } from '../../api/lib/loginStatus'
import { LoginStatusChecker, FetcherOptions, Fetcher, wrap } from '@skolplattformen/api'
import {
AuthTicket,
CalendarItem,
Expand All @@ -20,13 +20,12 @@ import {
TimetableEntry,
User,
Response
} from '../../api/lib/types'
} from '@skolplattformen/api'
import * as routes from './routes'
import * as parse from './parse/index'
import wrap, { Fetcher, FetcherOptions } from '../../api/lib/fetcher'
import * as fake from './fakeData'
import { checkStatus } from './loginStatusChecker'
import { Api } from '../../api/lib/api'
import { Api } from '@skolplattformen/api'
import { Language } from '@skolplattformen/curriculum'

const fakeResponse = <T>(data: T): Promise<T> =>
Expand Down Expand Up @@ -55,6 +54,7 @@ export class ApiSkolplattformen extends EventEmitter implements Api {

private personalNumber?: string

// eslint-disable-next-line @typescript-eslint/no-explicit-any
private headers: any

private cookieManager: CookieManager
Expand Down Expand Up @@ -199,6 +199,7 @@ export class ApiSkolplattformen extends EventEmitter implements Api {
this.emit('login')
}, 50)

// eslint-disable-next-line @typescript-eslint/no-explicit-any
const emitter: any = new EventEmitter()
emitter.token = 'fake'
return emitter
Expand Down
2 changes: 1 addition & 1 deletion libs/api-skolplattformen/lib/fakeData.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import {
Skola24Child,
TimetableEntry,
User,
} from '../../api/lib/types'
} from '@skolplattformen/api';

const data: any = {
'39b59e-bf4b9f-f68ac25321-977218-bf0': {
Expand Down
12 changes: 2 additions & 10 deletions libs/api-skolplattformen/lib/index.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,8 @@
import { ApiSkolplattformen } from './api'
import { Api } from '../../api/lib/api'
import { FetcherOptions } from '../../api/lib/fetcher'
import { Fetch } from '../../api/lib/types'
import {
RNCookieManager,
import { Api, FetcherOptions, Fetch, RNCookieManager,
ToughCookieJar,
wrapReactNativeCookieManager,
wrapToughCookie,
} from '../../api/lib/cookies'

export * from '../../api/lib/types'
export { LoginStatusChecker } from '../../api/lib/loginStatus'
wrapToughCookie } from '@skolplattformen/api'

const init = (
fetchImpl: Fetch,
Expand Down
3 changes: 1 addition & 2 deletions libs/api-skolplattformen/lib/loginStatus.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { EventEmitter } from 'events'
import { loginStatus } from './routes'
import { Fetcher } from '../../api/lib/fetcher'
import { AuthTicket } from '../..//api/lib/types'
import { Fetcher, AuthTicket } from '@skolplattformen/api'

/*
export enum LoginEvent {
Expand Down
6 changes: 2 additions & 4 deletions libs/api-skolplattformen/lib/loginStatusChecker.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
import { EventEmitter } from 'events';
import { loginStatus } from './routes';
import { AuthTicket } from '../../api/lib/types';
import { Fetcher } from '../../api/lib/fetcher';
import { LoginStatusChecker } from '.';
import { AuthTicket, Fetcher, LoginStatusChecker } from '@skolplattformen/api';

export class Checker extends EventEmitter {
public token: string;
Expand All @@ -11,7 +9,7 @@ export class Checker extends EventEmitter {

private url: string;

private cancelled: boolean = false;
private cancelled = false;

constructor(fetcher: Fetcher, ticket: AuthTicket) {
super();
Expand Down
1 change: 0 additions & 1 deletion libs/api-skolplattformen/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,5 @@
"node_modules",
"**/__tests__/*",
"**/__mocks__/*",
"**/*.test.ts"
]
}
16 changes: 16 additions & 0 deletions libs/api/lib/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import wrap from './fetcher'

export { toMarkdown } from './parseHtml'
export * from './types'
export { LoginStatusChecker } from './loginStatus'
export { Api } from './api'
export { FetcherOptions, Fetcher } from './fetcher'
export {
RNCookieManager,
ToughCookieJar,
wrapReactNativeCookieManager,
wrapToughCookie,
} from './cookies'
export { URLSearchParams } from './URLSearchParams'

export { wrap };
1 change: 1 addition & 0 deletions libs/api/lib/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ export interface CookieManager {
setCookieString: (cookieString: string, url: string) => Promise<void>
getCookieString: (url: string) => Promise<string>
clearAll: () => Promise<void>
removeAllCookies?: () => Promise<void>
}

export interface RequestInit {
Expand Down
3 changes: 3 additions & 0 deletions tsconfig.base.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
"skipDefaultLibCheck": true,
"baseUrl": ".",
"paths": {
"@skolplattformen/api": [
"libs/api/lib/index.ts"
],
"@skolplattformen/api-skolplattformen": [
"libs/api-skolplattformen/lib/index.ts"
],
Expand Down

0 comments on commit 4663269

Please sign in to comment.