Skip to content

Commit a3a7679

Browse files
authored
perf: use const instead of enums to min bundle size (#192)
1 parent 7acb112 commit a3a7679

File tree

7 files changed

+63
-46
lines changed

7 files changed

+63
-46
lines changed

projects/ngx-meta/e2e/a15/src/app/meta-set-by-route-and-service/meta-set-by-route-and-service.component.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ import { Component, OnInit } from '@angular/core'
22
import { MetadataService, MetadataValues } from '@davidlj95/ngx-meta/core'
33
import { ActivatedRoute } from '@angular/router'
44
import {
5+
OPEN_GRAPH_TYPE_BOOK,
56
OpenGraphMetadata,
6-
OpenGraphType,
77
} from '@davidlj95/ngx-meta/open-graph'
88
import {
9+
TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE,
910
TwitterCardMetadata,
10-
TwitterCardType,
1111
} from '@davidlj95/ngx-meta/twitter-card'
1212
import {
13-
OpenGraphProfileGender,
13+
OPEN_GRAPH_PROFILE_GENDER_FEMALE,
1414
OpenGraphProfileMetadata,
1515
} from '@davidlj95/ngx-meta/open-graph-profile'
1616

@@ -24,15 +24,15 @@ export class MetaSetByRouteAndServiceComponent implements OnInit {
2424
OpenGraphProfileMetadata &
2525
TwitterCardMetadata = {
2626
openGraph: {
27-
type: OpenGraphType.Book,
27+
type: OPEN_GRAPH_TYPE_BOOK,
2828
profile: {
29-
gender: OpenGraphProfileGender.Female,
29+
gender: OPEN_GRAPH_PROFILE_GENDER_FEMALE,
3030
},
3131
},
3232
twitterCard: {
33-
card: TwitterCardType.SummaryLargeImage,
33+
card: TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE,
3434
},
35-
}
35+
} as const
3636

3737
constructor(
3838
activatedRoute: ActivatedRoute,

projects/ngx-meta/e2e/a16/src/app/meta-set-by-route-and-service/meta-set-by-route-and-service.component.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ import { Component, OnInit } from '@angular/core'
22
import { MetadataService, MetadataValues } from '@davidlj95/ngx-meta/core'
33
import { ActivatedRoute } from '@angular/router'
44
import {
5+
OPEN_GRAPH_TYPE_BOOK,
56
OpenGraphMetadata,
6-
OpenGraphType,
77
} from '@davidlj95/ngx-meta/open-graph'
88
import {
9+
TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE,
910
TwitterCardMetadata,
10-
TwitterCardType,
1111
} from '@davidlj95/ngx-meta/twitter-card'
1212
import {
13-
OpenGraphProfileGender,
13+
OPEN_GRAPH_PROFILE_GENDER_FEMALE,
1414
OpenGraphProfileMetadata,
1515
} from '@davidlj95/ngx-meta/open-graph-profile'
1616

@@ -24,15 +24,15 @@ export class MetaSetByRouteAndServiceComponent implements OnInit {
2424
OpenGraphProfileMetadata &
2525
TwitterCardMetadata = {
2626
openGraph: {
27-
type: OpenGraphType.Book,
27+
type: OPEN_GRAPH_TYPE_BOOK,
2828
profile: {
29-
gender: OpenGraphProfileGender.Female,
29+
gender: OPEN_GRAPH_PROFILE_GENDER_FEMALE,
3030
},
3131
},
3232
twitterCard: {
33-
card: TwitterCardType.SummaryLargeImage,
33+
card: TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE,
3434
},
35-
}
35+
} as const
3636

3737
constructor(
3838
activatedRoute: ActivatedRoute,

projects/ngx-meta/e2e/a17/src/app/meta-set-by-route-and-service/meta-set-by-route-and-service.component.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ import { MetadataService, MetadataValues } from '@davidlj95/ngx-meta/core'
33
import { JsonPipe } from '@angular/common'
44
import { ActivatedRoute } from '@angular/router'
55
import {
6+
OPEN_GRAPH_TYPE_BOOK,
67
OpenGraphMetadata,
7-
OpenGraphType,
88
} from '@davidlj95/ngx-meta/open-graph'
99
import {
10+
TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE,
1011
TwitterCardMetadata,
11-
TwitterCardType,
1212
} from '@davidlj95/ngx-meta/twitter-card'
1313
import {
14-
OpenGraphProfileGender,
14+
OPEN_GRAPH_PROFILE_GENDER_FEMALE,
1515
OpenGraphProfileMetadata,
1616
} from '@davidlj95/ngx-meta/open-graph-profile'
1717

@@ -27,15 +27,15 @@ export class MetaSetByRouteAndServiceComponent implements OnInit {
2727
OpenGraphProfileMetadata &
2828
TwitterCardMetadata = {
2929
openGraph: {
30-
type: OpenGraphType.Book, // using enums to watch bundle size increase
30+
type: OPEN_GRAPH_TYPE_BOOK,
3131
profile: {
32-
gender: OpenGraphProfileGender.Female,
32+
gender: OPEN_GRAPH_PROFILE_GENDER_FEMALE,
3333
},
3434
},
3535
twitterCard: {
36-
card: TwitterCardType.SummaryLargeImage,
36+
card: TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE,
3737
},
38-
}
38+
} as const
3939

4040
constructor(
4141
activatedRoute: ActivatedRoute,
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
export enum OpenGraphProfileGender {
2-
Male = 'male',
3-
Female = 'female',
4-
}
1+
export const OPEN_GRAPH_PROFILE_GENDER_FEMALE = 'female'
2+
export const OPEN_GRAPH_PROFILE_GENDER_MALE = 'male'
3+
4+
export type OpenGraphProfileGender =
5+
| typeof OPEN_GRAPH_PROFILE_GENDER_FEMALE
6+
| typeof OPEN_GRAPH_PROFILE_GENDER_MALE
Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,25 @@
1-
export enum OpenGraphType {
2-
MusicSong = 'music.song',
3-
MusicAlbum = 'music.album',
4-
MusicPlaylist = 'music.playlist',
5-
MusicRadioStation = 'music.radio_station',
6-
VideoMovie = 'video.movie',
7-
VideoEpisode = 'video.episode',
8-
VideoTvShow = 'video.tv_show',
9-
VideoOther = 'video.other',
10-
Article = 'article',
11-
Book = 'book',
12-
Profile = 'profile',
13-
Website = 'website',
14-
}
1+
export const OPEN_GRAPH_TYPE_MUSIC_SONG = 'music.song'
2+
export const OPEN_GRAPH_TYPE_MUSIC_ALBUM = 'music.album'
3+
export const OPEN_GRAPH_TYPE_MUSIC_PLAYLIST = 'music.playlist'
4+
export const OPEN_GRAPH_TYPE_MUSIC_RADIO_STATION = 'music.radio_station'
5+
export const OPEN_GRAPH_TYPE_VIDEO_MOVIE = 'video.movie'
6+
export const OPEN_GRAPH_TYPE_VIDEO_EPISODE = 'video.episode'
7+
export const OPEN_GRAPH_TYPE_VIDEO_TV_SHOW = 'video.tv_show'
8+
export const OPEN_GRAPH_TYPE_VIDEO_OTHER = 'video.other'
9+
export const OPEN_GRAPH_TYPE_ARTICLE = 'article'
10+
export const OPEN_GRAPH_TYPE_BOOK = 'book'
11+
export const OPEN_GRAPH_TYPE_PROFILE = 'profile'
12+
export const OPEN_GRAPH_TYPE_WEBSITE = 'website'
13+
export type OpenGraphType =
14+
| typeof OPEN_GRAPH_TYPE_MUSIC_SONG
15+
| typeof OPEN_GRAPH_TYPE_MUSIC_ALBUM
16+
| typeof OPEN_GRAPH_TYPE_MUSIC_PLAYLIST
17+
| typeof OPEN_GRAPH_TYPE_MUSIC_RADIO_STATION
18+
| typeof OPEN_GRAPH_TYPE_VIDEO_MOVIE
19+
| typeof OPEN_GRAPH_TYPE_VIDEO_EPISODE
20+
| typeof OPEN_GRAPH_TYPE_VIDEO_TV_SHOW
21+
| typeof OPEN_GRAPH_TYPE_VIDEO_OTHER
22+
| typeof OPEN_GRAPH_TYPE_ARTICLE
23+
| typeof OPEN_GRAPH_TYPE_BOOK
24+
| typeof OPEN_GRAPH_TYPE_PROFILE
25+
| typeof OPEN_GRAPH_TYPE_WEBSITE

projects/ngx-meta/src/open-graph/src/open-graph.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { OpenGraphType } from './open-graph-type'
21
import { OpenGraphImage } from './open-graph-image'
2+
import { OpenGraphType } from './open-graph-type'
33

44
/**
55
* Open Graph metadata
Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1-
export enum TwitterCardType {
2-
Summary = 'summary',
3-
SummaryLargeImage = 'summary_large_image',
4-
App = 'app',
5-
Player = 'player',
6-
}
1+
export const TWITTER_CARD_TYPE_SUMMARY = 'summary'
2+
export const TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE = 'summary_large_image'
3+
export const TWITTER_CARD_TYPE_APP = 'app'
4+
export const TWITTER_CARD_TYPE_PLAYER = 'player'
5+
6+
export type TwitterCardType =
7+
| typeof TWITTER_CARD_TYPE_SUMMARY
8+
| typeof TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE
9+
| typeof TWITTER_CARD_TYPE_APP
10+
| typeof TWITTER_CARD_TYPE_PLAYER

0 commit comments

Comments
 (0)