mirror of
https://github.com/iconify/iconify.git
synced 2024-12-12 13:47:49 +00:00
Add TypeScript as dev dependency to types, move hidden field from icon object, so it affects only JSON structure
This commit is contained in:
parent
5f9a03899c
commit
4ac1f0f199
@ -11,7 +11,7 @@ import { GetAPIConfig } from '../config';
|
|||||||
/**
|
/**
|
||||||
* Endpoint
|
* Endpoint
|
||||||
*/
|
*/
|
||||||
let endPoint = '{prefix}.json?icons={icons}';
|
const endPoint = '{prefix}.json?icons={icons}';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Cache
|
* Cache
|
||||||
@ -120,7 +120,7 @@ export const getAPIModule: GetIconifyAPIModule = (
|
|||||||
const iconsList = icons.join(',');
|
const iconsList = icons.join(',');
|
||||||
|
|
||||||
const cacheKey = provider + ':' + prefix;
|
const cacheKey = provider + ':' + prefix;
|
||||||
let path =
|
const path =
|
||||||
pathCache[cacheKey] +
|
pathCache[cacheKey] +
|
||||||
endPoint
|
endPoint
|
||||||
.replace('{provider}', provider)
|
.replace('{provider}', provider)
|
||||||
@ -144,7 +144,9 @@ export const getAPIModule: GetIconifyAPIModule = (
|
|||||||
// Store cache and complete
|
// Store cache and complete
|
||||||
status.done(data);
|
status.done(data);
|
||||||
})
|
})
|
||||||
.catch((err) => {});
|
.catch(() => {
|
||||||
|
//
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
// Return functions
|
// Return functions
|
||||||
|
@ -2,7 +2,7 @@ import { IconifyIcon } from '@iconify/types';
|
|||||||
import { merge } from '../misc/merge';
|
import { merge } from '../misc/merge';
|
||||||
|
|
||||||
export { IconifyIcon };
|
export { IconifyIcon };
|
||||||
export type FullIconifyIcon = Required<IconifyIcon>;
|
export type FullIconifyIcon = Omit<Required<IconifyIcon>, 'hidden'>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default values for IconifyIcon properties
|
* Default values for IconifyIcon properties
|
||||||
@ -22,5 +22,5 @@ export const iconDefaults: FullIconifyIcon = Object.freeze({
|
|||||||
* Create new icon with all properties
|
* Create new icon with all properties
|
||||||
*/
|
*/
|
||||||
export function fullIcon(icon: IconifyIcon): FullIconifyIcon {
|
export function fullIcon(icon: IconifyIcon): FullIconifyIcon {
|
||||||
return merge(iconDefaults, icon) as FullIconifyIcon;
|
return merge(iconDefaults, icon as FullIconifyIcon) as FullIconifyIcon;
|
||||||
}
|
}
|
||||||
|
2
packages/types/.gitignore
vendored
Normal file
2
packages/types/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
.DS_Store
|
||||||
|
node_modules
|
14
packages/types/package-lock.json
generated
Normal file
14
packages/types/package-lock.json
generated
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"name": "@iconify/types",
|
||||||
|
"version": "1.0.5",
|
||||||
|
"lockfileVersion": 1,
|
||||||
|
"requires": true,
|
||||||
|
"dependencies": {
|
||||||
|
"typescript": {
|
||||||
|
"version": "4.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.0.5.tgz",
|
||||||
|
"integrity": "sha512-ywmr/VrTVCmNTJ6iV2LwIrfG1P+lv6luD8sUJs+2eI9NLGigaN+nUQc13iHqisq7bra9lnmUSYqbJvegraBOPQ==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@iconify/types",
|
"name": "@iconify/types",
|
||||||
"description": "Types for Iconify data",
|
"description": "Types for Iconify data",
|
||||||
"version": "1.0.4",
|
"version": "1.0.5",
|
||||||
"author": "Vjacheslav Trushkin",
|
"author": "Vjacheslav Trushkin",
|
||||||
"license": "(Apache-2.0 OR GPL-2.0)",
|
"license": "(Apache-2.0 OR GPL-2.0)",
|
||||||
"main": "./index.js",
|
"main": "./index.js",
|
||||||
@ -16,6 +16,8 @@
|
|||||||
"url": "https://github.com/iconify/iconify.git",
|
"url": "https://github.com/iconify/iconify.git",
|
||||||
"directory": "packages/types"
|
"directory": "packages/types"
|
||||||
},
|
},
|
||||||
"devDependencies": {},
|
"devDependencies": {
|
||||||
|
"typescript": "^4.0.5"
|
||||||
|
},
|
||||||
"dependencies": {}
|
"dependencies": {}
|
||||||
}
|
}
|
||||||
|
@ -54,10 +54,7 @@ export interface IconifyTransformations {
|
|||||||
export interface IconifyOptional
|
export interface IconifyOptional
|
||||||
extends IconifyDimenisons,
|
extends IconifyDimenisons,
|
||||||
IconifyTransformations {
|
IconifyTransformations {
|
||||||
// True if icon is hidden.
|
//
|
||||||
// Used in icon sets to keep icons that no longer exist, but should still be accessible
|
|
||||||
// from API, preventing websites from breaking when icon is removed by developer.
|
|
||||||
hidden?: boolean;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -83,20 +80,33 @@ export interface IconifyIcon extends IconifyOptional {
|
|||||||
// If property is missing in JSON file, look in root object for default value.
|
// If property is missing in JSON file, look in root object for default value.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Icon with optional parameters that are provided by API and affect only search
|
||||||
|
*/
|
||||||
|
interface APIIconAttributes {
|
||||||
|
// True if icon is hidden.
|
||||||
|
// Used in icon sets to keep icons that no longer exist, but should still be accessible
|
||||||
|
// from API, preventing websites from breaking when icon is removed by developer.
|
||||||
|
hidden?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface ExtendedIconifyIcon extends IconifyIcon, APIIconAttributes {}
|
||||||
|
export interface ExtendedIconifyAlias extends IconifyAlias, APIIconAttributes {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* "icons" field of JSON file.
|
* "icons" field of JSON file.
|
||||||
*/
|
*/
|
||||||
export interface IconifyIcons {
|
export interface IconifyIcons {
|
||||||
// Index is name of icon, without prefix. Value is IconifyIcon object.
|
// Index is name of icon, without prefix. Value is ExtendedIconifyIcon object.
|
||||||
[index: string]: IconifyIcon;
|
[index: string]: ExtendedIconifyIcon;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* "aliases" field of JSON file.
|
* "aliases" field of JSON file.
|
||||||
*/
|
*/
|
||||||
export interface IconifyAliases {
|
export interface IconifyAliases {
|
||||||
// Index is name of icon, without prefix. Value is IconifyAlias object.
|
// Index is name of icon, without prefix. Value is ExtendedIconifyAlias object.
|
||||||
[index: string]: IconifyAlias;
|
[index: string]: ExtendedIconifyAlias;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user