datocms-plugin-sdk 2.0.12 → 2.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/hooks/renderPage.js.map +1 -1
- package/dist/cjs/icon.js.map +1 -1
- package/dist/cjs/manifest.js +51 -31
- package/dist/cjs/manifest.js.map +1 -1
- package/dist/esm/ctx/base.d.ts +2 -0
- package/dist/esm/hooks/onBeforeItemUpsert.d.ts +9 -2
- package/dist/esm/hooks/renderPage.d.ts +6 -0
- package/dist/esm/hooks/renderPage.js.map +1 -1
- package/dist/esm/icon.d.ts +39 -1
- package/dist/esm/icon.js.map +1 -1
- package/dist/esm/manifest.js +51 -31
- package/dist/esm/manifest.js.map +1 -1
- package/dist/types/ctx/base.d.ts +2 -0
- package/dist/types/hooks/onBeforeItemUpsert.d.ts +9 -2
- package/dist/types/hooks/renderPage.d.ts +6 -0
- package/dist/types/icon.d.ts +39 -1
- package/manifest.json +51 -31
- package/package.json +2 -2
- package/src/ctx/base.ts +3 -0
- package/src/hooks/onBeforeItemUpsert.ts +9 -2
- package/src/hooks/renderPage.ts +7 -0
- package/src/icon.ts +46 -3
- package/src/manifest.ts +52 -31
package/manifest.json
CHANGED
|
@@ -259,6 +259,16 @@
|
|
|
259
259
|
"lineNumber": 19
|
|
260
260
|
},
|
|
261
261
|
"type": "string"
|
|
262
|
+
},
|
|
263
|
+
"location": {
|
|
264
|
+
"comment": {
|
|
265
|
+
"markdownText": "Current page location."
|
|
266
|
+
},
|
|
267
|
+
"location": {
|
|
268
|
+
"filePath": "src/hooks/renderPage.ts",
|
|
269
|
+
"lineNumber": 22
|
|
270
|
+
},
|
|
271
|
+
"type": "{\n pathname: string;\n search: string;\n hash: string;\n }"
|
|
262
272
|
}
|
|
263
273
|
}
|
|
264
274
|
}
|
|
@@ -1606,7 +1616,7 @@
|
|
|
1606
1616
|
"onBeforeItemUpsert": {
|
|
1607
1617
|
"name": "onBeforeItemUpsert",
|
|
1608
1618
|
"comment": {
|
|
1609
|
-
"markdownText": "This
|
|
1619
|
+
"markdownText": "This hook is called when the user attempts to save a record. You can use it to block record saving.\n\nIf you return `false`, the record will NOT be saved. A small on-page error will say \"A plugin blocked the action\".\nHowever, for better UX, consider also using `ctx.alert()` to better explain to the user why their save was blocked.\n\nIf you return `true`, the save will proceed as normal.\n\nThis hook runs BEFORE serverside validation. You can use it to do your own additional validation before returning.\nClientside validations are not affected by this hook, since those occur on individual fields' `onBlur()` events.",
|
|
1610
1620
|
"tag": "beforeHooks"
|
|
1611
1621
|
},
|
|
1612
1622
|
"nonCtxArguments": [
|
|
@@ -1632,7 +1642,7 @@
|
|
|
1632
1642
|
},
|
|
1633
1643
|
"location": {
|
|
1634
1644
|
"filePath": "src/hooks/onBeforeItemUpsert.ts",
|
|
1635
|
-
"lineNumber":
|
|
1645
|
+
"lineNumber": 47
|
|
1636
1646
|
},
|
|
1637
1647
|
"type": "(path: string, locale?: string) => Promise<void>"
|
|
1638
1648
|
}
|
|
@@ -1643,7 +1653,7 @@
|
|
|
1643
1653
|
"returnType": "MaybePromise<boolean>",
|
|
1644
1654
|
"location": {
|
|
1645
1655
|
"filePath": "src/hooks/onBeforeItemUpsert.ts",
|
|
1646
|
-
"lineNumber":
|
|
1656
|
+
"lineNumber": 22
|
|
1647
1657
|
}
|
|
1648
1658
|
},
|
|
1649
1659
|
"manualFieldExtensions": {
|
|
@@ -2922,13 +2932,23 @@
|
|
|
2922
2932
|
},
|
|
2923
2933
|
"type": "string"
|
|
2924
2934
|
},
|
|
2935
|
+
"isEnvironmentPrimary": {
|
|
2936
|
+
"comment": {
|
|
2937
|
+
"markdownText": "Whether the current environment is the primary one."
|
|
2938
|
+
},
|
|
2939
|
+
"location": {
|
|
2940
|
+
"filePath": "src/ctx/base.ts",
|
|
2941
|
+
"lineNumber": 64
|
|
2942
|
+
},
|
|
2943
|
+
"type": "boolean"
|
|
2944
|
+
},
|
|
2925
2945
|
"owner": {
|
|
2926
2946
|
"comment": {
|
|
2927
2947
|
"markdownText": "The account/organization that is the project owner."
|
|
2928
2948
|
},
|
|
2929
2949
|
"location": {
|
|
2930
2950
|
"filePath": "src/ctx/base.ts",
|
|
2931
|
-
"lineNumber":
|
|
2951
|
+
"lineNumber": 67
|
|
2932
2952
|
},
|
|
2933
2953
|
"type": "Account | Organization"
|
|
2934
2954
|
},
|
|
@@ -2939,7 +2959,7 @@
|
|
|
2939
2959
|
},
|
|
2940
2960
|
"location": {
|
|
2941
2961
|
"filePath": "src/ctx/base.ts",
|
|
2942
|
-
"lineNumber":
|
|
2962
|
+
"lineNumber": 75
|
|
2943
2963
|
},
|
|
2944
2964
|
"type": "Account | undefined"
|
|
2945
2965
|
},
|
|
@@ -2949,7 +2969,7 @@
|
|
|
2949
2969
|
},
|
|
2950
2970
|
"location": {
|
|
2951
2971
|
"filePath": "src/ctx/base.ts",
|
|
2952
|
-
"lineNumber":
|
|
2972
|
+
"lineNumber": 81
|
|
2953
2973
|
},
|
|
2954
2974
|
"type": "{\n /** Preferred locale */\n locale: string;\n }"
|
|
2955
2975
|
},
|
|
@@ -2959,7 +2979,7 @@
|
|
|
2959
2979
|
},
|
|
2960
2980
|
"location": {
|
|
2961
2981
|
"filePath": "src/ctx/base.ts",
|
|
2962
|
-
"lineNumber":
|
|
2982
|
+
"lineNumber": 87
|
|
2963
2983
|
},
|
|
2964
2984
|
"type": "Theme"
|
|
2965
2985
|
}
|
|
@@ -2977,7 +2997,7 @@
|
|
|
2977
2997
|
},
|
|
2978
2998
|
"location": {
|
|
2979
2999
|
"filePath": "src/ctx/base.ts",
|
|
2980
|
-
"lineNumber":
|
|
3000
|
+
"lineNumber": 97
|
|
2981
3001
|
},
|
|
2982
3002
|
"type": "Partial<Record<string, ItemType>>"
|
|
2983
3003
|
},
|
|
@@ -2987,7 +3007,7 @@
|
|
|
2987
3007
|
},
|
|
2988
3008
|
"location": {
|
|
2989
3009
|
"filePath": "src/ctx/base.ts",
|
|
2990
|
-
"lineNumber":
|
|
3010
|
+
"lineNumber": 104
|
|
2991
3011
|
},
|
|
2992
3012
|
"type": "Partial<Record<string, Field>>"
|
|
2993
3013
|
},
|
|
@@ -2997,7 +3017,7 @@
|
|
|
2997
3017
|
},
|
|
2998
3018
|
"location": {
|
|
2999
3019
|
"filePath": "src/ctx/base.ts",
|
|
3000
|
-
"lineNumber":
|
|
3020
|
+
"lineNumber": 111
|
|
3001
3021
|
},
|
|
3002
3022
|
"type": "Partial<Record<string, Fieldset>>"
|
|
3003
3023
|
},
|
|
@@ -3007,7 +3027,7 @@
|
|
|
3007
3027
|
},
|
|
3008
3028
|
"location": {
|
|
3009
3029
|
"filePath": "src/ctx/base.ts",
|
|
3010
|
-
"lineNumber":
|
|
3030
|
+
"lineNumber": 118
|
|
3011
3031
|
},
|
|
3012
3032
|
"type": "Partial<Record<string, User>>"
|
|
3013
3033
|
},
|
|
@@ -3017,7 +3037,7 @@
|
|
|
3017
3037
|
},
|
|
3018
3038
|
"location": {
|
|
3019
3039
|
"filePath": "src/ctx/base.ts",
|
|
3020
|
-
"lineNumber":
|
|
3040
|
+
"lineNumber": 125
|
|
3021
3041
|
},
|
|
3022
3042
|
"type": "Partial<Record<string, SsoUser>>"
|
|
3023
3043
|
}
|
|
@@ -3038,7 +3058,7 @@
|
|
|
3038
3058
|
},
|
|
3039
3059
|
"location": {
|
|
3040
3060
|
"filePath": "src/ctx/base.ts",
|
|
3041
|
-
"lineNumber":
|
|
3061
|
+
"lineNumber": 168
|
|
3042
3062
|
},
|
|
3043
3063
|
"type": "(itemTypeId: string) => Promise<Field[]>"
|
|
3044
3064
|
},
|
|
@@ -3049,7 +3069,7 @@
|
|
|
3049
3069
|
},
|
|
3050
3070
|
"location": {
|
|
3051
3071
|
"filePath": "src/ctx/base.ts",
|
|
3052
|
-
"lineNumber":
|
|
3072
|
+
"lineNumber": 187
|
|
3053
3073
|
},
|
|
3054
3074
|
"type": "(itemTypeId: string) => Promise<Fieldset[]>"
|
|
3055
3075
|
},
|
|
@@ -3060,7 +3080,7 @@
|
|
|
3060
3080
|
},
|
|
3061
3081
|
"location": {
|
|
3062
3082
|
"filePath": "src/ctx/base.ts",
|
|
3063
|
-
"lineNumber":
|
|
3083
|
+
"lineNumber": 204
|
|
3064
3084
|
},
|
|
3065
3085
|
"type": "() => Promise<Field[]>"
|
|
3066
3086
|
},
|
|
@@ -3071,7 +3091,7 @@
|
|
|
3071
3091
|
},
|
|
3072
3092
|
"location": {
|
|
3073
3093
|
"filePath": "src/ctx/base.ts",
|
|
3074
|
-
"lineNumber":
|
|
3094
|
+
"lineNumber": 217
|
|
3075
3095
|
},
|
|
3076
3096
|
"type": "() => Promise<User[]>"
|
|
3077
3097
|
},
|
|
@@ -3082,7 +3102,7 @@
|
|
|
3082
3102
|
},
|
|
3083
3103
|
"location": {
|
|
3084
3104
|
"filePath": "src/ctx/base.ts",
|
|
3085
|
-
"lineNumber":
|
|
3105
|
+
"lineNumber": 230
|
|
3086
3106
|
},
|
|
3087
3107
|
"type": "() => Promise<SsoUser[]>"
|
|
3088
3108
|
}
|
|
@@ -3101,7 +3121,7 @@
|
|
|
3101
3121
|
},
|
|
3102
3122
|
"location": {
|
|
3103
3123
|
"filePath": "src/ctx/base.ts",
|
|
3104
|
-
"lineNumber":
|
|
3124
|
+
"lineNumber": 252
|
|
3105
3125
|
},
|
|
3106
3126
|
"type": "(params: Record<string, unknown>) => Promise<void>"
|
|
3107
3127
|
},
|
|
@@ -3112,7 +3132,7 @@
|
|
|
3112
3132
|
},
|
|
3113
3133
|
"location": {
|
|
3114
3134
|
"filePath": "src/ctx/base.ts",
|
|
3115
|
-
"lineNumber":
|
|
3135
|
+
"lineNumber": 303
|
|
3116
3136
|
},
|
|
3117
3137
|
"type": "(\n fieldId: string,\n changes: FieldAppearanceChange[],\n ) => Promise<void>"
|
|
3118
3138
|
}
|
|
@@ -3131,7 +3151,7 @@
|
|
|
3131
3151
|
},
|
|
3132
3152
|
"location": {
|
|
3133
3153
|
"filePath": "src/ctx/base.ts",
|
|
3134
|
-
"lineNumber":
|
|
3154
|
+
"lineNumber": 408
|
|
3135
3155
|
},
|
|
3136
3156
|
"type": "(message: string) => Promise<void>"
|
|
3137
3157
|
},
|
|
@@ -3142,7 +3162,7 @@
|
|
|
3142
3162
|
},
|
|
3143
3163
|
"location": {
|
|
3144
3164
|
"filePath": "src/ctx/base.ts",
|
|
3145
|
-
"lineNumber":
|
|
3165
|
+
"lineNumber": 423
|
|
3146
3166
|
},
|
|
3147
3167
|
"type": "(message: string) => Promise<void>"
|
|
3148
3168
|
},
|
|
@@ -3153,7 +3173,7 @@
|
|
|
3153
3173
|
},
|
|
3154
3174
|
"location": {
|
|
3155
3175
|
"filePath": "src/ctx/base.ts",
|
|
3156
|
-
"lineNumber":
|
|
3176
|
+
"lineNumber": 447
|
|
3157
3177
|
},
|
|
3158
3178
|
"type": "<CtaValue = unknown>(\n toast: Toast<CtaValue>,\n ) => Promise<CtaValue | null>"
|
|
3159
3179
|
}
|
|
@@ -3172,7 +3192,7 @@
|
|
|
3172
3192
|
},
|
|
3173
3193
|
"location": {
|
|
3174
3194
|
"filePath": "src/ctx/base.ts",
|
|
3175
|
-
"lineNumber":
|
|
3195
|
+
"lineNumber": 333
|
|
3176
3196
|
},
|
|
3177
3197
|
"type": "(itemTypeId: string) => Promise<Item | null>"
|
|
3178
3198
|
},
|
|
@@ -3183,7 +3203,7 @@
|
|
|
3183
3203
|
},
|
|
3184
3204
|
"location": {
|
|
3185
3205
|
"filePath": "src/ctx/base.ts",
|
|
3186
|
-
"lineNumber":
|
|
3206
|
+
"lineNumber": 354
|
|
3187
3207
|
},
|
|
3188
3208
|
"type": "{\n (\n itemTypeId: string,\n options: { multiple: true; initialLocationQuery?: ItemListLocationQuery },\n ): Promise<Item[] | null>;\n (\n itemTypeId: string,\n options?: {\n multiple: false;\n initialLocationQuery?: ItemListLocationQuery;\n },\n ): Promise<Item | null>;\n }"
|
|
3189
3209
|
},
|
|
@@ -3194,7 +3214,7 @@
|
|
|
3194
3214
|
},
|
|
3195
3215
|
"location": {
|
|
3196
3216
|
"filePath": "src/ctx/base.ts",
|
|
3197
|
-
"lineNumber":
|
|
3217
|
+
"lineNumber": 386
|
|
3198
3218
|
},
|
|
3199
3219
|
"type": "(itemId: string) => Promise<Item | null>"
|
|
3200
3220
|
}
|
|
@@ -3213,7 +3233,7 @@
|
|
|
3213
3233
|
},
|
|
3214
3234
|
"location": {
|
|
3215
3235
|
"filePath": "src/ctx/base.ts",
|
|
3216
|
-
"lineNumber":
|
|
3236
|
+
"lineNumber": 474
|
|
3217
3237
|
},
|
|
3218
3238
|
"type": "{\n (options: { multiple: true }): Promise<Upload[] | null>;\n (options?: { multiple: false }): Promise<Upload | null>;\n }"
|
|
3219
3239
|
},
|
|
@@ -3224,7 +3244,7 @@
|
|
|
3224
3244
|
},
|
|
3225
3245
|
"location": {
|
|
3226
3246
|
"filePath": "src/ctx/base.ts",
|
|
3227
|
-
"lineNumber":
|
|
3247
|
+
"lineNumber": 502
|
|
3228
3248
|
},
|
|
3229
3249
|
"type": "(\n uploadId: string,\n ) => Promise<(Upload & { deleted?: true }) | null>"
|
|
3230
3250
|
},
|
|
@@ -3235,7 +3255,7 @@
|
|
|
3235
3255
|
},
|
|
3236
3256
|
"location": {
|
|
3237
3257
|
"filePath": "src/ctx/base.ts",
|
|
3238
|
-
"lineNumber":
|
|
3258
|
+
"lineNumber": 530
|
|
3239
3259
|
},
|
|
3240
3260
|
"type": "(\n /** The \"single asset\" field structure */\n fileFieldValue: FileFieldValue,\n /** Shows metadata information for a specific locale */\n locale?: string,\n ) => Promise<FileFieldValue | null>"
|
|
3241
3261
|
}
|
|
@@ -3254,7 +3274,7 @@
|
|
|
3254
3274
|
},
|
|
3255
3275
|
"location": {
|
|
3256
3276
|
"filePath": "src/ctx/base.ts",
|
|
3257
|
-
"lineNumber":
|
|
3277
|
+
"lineNumber": 561
|
|
3258
3278
|
},
|
|
3259
3279
|
"type": "(modal: Modal) => Promise<unknown>"
|
|
3260
3280
|
},
|
|
@@ -3265,7 +3285,7 @@
|
|
|
3265
3285
|
},
|
|
3266
3286
|
"location": {
|
|
3267
3287
|
"filePath": "src/ctx/base.ts",
|
|
3268
|
-
"lineNumber":
|
|
3288
|
+
"lineNumber": 598
|
|
3269
3289
|
},
|
|
3270
3290
|
"type": "(options: ConfirmOptions) => Promise<unknown>"
|
|
3271
3291
|
}
|
|
@@ -3284,7 +3304,7 @@
|
|
|
3284
3304
|
},
|
|
3285
3305
|
"location": {
|
|
3286
3306
|
"filePath": "src/ctx/base.ts",
|
|
3287
|
-
"lineNumber":
|
|
3307
|
+
"lineNumber": 612
|
|
3288
3308
|
},
|
|
3289
3309
|
"type": "(path: string) => Promise<void>"
|
|
3290
3310
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datocms-plugin-sdk",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.15",
|
|
4
4
|
"description": "DatoCMS Plugin SDK",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"datocms",
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
"glob": "^11.0.0",
|
|
46
46
|
"typescript": "^5.6.2"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "6698d6f38549b0487ee4721862483d811512bf73"
|
|
49
49
|
}
|
package/src/ctx/base.ts
CHANGED
|
@@ -60,6 +60,9 @@ type ProjectProperties = {
|
|
|
60
60
|
/** The ID of the current environment */
|
|
61
61
|
environment: string;
|
|
62
62
|
|
|
63
|
+
/** Whether the current environment is the primary one */
|
|
64
|
+
isEnvironmentPrimary: boolean;
|
|
65
|
+
|
|
63
66
|
/** The account/organization that is the project owner */
|
|
64
67
|
owner: Account | Organization;
|
|
65
68
|
|
|
@@ -7,8 +7,15 @@ type ItemCreateSchema = SchemaTypes.ItemCreateSchema;
|
|
|
7
7
|
|
|
8
8
|
export type OnBeforeItemUpsertHook = {
|
|
9
9
|
/**
|
|
10
|
-
* This
|
|
11
|
-
*
|
|
10
|
+
* This hook is called when the user attempts to save a record. You can use it to block record saving.
|
|
11
|
+
*
|
|
12
|
+
* If you return `false`, the record will NOT be saved. A small on-page error will say "A plugin blocked the action".
|
|
13
|
+
* However, for better UX, consider also using `ctx.alert()` to better explain to the user why their save was blocked.
|
|
14
|
+
*
|
|
15
|
+
* If you return `true`, the save will proceed as normal.
|
|
16
|
+
*
|
|
17
|
+
* This hook runs BEFORE serverside validation. You can use it to do your own additional validation before returning.
|
|
18
|
+
* Clientside validations are not affected by this hook, since those occur on individual fields' `onBlur()` events.
|
|
12
19
|
*
|
|
13
20
|
* @tag beforeHooks
|
|
14
21
|
*/
|
package/src/hooks/renderPage.ts
CHANGED
|
@@ -17,6 +17,13 @@ export type RenderPageCtx = ImposedSizePluginFrameCtx<
|
|
|
17
17
|
{
|
|
18
18
|
/** The ID of the page that needs to be rendered */
|
|
19
19
|
pageId: string;
|
|
20
|
+
|
|
21
|
+
/** Current page location */
|
|
22
|
+
location: {
|
|
23
|
+
pathname: string;
|
|
24
|
+
search: string;
|
|
25
|
+
hash: string;
|
|
26
|
+
};
|
|
20
27
|
}
|
|
21
28
|
>;
|
|
22
29
|
|
package/src/icon.ts
CHANGED
|
@@ -1,8 +1,44 @@
|
|
|
1
1
|
import { isRecord, isString } from './guardUtils.js';
|
|
2
2
|
|
|
3
|
-
export type Icon =
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
export type Icon = AwesomeFontIconIdentifier | SvgDefinition;
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Defines a custom SVG icon for use in DatoCMS plugins.
|
|
7
|
+
*
|
|
8
|
+
* To create an SVG definition from an existing SVG file:
|
|
9
|
+
* 1. Grab the `viewBox` attribute from your SVG element (e.g., "0 0 24 24")
|
|
10
|
+
* 2. Grab everything between the `<svg>` tags as the content (all the paths, circles, etc.)
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* // From this SVG:
|
|
15
|
+
* // <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
16
|
+
* // <path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/>
|
|
17
|
+
* // </svg>
|
|
18
|
+
*
|
|
19
|
+
* const starIcon: SvgDefinition = {
|
|
20
|
+
* type: 'svg',
|
|
21
|
+
* viewBox: '0 0 24 24',
|
|
22
|
+
* content: '<path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/>'
|
|
23
|
+
* };
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export type SvgDefinition = {
|
|
27
|
+
/** Always set to 'svg' to indicate this is a custom SVG icon */
|
|
28
|
+
type: 'svg';
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* The viewBox attribute from your SVG element (e.g., "0 0 24 24").
|
|
32
|
+
* This defines the coordinate system and aspect ratio of the SVG.
|
|
33
|
+
*/
|
|
34
|
+
viewBox: string;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* The inner content of your SVG element — everything between the opening and closing <svg> tags.
|
|
38
|
+
* This includes all paths, circles, rectangles, and other SVG elements that make up your icon.
|
|
39
|
+
*/
|
|
40
|
+
content: string;
|
|
41
|
+
};
|
|
6
42
|
|
|
7
43
|
export function isIcon(value: unknown): value is Icon {
|
|
8
44
|
return (
|
|
@@ -14,6 +50,13 @@ export function isIcon(value: unknown): value is Icon {
|
|
|
14
50
|
);
|
|
15
51
|
}
|
|
16
52
|
|
|
53
|
+
/**
|
|
54
|
+
* Font Awesome icon identifier for use in DatoCMS plugins.
|
|
55
|
+
*
|
|
56
|
+
* Use Font Awesome icons for consistent visual styling across the admin interface.
|
|
57
|
+
* This is the recommended approach for most plugin icons, with custom SVGs reserved
|
|
58
|
+
* primarily for brand/company logos where Font Awesome doesn't have an appropriate match.
|
|
59
|
+
*/
|
|
17
60
|
export type AwesomeFontIconIdentifier =
|
|
18
61
|
| '0'
|
|
19
62
|
| '00'
|