UNPKG

@xivapi/angular-client

Version:

xivapi client library (service and models) for angular applications

1 lines 62.3 kB
{"version":3,"file":"xivapi-angular-client.mjs","sources":["../../../projects/angular-client/src/lib/xivapi.service.ts","../../../projects/angular-client/src/lib/xivapi-service-factory.ts","../../../projects/angular-client/src/lib/xivapi-client.module.ts","../../../projects/angular-client/src/lib/model/search-algo.ts","../../../projects/angular-client/src/lib/model/search-index.ts","../../../projects/angular-client/src/lib/model/xivapi-endpoint.ts","../../../projects/angular-client/src/public-api.ts","../../../projects/angular-client/src/xivapi-angular-client.ts"],"sourcesContent":["import {Inject, Injectable} from '@angular/core';\nimport {HttpClient, HttpParams} from '@angular/common/http';\nimport {Observable} from 'rxjs';\nimport {\n CharacterSearchResult,\n Pagination,\n PvpTeam,\n XivapiCharacterOptions,\n XivapiEndpoint,\n XivapiList,\n XivapiOptions,\n XivapiRequestOptions,\n XivapiSearchOptions\n} from './model';\nimport {CharacterResponse, CharacterVerification} from './model/schema/character';\nimport {GCF_URL} from './xivapi-client.module';\nimport {LoreSearchResult} from './model/lore-search-result';\n\n@Injectable()\nexport class XivapiService {\n\n /**\n * Base url of xivapi.\n */\n public static readonly API_BASE_URL: string = 'https://xivapi.com';\n public static readonly STAGING_API_BASE_URL: string = 'https://staging.xivapi.com';\n\n constructor(private http: HttpClient, @Inject(GCF_URL) private GCFUrl?: string) {\n }\n\n /**\n * Makes a request on a given endpoint with an id.\n *\n * @param endpoint The endpoint to use for the request.\n * @param id The id of the resource for the request.\n * @param options The options of the request, optional.\n */\n public get<T = any>(endpoint: XivapiEndpoint, id: number, options?: XivapiRequestOptions): Observable<T> {\n return this.request<T>(`/${endpoint}/${id}`, options);\n }\n\n /**\n * Makes a request on a given endpoint with an id.\n *\n * @param query Text to search inside the lore.\n * @param lang\n * @param allLanguages should it include Text_*?\n * @param dataColumns Additional data you want to fetch.\n * @param page data page to get\n * @param options Options of the request.\n */\n public searchLore(query: string, lang: string = 'en', allLanguages: boolean = false,\n dataColumns: string[] = [], page: number = 1, options: XivapiOptions = {}): Observable<LoreSearchResult> {\n if (!options.extraQueryParams) {\n options.extraQueryParams = {};\n }\n\n Object.assign(options.extraQueryParams, {\n string: query,\n language: lang,\n page: page.toString()\n });\n\n if (dataColumns && dataColumns.length > 0) {\n const columns: string[] = [\n 'Context',\n 'Source',\n 'SourceID',\n 'Text',\n ...dataColumns.map(col => `Data.${col}`)\n ];\n if (allLanguages) {\n columns.push('Text_*');\n }\n\n options.extraQueryParams['columns'] = columns.join(',');\n }\n return this.request<LoreSearchResult>('/lore', options);\n }\n\n /**\n * Makes a request to a given endpoint to list resources available.\n *\n * @param endpoint The endpoint to use for the request.\n * @param options The options of the request, optional.\n */\n public getList<T = any>(endpoint: XivapiEndpoint, options?: XivapiRequestOptions): Observable<XivapiList<T>> {\n return this.request<XivapiList<T>>(`/${endpoint}`, options);\n }\n\n /**\n * Searches for something in the api using the /Search endpoint.\n *\n * @param options Search options, see http://xivapi.com/docs/Search for more details.\n */\n public search(options: XivapiSearchOptions): Observable<any> {\n if (options.filters) {\n const filterChain: string = options.filters.reduce((chain, filter) => {\n const value: string = filter.value instanceof Array ? filter.value.join(';') : (filter.value || '').toString();\n return `${chain}${filter.column}${filter.operator}${value},`;\n }, '').slice(0, -1);\n\n if (!options.extraQueryParams) {\n options.extraQueryParams = {};\n }\n options.extraQueryParams['filters'] = filterChain;\n }\n\n return this.request<any>('/Search', options);\n }\n\n /**\n * Gets a character using the /Character endpoint.\n *\n * @param lodestoneId LodestoneID of the character to get.\n * @param options Options of the request.\n * @param details Specific details you want to get.\n */\n public getCharacter(lodestoneId: number | string, options?: XivapiCharacterOptions,\n details?: 'Friends' | 'Achievements' | 'Gearsets' | 'Record' | 'FreeCompany'): Observable<CharacterResponse> {\n return this.request<CharacterResponse>(`/character/${lodestoneId}${details ? '/' + details : ''}`, options);\n }\n\n /**\n * Gets character verification state using /character/<id>/verification endpoint\n *\n * @param lodestoneId LodestoneID of the character to verify.\n * @param options Options of the request.\n */\n public getCharacterVerification(lodestoneId: number | string, options?: XivapiCharacterOptions): Observable<CharacterVerification> {\n return this.request<CharacterVerification>(`/character/${lodestoneId}/verification`, options);\n }\n\n /**\n * Gets the current list of available servers. Useful for character search queries.\n */\n public getServerList(): Observable<string[]> {\n return this.request<string[]>(`/servers`);\n }\n\n /**\n * Gets the current list of available servers, per DC.\n */\n public getDCList(): Observable<{ [index: string]: string[] }> {\n return this.request<{ [index: string]: string[] }>(`/servers/dc`);\n }\n\n /**\n * Search for a character on **The Lodestone**. This does not search XIVAPI but instead it goes directly to\n * lodestone so the response will be \"real-time\". Responses are cached for 1 hour,\n * it is important to know that Lodestone has a ~6 hour varnish and CDN cache.\n *\n * @param name The name of the character to search, you can use + for spaces or let the API handle it for you.\n * If you search very short names you will get lots of responses.\n * This is an issue with The Lodestone and not much XIVAPI can do about it at this time.\n * @param server (optional) The server to search against, this is case sensitive.\n * You can obtain a list of valid servers via getServerList method.\n * @param page Search or move to a specific page.\n */\n public searchCharacter(name: string, server?: string, page?: number): Observable<CharacterSearchResult> {\n let url: string = `/character/search?name=${name}`;\n if (server !== undefined) {\n url += `&server=${server}`;\n }\n if (page !== undefined) {\n url += `&page=${page}`;\n }\n return this.request<CharacterSearchResult>(url);\n }\n\n /**\n * Search for free companies on The Lodestone. This parses the lodestone in real time so it will be slow for non-cached responses.\n * All search queries are cached for 1 hour, it is important to know that Lodestone has a ~6 hour varnish and CDN cache.\n * This does not search XIVAPI so free companies found may not be on\n * the service and will be added when requested by their specified lodestone ID.\n *\n * @param name The name of the company to search, you can use + for spaces or let the API handle it for you.\n * If you search very short names you will get lots of responses.\n * This is an issue with The Lodestone and not much XIVAPI can do about it at this time.\n * @param server (optional) The server to search against, this is case sensitive.\n * You can obtain a list of valid servers via getServerList method.\n * @param page Search or move to a specific page.\n */\n public searchFreeCompany(name: string, server?: string, page?: number): Observable<{ Results: any[], Pagination: Pagination }> {\n let url: string = `/freecompany/search?name=${name}`;\n if (server !== undefined) {\n url += `&server=${server}`;\n }\n if (page !== undefined) {\n url += `&page=${page}`;\n }\n return this.request<{ Results: any[], Pagination: Pagination }>(url);\n }\n\n /**\n * Gets character verification informations based on lodestoneId.\n *\n * @param lodestoneId LodestoneID of the character to get.\n * @param options Options of the request.\n */\n public verifyCharacter(lodestoneId: number, options?: XivapiCharacterOptions): Observable<CharacterVerification> {\n return this.request<any>(`/Character/${lodestoneId}/Verification`, options);\n }\n\n\n /**\n * Gets a free company using the /FreeCompany endpoint.\n *\n * @param lodestoneId LodestoneID of the free company to get.\n * @param options Options of the request.\n * @param details Specific details you want to get.\n */\n public getFreeCompany(lodestoneId: number | string, options?: XivapiOptions,\n details?: 'members' | 'record'): Observable<any> {\n return this.request<any>(`/FreeCompany/${lodestoneId}${details ? '/' + details : ''}`, options);\n }\n\n /**\n * Gets a linkshell using the /Linkshell endpoint.\n *\n * @param lodestoneId LodestoneID of the linkshell to get.\n * @param options Options of the request.\n * @param details Specific details you want to get.\n */\n public getLinkshell(lodestoneId: number | string, options?: XivapiOptions,\n details?: 'record'): Observable<any> {\n return this.request<any>(`/Linkshell/${lodestoneId}${details ? '/' + details : ''}`, options);\n }\n\n /**\n * Gets a PvP team based on its lodestone id (string)\n *\n * @param id the id of the team to get.\n * @param options Options of the request\n */\n public getPvPTeam(id: string, options?: XivapiOptions): Observable<PvpTeam> {\n return this.request<PvpTeam>(`/PvPTeam/${id}`, options);\n }\n\n /**\n * Gets the list of patches using the /PatchList endpoint.\n * @param options Options of the request.\n */\n public getPatchList(options?: XivapiOptions): Observable<any> {\n return this.request<any>(`/PatchList`, options);\n }\n\n protected request<T>(endpoint: string, params?: XivapiOptions): Observable<T> {\n let queryParams: HttpParams = this.prepareQueryString(params);\n let baseUrl: string = XivapiService.API_BASE_URL;\n if (params) {\n if (params.baseUrl) {\n baseUrl = params.baseUrl;\n } else if (params.staging) {\n baseUrl = XivapiService.STAGING_API_BASE_URL;\n }\n\n ['staging', 'baseUrl'].forEach(key => {\n if (params.hasOwnProperty(key)) {\n queryParams.delete(key);\n }\n });\n }\n return this.doGet<any>(`${baseUrl}${endpoint}`, queryParams);\n }\n\n private prepareQueryString(options?: XivapiOptions): HttpParams {\n let queryString: HttpParams = new HttpParams();\n if (options === null || options === undefined) {\n return queryString;\n }\n\n const {extraQueryParams, ...rest} = options;\n Object.keys(rest)\n .forEach(optionKey => {\n if (extraQueryParams && Object.prototype.hasOwnProperty.call(extraQueryParams, optionKey)) {\n return;\n }\n\n // @ts-ignore\n const value: any = options[optionKey] as any;\n if (value instanceof Array) {\n queryString = queryString.set(optionKey, value.join(','));\n } else {\n queryString = queryString.set(optionKey, value.toString());\n }\n });\n if (extraQueryParams) {\n Object.keys(extraQueryParams)\n .forEach(key => {\n // @ts-ignore\n queryString = queryString.set(key, extraQueryParams[key].toString());\n });\n }\n return queryString;\n }\n\n private doGet<T>(url: string, queryParams: HttpParams): Observable<T> {\n if (this.GCFUrl) {\n const queryString: string = queryParams.toString();\n return this.http.get<T>(this.GCFUrl, {params: {url: btoa(`${url}${queryString.length > 0 ? `?${queryString}` : ''}`)}});\n }\n return this.http.get<T>(url, {params: queryParams});\n }\n}\n","import { XivapiService } from './xivapi.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nexport function XivapiServiceFactory(http: HttpClient, GCFUrl: string): XivapiService {\r\n return new XivapiService(http, GCFUrl);\r\n}\r\n","import { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { XivapiService } from './xivapi.service';\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { XivapiServiceFactory } from './xivapi-service-factory';\n\nexport const GCF_URL: InjectionToken<string> = new InjectionToken('GCF_URL');\n\n@NgModule({\n imports: [\n CommonModule,\n\n HttpClientModule,\n ]\n})\nexport class XivapiClientModule {\n\n static forRoot(GCFUrl?: string): ModuleWithProviders<XivapiClientModule> {\n return {\n ngModule: XivapiClientModule,\n providers: [\n {\n provide: GCF_URL,\n useValue: GCFUrl\n },\n {\n provide: XivapiService,\n useFactory: XivapiServiceFactory,\n deps: [HttpClient, GCF_URL]\n }\n ]\n };\n }\n}\n","export enum SearchAlgo {\n /**\n * A very basic wild card, for example: ard would match: b-ard-ing or h-ard etc.\n */\n WILDCARD = 'wildcard',\n WILDCARD_PLUS = 'wildcard_plus',\n MULTI_MATCH = 'multi_match',\n QUERY_STRING = 'query_string',\n TERM = 'term',\n MATCH_PHRASE_PREFIX = 'match_phrase_prefix',\n FUZZ = 'fuzzy',\n STRING_CUSTOM = 'custom'\n}\n","/**\n * Lists all the indexes one can search on /Search endpoint.\n */\nexport enum SearchIndex {\n ACHIEVEMENT = 'achievement',\n TITLE = 'title',\n ACTION = 'action',\n CRAFT_ACTION = 'craftaction',\n TRAIT = 'trait',\n PVP_ACTION = 'PvPAction',\n PVP_TRAIT = 'PvPTrait',\n STATUS = 'status',\n /**\n * Enemies index.\n */\n BNPCNAME = 'bnpcname',\n /**\n * NPCs index.\n */\n ENPCRESIDENT = 'enpcresident',\n /**\n * Minions index.\n */\n COMPANION = 'companion',\n MOUNT = 'mount',\n LEVE = 'leve',\n EMOTE = 'emote',\n INSTANCECONTENT = 'instancecontent',\n ITEM = 'item',\n RECIPE = 'recipe',\n FATE = 'fate',\n QUEST = 'quest',\n BALLOON = 'balloon',\n BUDDY_EQUIP = 'buddyequip',\n ORCHESTRION = 'orchestrion',\n PLACENAME = 'placename',\n WEATHER = 'weather',\n WORLD = 'world'\n}\n","/**\r\n * Lists all the endpoints available in xivapi.\r\n */\r\nexport enum XivapiEndpoint {\r\n Achievement = 'Achievement',\r\n AchievementCategory = 'AchievementCategory',\r\n AchievementKind = 'AchievementKind',\r\n Action = 'Action',\r\n ActionCastTimeline = 'ActionCastTimeline',\r\n ActionCastVFX = 'ActionCastVFX',\r\n ActionCategory = 'ActionCategory',\r\n ActionComboRoute = 'ActionComboRoute',\r\n ActionIndirection = 'ActionIndirection',\r\n ActionParam = 'ActionParam',\r\n ActionProcStatus = 'ActionProcStatus',\r\n ActionTimeline = 'ActionTimeline',\r\n ActionTimelineReplace = 'ActionTimelineReplace',\r\n ActionTransient = 'ActionTransient',\r\n ActivityFeedButtons = 'ActivityFeedButtons',\r\n ActivityFeedCaptions = 'ActivityFeedCaptions',\r\n ActivityFeedGroupCaptions = 'ActivityFeedGroupCaptions',\r\n ActivityFeedImages = 'ActivityFeedImages',\r\n Addon = 'Addon',\r\n AddonHud = 'AddonHud',\r\n Adventure = 'Adventure',\r\n AdventureExPhase = 'AdventureExPhase',\r\n AetherCurrent = 'AetherCurrent',\r\n AetherCurrentCompFlgSet = 'AetherCurrentCompFlgSet',\r\n AetherialWheel = 'AetherialWheel',\r\n Aetheryte = 'Aetheryte',\r\n AetheryteSystemDefine = 'AetheryteSystemDefine',\r\n AirshipExplorationLevel = 'AirshipExplorationLevel',\r\n AirshipExplorationLog = 'AirshipExplorationLog',\r\n AirshipExplorationParamType = 'AirshipExplorationParamType',\r\n AirshipExplorationPart = 'AirshipExplorationPart',\r\n AirshipExplorationPoint = 'AirshipExplorationPoint',\r\n AnimaWeapon5 = 'AnimaWeapon5',\r\n AnimaWeapon5Param = 'AnimaWeapon5Param',\r\n AnimaWeapon5PatternGroup = 'AnimaWeapon5PatternGroup',\r\n AnimaWeapon5SpiritTalk = 'AnimaWeapon5SpiritTalk',\r\n AnimaWeapon5SpiritTalkParam = 'AnimaWeapon5SpiritTalkParam',\r\n AnimaWeapon5TradeItem = 'AnimaWeapon5TradeItem',\r\n AnimaWeaponFUITalk = 'AnimaWeaponFUITalk',\r\n AnimaWeaponFUITalkParam = 'AnimaWeaponFUITalkParam',\r\n AnimaWeaponIcon = 'AnimaWeaponIcon',\r\n AnimaWeaponItem = 'AnimaWeaponItem',\r\n AquariumFish = 'AquariumFish',\r\n AquariumWater = 'AquariumWater',\r\n ArrayEventHandler = 'ArrayEventHandler',\r\n AttackType = 'AttackType',\r\n BGM = 'BGM',\r\n BGMFade = 'BGMFade',\r\n BGMSituation = 'BGMSituation',\r\n BGMSwitch = 'BGMSwitch',\r\n BGMSystemDefine = 'BGMSystemDefine',\r\n BNpcAnnounceIcon = 'BNpcAnnounceIcon',\r\n BNpcBase = 'BNpcBase',\r\n BNpcCustomize = 'BNpcCustomize',\r\n BNpcName = 'BNpcName',\r\n BacklightColor = 'BacklightColor',\r\n Balloon = 'Balloon',\r\n BaseParam = 'BaseParam',\r\n BattleLeve = 'BattleLeve',\r\n BeastRankBonus = 'BeastRankBonus',\r\n BeastReputationRank = 'BeastReputationRank',\r\n BeastTribe = 'BeastTribe',\r\n Behavior = 'Behavior',\r\n Buddy = 'Buddy',\r\n BuddyAction = 'BuddyAction',\r\n BuddyEquip = 'BuddyEquip',\r\n BuddyItem = 'BuddyItem',\r\n BuddyRank = 'BuddyRank',\r\n BuddySkill = 'BuddySkill',\r\n Cabinet = 'Cabinet',\r\n CabinetCategory = 'CabinetCategory',\r\n Calendar = 'Calendar',\r\n CharaMakeCustomize = 'CharaMakeCustomize',\r\n CharaMakeType = 'CharaMakeType',\r\n ChocoboRace = 'ChocoboRace',\r\n ChocoboRaceAbility = 'ChocoboRaceAbility',\r\n ChocoboRaceAbilityType = 'ChocoboRaceAbilityType',\r\n ChocoboRaceItem = 'ChocoboRaceItem',\r\n ChocoboRaceRank = 'ChocoboRaceRank',\r\n ChocoboRaceStatus = 'ChocoboRaceStatus',\r\n ChocoboRaceTerritory = 'ChocoboRaceTerritory',\r\n ChocoboRaceTutorial = 'ChocoboRaceTutorial',\r\n ChocoboRaceWeather = 'ChocoboRaceWeather',\r\n ChocoboTaxi = 'ChocoboTaxi',\r\n ChocoboTaxiStand = 'ChocoboTaxiStand',\r\n ClassJob = 'ClassJob',\r\n ClassJobCategory = 'ClassJobCategory',\r\n Companion = 'Companion',\r\n CompanionMove = 'CompanionMove',\r\n CompanionTransient = 'CompanionTransient',\r\n CompanyAction = 'CompanyAction',\r\n CompanyCraftDraft = 'CompanyCraftDraft',\r\n CompanyCraftDraftCategory = 'CompanyCraftDraftCategory',\r\n CompanyCraftManufactoryState = 'CompanyCraftManufactoryState',\r\n CompanyCraftPart = 'CompanyCraftPart',\r\n CompanyCraftProcess = 'CompanyCraftProcess',\r\n CompanyCraftSequence = 'CompanyCraftSequence',\r\n CompanyCraftSupplyItem = 'CompanyCraftSupplyItem',\r\n CompanyCraftType = 'CompanyCraftType',\r\n CompleteJournal = 'CompleteJournal',\r\n CompleteJournalCategory = 'CompleteJournalCategory',\r\n ContentCloseCycle = 'ContentCloseCycle',\r\n ContentExAction = 'ContentExAction',\r\n ContentFinderCondition = 'ContentFinderCondition',\r\n ContentFinderConditionTransient = 'ContentFinderConditionTransient',\r\n ContentGauge = 'ContentGauge',\r\n ContentGaugeColor = 'ContentGaugeColor',\r\n ContentMemberType = 'ContentMemberType',\r\n ContentNpcTalk = 'ContentNpcTalk',\r\n ContentRoulette = 'ContentRoulette',\r\n ContentRouletteOpenRule = 'ContentRouletteOpenRule',\r\n ContentRouletteRoleBonus = 'ContentRouletteRoleBonus',\r\n ContentTalk = 'ContentTalk',\r\n ContentTalkParam = 'ContentTalkParam',\r\n ContentType = 'ContentType',\r\n ContentsNote = 'ContentsNote',\r\n ContentsNoteCategory = 'ContentsNoteCategory',\r\n CraftAction = 'CraftAction',\r\n CraftLeve = 'CraftLeve',\r\n CraftType = 'CraftType',\r\n Credit = 'Credit',\r\n CreditCast = 'CreditCast',\r\n Currency = 'Currency',\r\n CustomTalk = 'CustomTalk',\r\n CutScreenImage = 'CutScreenImage',\r\n Cutscene = 'Cutscene',\r\n DailySupplyItem = 'DailySupplyItem',\r\n DeepDungeonBan = 'DeepDungeonBan',\r\n DeepDungeonDanger = 'DeepDungeonDanger',\r\n DeepDungeonEquipment = 'DeepDungeonEquipment',\r\n DeepDungeonFloorEffectUI = 'DeepDungeonFloorEffectUI',\r\n DeepDungeonItem = 'DeepDungeonItem',\r\n DeepDungeonStatus = 'DeepDungeonStatus',\r\n DefaultTalk = 'DefaultTalk',\r\n DefaultTalkLipSyncType = 'DefaultTalkLipSyncType',\r\n DeliveryQuest = 'DeliveryQuest',\r\n DisposalShop = 'DisposalShop',\r\n DisposalShopFilterType = 'DisposalShopFilterType',\r\n DisposalShopItem = 'DisposalShopItem',\r\n DpsChallenge = 'DpsChallenge',\r\n DpsChallengeOfficer = 'DpsChallengeOfficer',\r\n DpsChallengeTransient = 'DpsChallengeTransient',\r\n ENpcBase = 'ENpcBase',\r\n ENpcResident = 'ENpcResident',\r\n EObj = 'EObj',\r\n EObjName = 'EObjName',\r\n Emote = 'Emote',\r\n EmoteCategory = 'EmoteCategory',\r\n EquipRaceCategory = 'EquipRaceCategory',\r\n EquipSlotCategory = 'EquipSlotCategory',\r\n EurekaAethernet = 'EurekaAethernet',\r\n EurekaGrowData = 'EurekaGrowData',\r\n EurekaSphereElementAdjust = 'EurekaSphereElementAdjust',\r\n EventAction = 'EventAction',\r\n EventIconPriority = 'EventIconPriority',\r\n EventIconType = 'EventIconType',\r\n EventItem = 'EventItem',\r\n EventItemCastTimeline = 'EventItemCastTimeline',\r\n EventItemHelp = 'EventItemHelp',\r\n EventItemTimeline = 'EventItemTimeline',\r\n ExVersion = 'ExVersion',\r\n FCActivity = 'FCActivity',\r\n FCActivityCategory = 'FCActivityCategory',\r\n FCAuthority = 'FCAuthority',\r\n FCAuthorityCategory = 'FCAuthorityCategory',\r\n FCChestName = 'FCChestName',\r\n FCHierarchy = 'FCHierarchy',\r\n FCProfile = 'FCProfile',\r\n FCReputation = 'FCReputation',\r\n FCRights = 'FCRights',\r\n Fate = 'Fate',\r\n FccShop = 'FccShop',\r\n FieldMarker = 'FieldMarker',\r\n FishParameter = 'FishParameter',\r\n FishingRecordTypeTransient = 'FishingRecordTypeTransient',\r\n FishingSpot = 'FishingSpot',\r\n Frontline04 = 'Frontline04',\r\n GCRankGridaniaFemaleText = 'GCRankGridaniaFemaleText',\r\n GCRankGridaniaMaleText = 'GCRankGridaniaMaleText',\r\n GCRankLimsaFemaleText = 'GCRankLimsaFemaleText',\r\n GCRankLimsaMaleText = 'GCRankLimsaMaleText',\r\n GCRankUldahFemaleText = 'GCRankUldahFemaleText',\r\n GCRankUldahMaleText = 'GCRankUldahMaleText',\r\n GCScripShopCategory = 'GCScripShopCategory',\r\n GCScripShopItem = 'GCScripShopItem',\r\n GCShop = 'GCShop',\r\n GCShopItemCategory = 'GCShopItemCategory',\r\n GCSupplyDuty = 'GCSupplyDuty',\r\n GCSupplyDutyReward = 'GCSupplyDutyReward',\r\n GFATE = 'GFATE',\r\n GardeningSeed = 'GardeningSeed',\r\n GatheringCondition = 'GatheringCondition',\r\n GatheringExp = 'GatheringExp',\r\n GatheringItem = 'GatheringItem',\r\n GatheringItemLevelConvertTable = 'GatheringItemLevelConvertTable',\r\n GatheringItemPoint = 'GatheringItemPoint',\r\n GatheringLeve = 'GatheringLeve',\r\n GatheringLeveRoute = 'GatheringLeveRoute',\r\n GatheringNotebookList = 'GatheringNotebookList',\r\n GatheringPoint = 'GatheringPoint',\r\n GatheringPointBase = 'GatheringPointBase',\r\n GatheringPointBonus = 'GatheringPointBonus',\r\n GatheringPointBonusType = 'GatheringPointBonusType',\r\n GatheringPointName = 'GatheringPointName',\r\n GatheringSubCategory = 'GatheringSubCategory',\r\n GatheringType = 'GatheringType',\r\n GcArmyCaptureTactics = 'GcArmyCaptureTactics',\r\n GcArmyExpedition = 'GcArmyExpedition',\r\n GcArmyExpeditionMemberBonus = 'GcArmyExpeditionMemberBonus',\r\n GcArmyExpeditionType = 'GcArmyExpeditionType',\r\n GcArmyMemberGrow = 'GcArmyMemberGrow',\r\n GcArmyTraining = 'GcArmyTraining',\r\n GeneralAction = 'GeneralAction',\r\n GilShop = 'GilShop',\r\n GilShopItem = 'GilShopItem',\r\n GoldSaucerArcadeMachine = 'GoldSaucerArcadeMachine',\r\n GoldSaucerTextData = 'GoldSaucerTextData',\r\n GrandCompany = 'GrandCompany',\r\n GrandCompanyRank = 'GrandCompanyRank',\r\n GuardianDeity = 'GuardianDeity',\r\n GuildOrderGuide = 'GuildOrderGuide',\r\n GuildOrderOfficer = 'GuildOrderOfficer',\r\n GuildleveAssignment = 'GuildleveAssignment',\r\n GuildleveAssignmentCategory = 'GuildleveAssignmentCategory',\r\n HairMakeType = 'HairMakeType',\r\n HouseRetainerPose = 'HouseRetainerPose',\r\n HousingAethernet = 'HousingAethernet',\r\n HousingEmploymentNpcList = 'HousingEmploymentNpcList',\r\n HousingEmploymentNpcRace = 'HousingEmploymentNpcRace',\r\n HousingFurniture = 'HousingFurniture',\r\n HousingPlacement = 'HousingPlacement',\r\n HousingPreset = 'HousingPreset',\r\n HousingYardObject = 'HousingYardObject',\r\n HowTo = 'HowTo',\r\n HowToCategory = 'HowToCategory',\r\n HowToPage = 'HowToPage',\r\n InstanceContent = 'InstanceContent',\r\n InstanceContentBuff = 'InstanceContentBuff',\r\n InstanceContentTextData = 'InstanceContentTextData',\r\n Item = 'Item',\r\n ItemAction = 'ItemAction',\r\n ItemFood = 'ItemFood',\r\n ItemSearchCategory = 'ItemSearchCategory',\r\n ItemSeries = 'ItemSeries',\r\n ItemSpecialBonus = 'ItemSpecialBonus',\r\n ItemUICategory = 'ItemUICategory',\r\n JournalCategory = 'JournalCategory',\r\n JournalGenre = 'JournalGenre',\r\n JournalSection = 'JournalSection',\r\n Leve = 'Leve',\r\n LeveAssignmentType = 'LeveAssignmentType',\r\n LeveClient = 'LeveClient',\r\n LeveRewardItem = 'LeveRewardItem',\r\n LeveRewardItemGroup = 'LeveRewardItemGroup',\r\n LeveVfx = 'LeveVfx',\r\n Level = 'Level',\r\n LogFilter = 'LogFilter',\r\n LogKind = 'LogKind',\r\n LogKindCategoryText = 'LogKindCategoryText',\r\n LogMessage = 'LogMessage',\r\n LotteryExchangeShop = 'LotteryExchangeShop',\r\n MacroIcon = 'MacroIcon',\r\n MacroIconRedirectOld = 'MacroIconRedirectOld',\r\n MainCommand = 'MainCommand',\r\n MainCommandCategory = 'MainCommandCategory',\r\n ManeuversArmor = 'ManeuversArmor',\r\n Map = 'Map',\r\n MapMarker = 'MapMarker',\r\n MapMarkerRegion = 'MapMarkerRegion',\r\n MapSymbol = 'MapSymbol',\r\n MappyMapData = 'mappy/map',\r\n Marker = 'Marker',\r\n MasterpieceSupplyDuty = 'MasterpieceSupplyDuty',\r\n MasterpieceSupplyMultiplier = 'MasterpieceSupplyMultiplier',\r\n Materia = 'Materia',\r\n MinionRace = 'MinionRace',\r\n MinionRules = 'MinionRules',\r\n MinionSkillType = 'MinionSkillType',\r\n MobHuntOrderType = 'MobHuntOrderType',\r\n MobHuntTarget = 'MobHuntTarget',\r\n ModelChara = 'ModelChara',\r\n ModelState = 'ModelState',\r\n MonsterNote = 'MonsterNote',\r\n MonsterNoteTarget = 'MonsterNoteTarget',\r\n Mount = 'Mount',\r\n MountAction = 'MountAction',\r\n MoveTimeline = 'MoveTimeline',\r\n MoveVfx = 'MoveVfx',\r\n NpcEquip = 'NpcEquip',\r\n NpcYell = 'NpcYell',\r\n Omen = 'Omen',\r\n OnlineStatus = 'OnlineStatus',\r\n Opening = 'Opening',\r\n Orchestrion = 'Orchestrion',\r\n OrchestrionCategory = 'OrchestrionCategory',\r\n OrchestrionPath = 'OrchestrionPath',\r\n OrchestrionUiparam = 'OrchestrionUiparam',\r\n ParamGrow = 'ParamGrow',\r\n PartyContentCutscene = 'PartyContentCutscene',\r\n Perform = 'Perform',\r\n PerformTransient = 'PerformTransient',\r\n Pet = 'Pet',\r\n PetAction = 'PetAction',\r\n Picture = 'Picture',\r\n PlaceName = 'PlaceName',\r\n PlantPotFlowerSeed = 'PlantPotFlowerSeed',\r\n PreHandler = 'PreHandler',\r\n PublicContent = 'PublicContent',\r\n PublicContentCutscene = 'PublicContentCutscene',\r\n PvPAction = 'PvPAction',\r\n PvPActionSort = 'PvPActionSort',\r\n PvPRank = 'PvPRank',\r\n PvPSelectTrait = 'PvPSelectTrait',\r\n PvPTrait = 'PvPTrait',\r\n Quest = 'Quest',\r\n QuestClassJobReward = 'QuestClassJobReward',\r\n QuestClassJobSupply = 'QuestClassJobSupply',\r\n QuestRepeatFlag = 'QuestRepeatFlag',\r\n QuestRewardOther = 'QuestRewardOther',\r\n QuickChat = 'QuickChat',\r\n QuickChatTransient = 'QuickChatTransient',\r\n RPParameter = 'RPParameter',\r\n Race = 'Race',\r\n RacingChocoboItem = 'RacingChocoboItem',\r\n RacingChocoboName = 'RacingChocoboName',\r\n RacingChocoboNameCategory = 'RacingChocoboNameCategory',\r\n RacingChocoboNameInfo = 'RacingChocoboNameInfo',\r\n RacingChocoboParam = 'RacingChocoboParam',\r\n Recipe = 'Recipe',\r\n RecipeElement = 'RecipeElement',\r\n RecipeLevelTable = 'RecipeLevelTable',\r\n RecipeNotebookList = 'RecipeNotebookList',\r\n RecommendContents = 'RecommendContents',\r\n Relic = 'Relic',\r\n Relic3 = 'Relic3',\r\n RelicItem = 'RelicItem',\r\n RelicNote = 'RelicNote',\r\n RelicNoteCategory = 'RelicNoteCategory',\r\n Resident = 'Resident',\r\n RetainerTask = 'RetainerTask',\r\n RetainerTaskLvRange = 'RetainerTaskLvRange',\r\n RetainerTaskNormal = 'RetainerTaskNormal',\r\n RetainerTaskParameter = 'RetainerTaskParameter',\r\n RetainerTaskRandom = 'RetainerTaskRandom',\r\n Salvage = 'Salvage',\r\n SatisfactionNpc = 'SatisfactionNpc',\r\n SatisfactionSupply = 'SatisfactionSupply',\r\n SatisfactionSupplyReward = 'SatisfactionSupplyReward',\r\n ScenarioTree = 'ScenarioTree',\r\n ScenarioTreeTips = 'ScenarioTreeTips',\r\n ScenarioTreeTipsClassQuest = 'ScenarioTreeTipsClassQuest',\r\n ScenarioTreeTipsQuest = 'ScenarioTreeTipsQuest',\r\n ScenarioType = 'ScenarioType',\r\n ScreenImage = 'ScreenImage',\r\n SecretRecipeBook = 'SecretRecipeBook',\r\n SkyIsland2Mission = 'SkyIsland2Mission',\r\n SkyIsland2MissionDetail = 'SkyIsland2MissionDetail',\r\n SkyIsland2MissionType = 'SkyIsland2MissionType',\r\n SkyIsland2RangeType = 'SkyIsland2RangeType',\r\n SpearfishingItem = 'SpearfishingItem',\r\n SpearfishingNotebook = 'SpearfishingNotebook',\r\n SpearfishingRecordPage = 'SpearfishingRecordPage',\r\n SpecialShop = 'SpecialShop',\r\n SpecialShopItemCategory = 'SpecialShopItemCategory',\r\n Stain = 'Stain',\r\n StainTransient = 'StainTransient',\r\n Status = 'Status',\r\n StatusHitEffect = 'StatusHitEffect',\r\n StatusLoopVFX = 'StatusLoopVFX',\r\n Story = 'Story',\r\n SubmarineExploration = 'SubmarineExploration',\r\n SubmarinePart = 'SubmarinePart',\r\n SubmarineRank = 'SubmarineRank',\r\n SwitchTalk = 'SwitchTalk',\r\n TerritoryType = 'TerritoryType',\r\n TextCommand = 'TextCommand',\r\n Title = 'Title',\r\n Tomestones = 'Tomestones',\r\n TomestonesItem = 'TomestonesItem',\r\n TopicSelect = 'TopicSelect',\r\n Town = 'Town',\r\n Trait = 'Trait',\r\n TraitRecast = 'TraitRecast',\r\n TraitTransient = 'TraitTransient',\r\n Transformation = 'Transformation',\r\n Treasure = 'Treasure',\r\n TreasureHuntRank = 'TreasureHuntRank',\r\n Tribe = 'Tribe',\r\n TripleTriad = 'TripleTriad',\r\n TripleTriadCard = 'TripleTriadCard',\r\n TripleTriadCardRarity = 'TripleTriadCardRarity',\r\n TripleTriadCardResident = 'TripleTriadCardResident',\r\n TripleTriadCardType = 'TripleTriadCardType',\r\n TripleTriadCompetition = 'TripleTriadCompetition',\r\n TripleTriadRule = 'TripleTriadRule',\r\n Tutorial = 'Tutorial',\r\n TutorialDPS = 'TutorialDPS',\r\n TutorialHealer = 'TutorialHealer',\r\n TutorialTank = 'TutorialTank',\r\n VFX = 'VFX',\r\n VaseFlower = 'VaseFlower',\r\n Warp = 'Warp',\r\n WarpCondition = 'WarpCondition',\r\n WarpLogic = 'WarpLogic',\r\n Weather = 'Weather',\r\n WeatherGroup = 'WeatherGroup',\r\n WeatherRate = 'WeatherRate',\r\n WeddingBGM = 'WeddingBGM',\r\n WeeklyBingoOrderData = 'WeeklyBingoOrderData',\r\n WeeklyBingoRewardData = 'WeeklyBingoRewardData',\r\n WeeklyBingoText = 'WeeklyBingoText',\r\n WeeklyLotBonus = 'WeeklyLotBonus',\r\n World = 'World',\r\n WorldDCGroupType = 'WorldDCGroupType',\r\n YKW = 'YKW',\r\n ZoneSharedGroup = 'ZoneSharedGroup'\r\n}\r\n","/*\n * Public API Surface of angular-client\n */\nexport * from './lib/xivapi-client';\nexport * from './model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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