@internetarchive/field-parsers
Advanced tools
Comparing version 0.1.0 to 0.1.1-alpha.1
@@ -5,6 +5,6 @@ export { BooleanParser } from './src/field-types/boolean'; | ||
export { DurationParser } from './src/field-types/duration'; | ||
export { MediaType, MediaTypeParser } from './src/field-types/mediatype'; | ||
export { MediaTypeParser } from './src/field-types/mediatype'; | ||
export { NumberParser } from './src/field-types/number'; | ||
export { PageProgression, PageProgressionParser, } from './src/field-types/page-progression'; | ||
export { PageProgressionParser, } from './src/field-types/page-progression'; | ||
export { StringParser } from './src/field-types/string'; | ||
//# sourceMappingURL=index.js.map |
import { FieldParserInterface, FieldParserRawValue } from '../field-parser-interface'; | ||
export declare enum MediaType { | ||
Audio = "audio", | ||
Collection = "collection", | ||
Data = "data", | ||
Etree = "etree", | ||
Image = "image", | ||
Movies = "movies", | ||
Software = "software", | ||
Texts = "texts", | ||
Web = "web" | ||
} | ||
export declare type MediaType = 'account' | 'audio' | 'collection' | 'data' | 'etree' | 'image' | 'movies' | 'software' | 'texts' | 'web'; | ||
export declare class MediaTypeParser implements FieldParserInterface<MediaType> { | ||
@@ -14,0 +4,0 @@ static shared: MediaTypeParser; |
@@ -1,13 +0,1 @@ | ||
export var MediaType; | ||
(function (MediaType) { | ||
MediaType["Audio"] = "audio"; | ||
MediaType["Collection"] = "collection"; | ||
MediaType["Data"] = "data"; | ||
MediaType["Etree"] = "etree"; | ||
MediaType["Image"] = "image"; | ||
MediaType["Movies"] = "movies"; | ||
MediaType["Software"] = "software"; | ||
MediaType["Texts"] = "texts"; | ||
MediaType["Web"] = "web"; | ||
})(MediaType || (MediaType = {})); | ||
export class MediaTypeParser { | ||
@@ -18,25 +6,3 @@ /** @inheritdoc */ | ||
return undefined; | ||
const lowercased = rawValue.toLowerCase(); | ||
switch (lowercased) { | ||
case 'audio': | ||
return MediaType.Audio; | ||
case 'collection': | ||
return MediaType.Collection; | ||
case 'data': | ||
return MediaType.Data; | ||
case 'etree': | ||
return MediaType.Etree; | ||
case 'image': | ||
return MediaType.Image; | ||
case 'movies': | ||
return MediaType.Movies; | ||
case 'software': | ||
return MediaType.Software; | ||
case 'texts': | ||
return MediaType.Texts; | ||
case 'web': | ||
return MediaType.Web; | ||
default: | ||
return undefined; | ||
} | ||
return rawValue; | ||
} | ||
@@ -43,0 +9,0 @@ } |
import { FieldParserInterface, FieldParserRawValue } from '../field-parser-interface'; | ||
export declare enum PageProgression { | ||
RightToLeft = "rl", | ||
LeftToRight = "lr" | ||
} | ||
export declare type PageProgression = 'rl' | 'lr'; | ||
export declare class PageProgressionParser implements FieldParserInterface<PageProgression> { | ||
@@ -7,0 +4,0 @@ static shared: PageProgressionParser; |
@@ -1,6 +0,1 @@ | ||
export var PageProgression; | ||
(function (PageProgression) { | ||
PageProgression["RightToLeft"] = "rl"; | ||
PageProgression["LeftToRight"] = "lr"; | ||
})(PageProgression || (PageProgression = {})); | ||
export class PageProgressionParser { | ||
@@ -11,11 +6,3 @@ /** @inheritdoc */ | ||
return undefined; | ||
const lowercased = rawValue.toLowerCase(); | ||
switch (lowercased) { | ||
case 'rl': | ||
return PageProgression.RightToLeft; | ||
case 'lr': | ||
return PageProgression.LeftToRight; | ||
default: | ||
return undefined; | ||
} | ||
return rawValue; | ||
} | ||
@@ -22,0 +9,0 @@ } |
import { expect } from '@open-wc/testing'; | ||
import { MediaType, MediaTypeParser } from '../../src/field-types/mediatype'; | ||
import { MediaTypeParser } from '../../src/field-types/mediatype'; | ||
describe('MediaTypeParser', () => { | ||
it('can parse mediatypes', async () => { | ||
const parser = new MediaTypeParser(); | ||
expect(parser.parseValue('audio')).to.equal(MediaType.Audio); | ||
expect(parser.parseValue('collection')).to.equal(MediaType.Collection); | ||
expect(parser.parseValue('data')).to.equal(MediaType.Data); | ||
expect(parser.parseValue('etree')).to.equal(MediaType.Etree); | ||
expect(parser.parseValue('image')).to.equal(MediaType.Image); | ||
expect(parser.parseValue('movies')).to.equal(MediaType.Movies); | ||
expect(parser.parseValue('software')).to.equal(MediaType.Software); | ||
expect(parser.parseValue('texts')).to.equal(MediaType.Texts); | ||
expect(parser.parseValue('web')).to.equal(MediaType.Web); | ||
expect(parser.parseValue('account')).to.equal('account'); | ||
expect(parser.parseValue('audio')).to.equal('audio'); | ||
expect(parser.parseValue('collection')).to.equal('collection'); | ||
expect(parser.parseValue('data')).to.equal('data'); | ||
expect(parser.parseValue('etree')).to.equal('etree'); | ||
expect(parser.parseValue('image')).to.equal('image'); | ||
expect(parser.parseValue('movies')).to.equal('movies'); | ||
expect(parser.parseValue('software')).to.equal('software'); | ||
expect(parser.parseValue('texts')).to.equal('texts'); | ||
expect(parser.parseValue('web')).to.equal('web'); | ||
}); | ||
@@ -16,0 +17,0 @@ it('returns undefined for number values', async () => { |
import { expect } from '@open-wc/testing'; | ||
import { PageProgression, PageProgressionParser, } from '../../src/field-types/page-progression'; | ||
import { PageProgressionParser } from '../../src/field-types/page-progression'; | ||
describe('PageProgressionParser', () => { | ||
it('can parse page progression', async () => { | ||
const parser = new PageProgressionParser(); | ||
expect(parser.parseValue('rl')).to.equal(PageProgression.RightToLeft); | ||
expect(parser.parseValue('lr')).to.equal(PageProgression.LeftToRight); | ||
expect(parser.parseValue('rl')).to.equal('rl'); | ||
expect(parser.parseValue('lr')).to.equal('lr'); | ||
}); | ||
it('returns undefined for incorrect values', async () => { | ||
const parser = new PageProgressionParser(); | ||
expect(parser.parseValue('boop')).to.be.undefined; | ||
}); | ||
it('returns undefined for number values', async () => { | ||
@@ -14,0 +10,0 @@ const parser = new PageProgressionParser(); |
{ | ||
"version": "0.1.0", | ||
"version": "0.1.1-alpha.1", | ||
"name": "@internetarchive/field-parsers", | ||
@@ -4,0 +4,0 @@ "description": "Field parsers for Internet Archive metadata fields.", |
@@ -6,13 +6,13 @@ import { | ||
export enum MediaType { | ||
Audio = 'audio', | ||
Collection = 'collection', | ||
Data = 'data', | ||
Etree = 'etree', | ||
Image = 'image', | ||
Movies = 'movies', | ||
Software = 'software', | ||
Texts = 'texts', | ||
Web = 'web', | ||
} | ||
export type MediaType = | ||
| 'account' | ||
| 'audio' | ||
| 'collection' | ||
| 'data' | ||
| 'etree' | ||
| 'image' | ||
| 'movies' | ||
| 'software' | ||
| 'texts' | ||
| 'web'; | ||
@@ -27,27 +27,4 @@ export class MediaTypeParser implements FieldParserInterface<MediaType> { | ||
if (typeof rawValue !== 'string') return undefined; | ||
const lowercased = rawValue.toLowerCase(); | ||
switch (lowercased) { | ||
case 'audio': | ||
return MediaType.Audio; | ||
case 'collection': | ||
return MediaType.Collection; | ||
case 'data': | ||
return MediaType.Data; | ||
case 'etree': | ||
return MediaType.Etree; | ||
case 'image': | ||
return MediaType.Image; | ||
case 'movies': | ||
return MediaType.Movies; | ||
case 'software': | ||
return MediaType.Software; | ||
case 'texts': | ||
return MediaType.Texts; | ||
case 'web': | ||
return MediaType.Web; | ||
default: | ||
return undefined; | ||
} | ||
return rawValue as MediaType; | ||
} | ||
} |
@@ -6,6 +6,3 @@ import { | ||
export enum PageProgression { | ||
RightToLeft = 'rl', | ||
LeftToRight = 'lr', | ||
} | ||
export type PageProgression = 'rl' | 'lr'; | ||
@@ -21,13 +18,4 @@ export class PageProgressionParser | ||
if (typeof rawValue !== 'string') return undefined; | ||
const lowercased = rawValue.toLowerCase(); | ||
switch (lowercased) { | ||
case 'rl': | ||
return PageProgression.RightToLeft; | ||
case 'lr': | ||
return PageProgression.LeftToRight; | ||
default: | ||
return undefined; | ||
} | ||
return rawValue as PageProgression; | ||
} | ||
} |
import { expect } from '@open-wc/testing'; | ||
import { MediaType, MediaTypeParser } from '../../src/field-types/mediatype'; | ||
import { MediaTypeParser } from '../../src/field-types/mediatype'; | ||
@@ -7,11 +7,12 @@ describe('MediaTypeParser', () => { | ||
const parser = new MediaTypeParser(); | ||
expect(parser.parseValue('audio')).to.equal(MediaType.Audio); | ||
expect(parser.parseValue('collection')).to.equal(MediaType.Collection); | ||
expect(parser.parseValue('data')).to.equal(MediaType.Data); | ||
expect(parser.parseValue('etree')).to.equal(MediaType.Etree); | ||
expect(parser.parseValue('image')).to.equal(MediaType.Image); | ||
expect(parser.parseValue('movies')).to.equal(MediaType.Movies); | ||
expect(parser.parseValue('software')).to.equal(MediaType.Software); | ||
expect(parser.parseValue('texts')).to.equal(MediaType.Texts); | ||
expect(parser.parseValue('web')).to.equal(MediaType.Web); | ||
expect(parser.parseValue('account')).to.equal('account'); | ||
expect(parser.parseValue('audio')).to.equal('audio'); | ||
expect(parser.parseValue('collection')).to.equal('collection'); | ||
expect(parser.parseValue('data')).to.equal('data'); | ||
expect(parser.parseValue('etree')).to.equal('etree'); | ||
expect(parser.parseValue('image')).to.equal('image'); | ||
expect(parser.parseValue('movies')).to.equal('movies'); | ||
expect(parser.parseValue('software')).to.equal('software'); | ||
expect(parser.parseValue('texts')).to.equal('texts'); | ||
expect(parser.parseValue('web')).to.equal('web'); | ||
}); | ||
@@ -18,0 +19,0 @@ |
import { expect } from '@open-wc/testing'; | ||
import { | ||
PageProgression, | ||
PageProgressionParser, | ||
} from '../../src/field-types/page-progression'; | ||
import { PageProgressionParser } from '../../src/field-types/page-progression'; | ||
@@ -10,11 +7,6 @@ describe('PageProgressionParser', () => { | ||
const parser = new PageProgressionParser(); | ||
expect(parser.parseValue('rl')).to.equal(PageProgression.RightToLeft); | ||
expect(parser.parseValue('lr')).to.equal(PageProgression.LeftToRight); | ||
expect(parser.parseValue('rl')).to.equal('rl'); | ||
expect(parser.parseValue('lr')).to.equal('lr'); | ||
}); | ||
it('returns undefined for incorrect values', async () => { | ||
const parser = new PageProgressionParser(); | ||
expect(parser.parseValue('boop')).to.be.undefined; | ||
}); | ||
it('returns undefined for number values', async () => { | ||
@@ -21,0 +13,0 @@ const parser = new PageProgressionParser(); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
131809
1256