@dicebear/big-ears-neutral 4.10.2 → 5.0.0-alpha.11

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.
Files changed (56) hide show
  1. package/README.md +2 -4
  2. package/lib/colors/index.d.ts +1 -0
  3. package/lib/colors/index.js +1 -0
  4. package/lib/colors/skin.d.ts +2 -0
  5. package/lib/colors/skin.js +7 -0
  6. package/lib/components/cheek.d.ts +2 -0
  7. package/lib/components/cheek.js +8 -0
  8. package/lib/components/eyes.d.ts +2 -0
  9. package/lib/components/eyes.js +34 -0
  10. package/lib/components/index.d.ts +4 -0
  11. package/lib/components/index.js +4 -0
  12. package/lib/components/mouth.d.ts +2 -0
  13. package/lib/components/mouth.js +40 -0
  14. package/lib/components/nose.d.ts +2 -0
  15. package/lib/components/nose.js +14 -0
  16. package/lib/core.d.ts +3 -0
  17. package/lib/core.js +66 -0
  18. package/{dist → lib}/hooks/onPostCreate.d.ts +11 -11
  19. package/lib/hooks/onPostCreate.js +3 -0
  20. package/lib/hooks/onPreCreate.d.ts +9 -0
  21. package/lib/hooks/onPreCreate.js +3 -0
  22. package/lib/index.d.ts +13 -0
  23. package/lib/index.js +13 -0
  24. package/lib/meta/components.d.ts +4 -0
  25. package/lib/meta/components.js +18 -0
  26. package/lib/schema.d.ts +2 -0
  27. package/lib/schema.js +346 -0
  28. package/lib/types.d.ts +24 -0
  29. package/lib/types.js +1 -0
  30. package/lib/utils/getColors.d.ts +8 -0
  31. package/lib/utils/getColors.js +10 -0
  32. package/lib/utils/getComponents.d.ts +8 -0
  33. package/lib/utils/getComponents.js +29 -0
  34. package/lib/utils/pickColor.d.ts +9 -0
  35. package/lib/utils/pickColor.js +13 -0
  36. package/lib/utils/pickComponent.d.ts +9 -0
  37. package/lib/utils/pickComponent.js +14 -0
  38. package/package.json +18 -21
  39. package/dist/colors/index.d.ts +0 -1
  40. package/dist/colors/skin.d.ts +0 -2
  41. package/dist/components/cheek.d.ts +0 -2
  42. package/dist/components/eyes.d.ts +0 -2
  43. package/dist/components/index.d.ts +0 -4
  44. package/dist/components/mouth.d.ts +0 -2
  45. package/dist/components/nose.d.ts +0 -2
  46. package/dist/core.d.ts +0 -3
  47. package/dist/hooks/onPreCreate.d.ts +0 -8
  48. package/dist/index.d.ts +0 -16
  49. package/dist/index.es.js +0 -288
  50. package/dist/index.js +0 -295
  51. package/dist/index.umd.js +0 -11
  52. package/dist/options.d.ts +0 -19
  53. package/dist/schema.d.ts +0 -2
  54. package/dist/static-types.d.ts +0 -16
  55. package/dist/utils/pickColor.d.ts +0 -3
  56. package/dist/utils/pickComponent.d.ts +0 -3
package/lib/schema.js ADDED
@@ -0,0 +1,346 @@
1
+ export const schema = {
2
+ title: 'Options',
3
+ $schema: 'http://json-schema.org/draft-07/schema#',
4
+ properties: {
5
+ backgroundColor: {
6
+ type: 'array',
7
+ items: {
8
+ type: 'string',
9
+ pattern: '^([0-9a-zA-Z]+|#[a-fA-F0-9]{3}|#[a-fA-F0-9]{4}|#[a-fA-F0-9]{6}|#[a-fA-F0-9]{8})$',
10
+ },
11
+ default: [
12
+ 'variant01',
13
+ 'variant02',
14
+ 'variant03',
15
+ 'variant04',
16
+ 'variant05',
17
+ ],
18
+ examples: [
19
+ ['variant01'],
20
+ ['variant02'],
21
+ ['variant03'],
22
+ ['variant04'],
23
+ ['variant05'],
24
+ ],
25
+ },
26
+ cheek: {
27
+ type: 'array',
28
+ items: {
29
+ type: 'string',
30
+ enum: [
31
+ 'variant06',
32
+ 'variant05',
33
+ 'variant04',
34
+ 'variant03',
35
+ 'variant02',
36
+ 'variant01',
37
+ ],
38
+ },
39
+ default: [
40
+ 'variant06',
41
+ 'variant05',
42
+ 'variant04',
43
+ 'variant03',
44
+ 'variant02',
45
+ 'variant01',
46
+ ],
47
+ examples: [
48
+ ['variant06'],
49
+ ['variant05'],
50
+ ['variant04'],
51
+ ['variant03'],
52
+ ['variant02'],
53
+ ['variant01'],
54
+ ],
55
+ },
56
+ cheekProbability: {
57
+ type: 'integer',
58
+ minimum: 0,
59
+ maximum: 100,
60
+ default: 50,
61
+ },
62
+ eyes: {
63
+ type: 'array',
64
+ items: {
65
+ type: 'string',
66
+ enum: [
67
+ 'variant32',
68
+ 'variant31',
69
+ 'variant30',
70
+ 'variant29',
71
+ 'variant28',
72
+ 'variant27',
73
+ 'variant26',
74
+ 'variant25',
75
+ 'variant24',
76
+ 'variant23',
77
+ 'variant22',
78
+ 'variant21',
79
+ 'variant20',
80
+ 'variant19',
81
+ 'variant18',
82
+ 'variant17',
83
+ 'variant16',
84
+ 'variant15',
85
+ 'variant14',
86
+ 'variant13',
87
+ 'variant12',
88
+ 'variant11',
89
+ 'variant10',
90
+ 'variant09',
91
+ 'variant08',
92
+ 'variant07',
93
+ 'variant06',
94
+ 'variant05',
95
+ 'variant04',
96
+ 'variant03',
97
+ 'variant02',
98
+ 'variant01',
99
+ ],
100
+ },
101
+ default: [
102
+ 'variant32',
103
+ 'variant31',
104
+ 'variant30',
105
+ 'variant29',
106
+ 'variant28',
107
+ 'variant27',
108
+ 'variant26',
109
+ 'variant25',
110
+ 'variant24',
111
+ 'variant23',
112
+ 'variant22',
113
+ 'variant21',
114
+ 'variant20',
115
+ 'variant19',
116
+ 'variant18',
117
+ 'variant17',
118
+ 'variant16',
119
+ 'variant15',
120
+ 'variant14',
121
+ 'variant13',
122
+ 'variant12',
123
+ 'variant11',
124
+ 'variant10',
125
+ 'variant09',
126
+ 'variant08',
127
+ 'variant07',
128
+ 'variant06',
129
+ 'variant05',
130
+ 'variant04',
131
+ 'variant03',
132
+ 'variant02',
133
+ 'variant01',
134
+ ],
135
+ examples: [
136
+ ['variant32'],
137
+ ['variant31'],
138
+ ['variant30'],
139
+ ['variant29'],
140
+ ['variant28'],
141
+ ['variant27'],
142
+ ['variant26'],
143
+ ['variant25'],
144
+ ['variant24'],
145
+ ['variant23'],
146
+ ['variant22'],
147
+ ['variant21'],
148
+ ['variant20'],
149
+ ['variant19'],
150
+ ['variant18'],
151
+ ['variant17'],
152
+ ['variant16'],
153
+ ['variant15'],
154
+ ['variant14'],
155
+ ['variant13'],
156
+ ['variant12'],
157
+ ['variant11'],
158
+ ['variant10'],
159
+ ['variant09'],
160
+ ['variant08'],
161
+ ['variant07'],
162
+ ['variant06'],
163
+ ['variant05'],
164
+ ['variant04'],
165
+ ['variant03'],
166
+ ['variant02'],
167
+ ['variant01'],
168
+ ],
169
+ },
170
+ mouth: {
171
+ type: 'array',
172
+ items: {
173
+ type: 'string',
174
+ enum: [
175
+ 'variant0708',
176
+ 'variant0707',
177
+ 'variant0706',
178
+ 'variant0705',
179
+ 'variant0704',
180
+ 'variant0703',
181
+ 'variant0702',
182
+ 'variant0701',
183
+ 'variant0405',
184
+ 'variant0605',
185
+ 'variant0604',
186
+ 'variant0603',
187
+ 'variant0602',
188
+ 'variant0601',
189
+ 'variant0505',
190
+ 'variant0504',
191
+ 'variant0503',
192
+ 'variant0502',
193
+ 'variant0501',
194
+ 'variant0404',
195
+ 'variant0403',
196
+ 'variant0402',
197
+ 'variant0401',
198
+ 'variant0305',
199
+ 'variant0304',
200
+ 'variant0303',
201
+ 'variant0302',
202
+ 'variant0301',
203
+ 'variant0205',
204
+ 'variant0204',
205
+ 'variant0203',
206
+ 'variant0202',
207
+ 'variant0201',
208
+ 'variant0105',
209
+ 'variant0104',
210
+ 'variant0103',
211
+ 'variant0102',
212
+ 'variant0101',
213
+ ],
214
+ },
215
+ default: [
216
+ 'variant0708',
217
+ 'variant0707',
218
+ 'variant0706',
219
+ 'variant0705',
220
+ 'variant0704',
221
+ 'variant0703',
222
+ 'variant0702',
223
+ 'variant0701',
224
+ 'variant0405',
225
+ 'variant0605',
226
+ 'variant0604',
227
+ 'variant0603',
228
+ 'variant0602',
229
+ 'variant0601',
230
+ 'variant0505',
231
+ 'variant0504',
232
+ 'variant0503',
233
+ 'variant0502',
234
+ 'variant0501',
235
+ 'variant0404',
236
+ 'variant0403',
237
+ 'variant0402',
238
+ 'variant0401',
239
+ 'variant0305',
240
+ 'variant0304',
241
+ 'variant0303',
242
+ 'variant0302',
243
+ 'variant0301',
244
+ 'variant0205',
245
+ 'variant0204',
246
+ 'variant0203',
247
+ 'variant0202',
248
+ 'variant0201',
249
+ 'variant0105',
250
+ 'variant0104',
251
+ 'variant0103',
252
+ 'variant0102',
253
+ 'variant0101',
254
+ ],
255
+ examples: [
256
+ ['variant0708'],
257
+ ['variant0707'],
258
+ ['variant0706'],
259
+ ['variant0705'],
260
+ ['variant0704'],
261
+ ['variant0703'],
262
+ ['variant0702'],
263
+ ['variant0701'],
264
+ ['variant0405'],
265
+ ['variant0605'],
266
+ ['variant0604'],
267
+ ['variant0603'],
268
+ ['variant0602'],
269
+ ['variant0601'],
270
+ ['variant0505'],
271
+ ['variant0504'],
272
+ ['variant0503'],
273
+ ['variant0502'],
274
+ ['variant0501'],
275
+ ['variant0404'],
276
+ ['variant0403'],
277
+ ['variant0402'],
278
+ ['variant0401'],
279
+ ['variant0305'],
280
+ ['variant0304'],
281
+ ['variant0303'],
282
+ ['variant0302'],
283
+ ['variant0301'],
284
+ ['variant0205'],
285
+ ['variant0204'],
286
+ ['variant0203'],
287
+ ['variant0202'],
288
+ ['variant0201'],
289
+ ['variant0105'],
290
+ ['variant0104'],
291
+ ['variant0103'],
292
+ ['variant0102'],
293
+ ['variant0101'],
294
+ ],
295
+ },
296
+ nose: {
297
+ type: 'array',
298
+ items: {
299
+ type: 'string',
300
+ enum: [
301
+ 'variant12',
302
+ 'variant11',
303
+ 'variant10',
304
+ 'variant09',
305
+ 'variant08',
306
+ 'variant07',
307
+ 'variant06',
308
+ 'variant05',
309
+ 'variant04',
310
+ 'variant03',
311
+ 'variant02',
312
+ 'variant01',
313
+ ],
314
+ },
315
+ default: [
316
+ 'variant12',
317
+ 'variant11',
318
+ 'variant10',
319
+ 'variant09',
320
+ 'variant08',
321
+ 'variant07',
322
+ 'variant06',
323
+ 'variant05',
324
+ 'variant04',
325
+ 'variant03',
326
+ 'variant02',
327
+ 'variant01',
328
+ ],
329
+ examples: [
330
+ ['variant12'],
331
+ ['variant11'],
332
+ ['variant10'],
333
+ ['variant09'],
334
+ ['variant08'],
335
+ ['variant07'],
336
+ ['variant06'],
337
+ ['variant05'],
338
+ ['variant04'],
339
+ ['variant03'],
340
+ ['variant02'],
341
+ ['variant01'],
342
+ ],
343
+ },
344
+ },
345
+ additionalProperties: false,
346
+ };
package/lib/types.d.ts ADDED
@@ -0,0 +1,24 @@
1
+ export interface Options {
2
+ mouth?: ('variant0708' | 'variant0707' | 'variant0706' | 'variant0705' | 'variant0704' | 'variant0703' | 'variant0702' | 'variant0701' | 'variant0405' | 'variant0605' | 'variant0604' | 'variant0603' | 'variant0602' | 'variant0601' | 'variant0505' | 'variant0504' | 'variant0503' | 'variant0502' | 'variant0501' | 'variant0404' | 'variant0403' | 'variant0402' | 'variant0401' | 'variant0305' | 'variant0304' | 'variant0303' | 'variant0302' | 'variant0301' | 'variant0205' | 'variant0204' | 'variant0203' | 'variant0202' | 'variant0201' | 'variant0105' | 'variant0104' | 'variant0103' | 'variant0102' | 'variant0101')[];
3
+ eyes?: ('variant32' | 'variant31' | 'variant30' | 'variant29' | 'variant28' | 'variant27' | 'variant26' | 'variant25' | 'variant24' | 'variant23' | 'variant22' | 'variant21' | 'variant20' | 'variant19' | 'variant18' | 'variant17' | 'variant16' | 'variant15' | 'variant14' | 'variant13' | 'variant12' | 'variant11' | 'variant10' | 'variant09' | 'variant08' | 'variant07' | 'variant06' | 'variant05' | 'variant04' | 'variant03' | 'variant02' | 'variant01')[];
4
+ cheek?: ('variant06' | 'variant05' | 'variant04' | 'variant03' | 'variant02' | 'variant01')[];
5
+ cheekProbability?: number;
6
+ nose?: ('variant12' | 'variant11' | 'variant10' | 'variant09' | 'variant08' | 'variant07' | 'variant06' | 'variant05' | 'variant04' | 'variant03' | 'variant02' | 'variant01')[];
7
+ backgroundColor?: string[];
8
+ }
9
+ export declare type ColorGroup = Record<string, ColorGroupItem>;
10
+ export declare type ColorGroupCollection = Record<string, ColorGroup>;
11
+ export declare type ColorGroupItem = string;
12
+ export declare type ColorPickCollection = Record<string, ColorPick>;
13
+ export declare type ColorPick = {
14
+ name: string;
15
+ value: ColorGroupItem;
16
+ };
17
+ export declare type ComponentGroup = Record<string, ComponentGroupItem>;
18
+ export declare type ComponentGroupCollection = Record<string, ComponentGroup>;
19
+ export declare type ComponentGroupItem = (components: ComponentPickCollection, colors: ColorPickCollection) => string;
20
+ export declare type ComponentPickCollection = Record<string, ComponentPick>;
21
+ export declare type ComponentPick = {
22
+ name: string;
23
+ value: ComponentGroupItem;
24
+ } | undefined;
package/lib/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { Options, ColorPickCollection } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ options: Options;
6
+ };
7
+ export declare function getColors({ prng, options }: Props): ColorPickCollection;
8
+ export {};
@@ -0,0 +1,10 @@
1
+ import { pickColor } from './pickColor.js';
2
+ export function getColors({ prng, options }) {
3
+ return {
4
+ background: pickColor({
5
+ prng,
6
+ group: 'skin',
7
+ values: options.backgroundColor,
8
+ }),
9
+ };
10
+ }
@@ -0,0 +1,8 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { Options, ComponentPickCollection } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ options: Options;
6
+ };
7
+ export declare function getComponents({ prng, options, }: Props): ComponentPickCollection;
8
+ export {};
@@ -0,0 +1,29 @@
1
+ import { pickComponent } from './pickComponent.js';
2
+ export function getComponents({ prng, options, }) {
3
+ const mouthComponent = pickComponent({
4
+ prng,
5
+ group: 'mouth',
6
+ values: options.mouth,
7
+ });
8
+ const eyesComponent = pickComponent({
9
+ prng,
10
+ group: 'eyes',
11
+ values: options.eyes,
12
+ });
13
+ const cheekComponent = pickComponent({
14
+ prng,
15
+ group: 'cheek',
16
+ values: options.cheek,
17
+ });
18
+ const noseComponent = pickComponent({
19
+ prng,
20
+ group: 'nose',
21
+ values: options.nose,
22
+ });
23
+ return {
24
+ mouth: mouthComponent,
25
+ eyes: eyesComponent,
26
+ cheek: prng.bool(options.cheekProbability) ? cheekComponent : undefined,
27
+ nose: noseComponent,
28
+ };
29
+ }
@@ -0,0 +1,9 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { ColorPick } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ group: string;
6
+ values?: string[];
7
+ };
8
+ export declare function pickColor({ prng, group, values }: Props): ColorPick;
9
+ export {};
@@ -0,0 +1,13 @@
1
+ import * as colors from '../colors/index.js';
2
+ export function pickColor({ prng, group, values = [] }) {
3
+ var _a;
4
+ const colorCollection = colors;
5
+ if (values.length === 0) {
6
+ values.push('transparent');
7
+ }
8
+ const key = prng.pick(values);
9
+ return {
10
+ name: key,
11
+ value: (_a = colorCollection[group][key]) !== null && _a !== void 0 ? _a : key,
12
+ };
13
+ }
@@ -0,0 +1,9 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { ComponentPick } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ group: string;
6
+ values?: string[];
7
+ };
8
+ export declare function pickComponent({ prng, group, values, }: Props): ComponentPick;
9
+ export {};
@@ -0,0 +1,14 @@
1
+ import * as components from '../components/index.js';
2
+ export function pickComponent({ prng, group, values = [], }) {
3
+ const componentCollection = components;
4
+ const key = prng.pick(values);
5
+ if (componentCollection[group][key]) {
6
+ return {
7
+ name: key,
8
+ value: componentCollection[group][key],
9
+ };
10
+ }
11
+ else {
12
+ return undefined;
13
+ }
14
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dicebear/big-ears-neutral",
3
- "version": "4.10.2",
3
+ "version": "5.0.0-alpha.11",
4
4
  "description": "Avatar style for DiceBear",
5
5
  "keywords": [
6
6
  "dicebear"
@@ -13,39 +13,36 @@
13
13
  "url": "git+https://github.com/dicebear/dicebear.git"
14
14
  },
15
15
  "license": "MIT",
16
- "source": "src/index.ts",
17
- "main": "dist/index.js",
18
- "module": "dist/index.es.js",
19
- "browser": "dist/index.umd.js",
20
- "types": "dist/index.d.ts",
16
+ "type": "module",
17
+ "exports": "./lib/index.js",
18
+ "types": "./lib/index.d.ts",
21
19
  "files": [
22
20
  "LICENSE",
23
- "README.md",
24
- "dist"
21
+ "lib",
22
+ "README.md"
25
23
  ],
26
24
  "scripts": {
27
- "test": "jest",
25
+ "prebuild": "del-cli lib",
26
+ "build": "tsc",
28
27
  "prepublishOnly": "npm run build",
29
- "prebuild": "shx rm -rf dist",
30
- "build": "dicebear-project build DiceBear.BigEarsNeutral"
28
+ "test": "uvu tests"
31
29
  },
32
30
  "devDependencies": {
33
- "@dicebear/avatars": "^4.10.2",
31
+ "@dicebear/core": "^5.0.0-alpha.11",
34
32
  "@tsconfig/recommended": "^1.0.0",
35
33
  "@types/jest": "^26.0.22",
36
- "@types/node": "^10.11.6",
37
- "dicebear-project": "^4.10.2",
38
- "jest": "^26.6.3",
39
- "shx": "^0.3.3",
40
- "ts-jest": "^26.5.4",
41
- "typescript": "^4.2.3",
42
- "utility-types": "^3.10.0"
34
+ "del-cli": "^4.0.1",
35
+ "typescript": "^4.5.2",
36
+ "uvu": "^0.5.2"
43
37
  },
44
38
  "peerDependencies": {
45
- "@dicebear/avatars": "^4.6.0"
39
+ "@dicebear/core": "^5.0.0-alpha.10"
40
+ },
41
+ "engines": {
42
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
46
43
  },
47
44
  "publishConfig": {
48
45
  "access": "public"
49
46
  },
50
- "gitHead": "28ffc2046de961f814b3c5804c562dd318821a7b"
47
+ "gitHead": "93e6f1be9fff392ded1f18c8320b6a0ca8e695c1"
51
48
  }
@@ -1 +0,0 @@
1
- export { skin } from './skin';
@@ -1,2 +0,0 @@
1
- import type { ColorGroup } from "../static-types";
2
- export declare const skin: ColorGroup;
@@ -1,2 +0,0 @@
1
- import type { ComponentGroup } from '../static-types';
2
- export declare const cheek: ComponentGroup;
@@ -1,2 +0,0 @@
1
- import type { ComponentGroup } from '../static-types';
2
- export declare const eyes: ComponentGroup;
@@ -1,4 +0,0 @@
1
- export { mouth } from './mouth';
2
- export { eyes } from './eyes';
3
- export { cheek } from './cheek';
4
- export { nose } from './nose';
@@ -1,2 +0,0 @@
1
- import type { ComponentGroup } from '../static-types';
2
- export declare const mouth: ComponentGroup;
@@ -1,2 +0,0 @@
1
- import type { ComponentGroup } from '../static-types';
2
- export declare const nose: ComponentGroup;
package/dist/core.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import type { Style } from '@dicebear/avatars';
2
- import type { Options } from './options';
3
- export declare const style: Style<Options>;
@@ -1,8 +0,0 @@
1
- import { Prng, StyleOptions } from "@dicebear/avatars";
2
- import { Options } from "../options";
3
- declare type Props = {
4
- prng: Prng;
5
- options: StyleOptions<Options>;
6
- };
7
- export declare function onPreCreate({ prng, options }: Props): void;
8
- export {};
package/dist/index.d.ts DELETED
@@ -1,16 +0,0 @@
1
- /*!
2
- * Big Ears Neutral (@dicebear/big-ears-neutral)
3
- *
4
- * Code licensed under MIT License.
5
- * Copyright (c) 2021 Florian Körner
6
- *
7
- * Design "Face Generator" by The Visual Team licensed under CC BY 4.0.
8
- * Source: https://www.figma.com/community/file/986078800058673824
9
- * License: https://creativecommons.org/licenses/by/4.0/
10
- */
11
- declare let create: import("@dicebear/avatars").StyleCreate<import("./options").Options>, meta: import("@dicebear/avatars").StyleMeta, schema: import("json-schema").JSONSchema7;
12
- export { create, meta, schema };
13
- export { Options } from './options';
14
- declare const _default: import("@dicebear/avatars").SpriteCollection<import("./options").Options>;
15
- /** @deprecated will be removed in Version 5.0 */
16
- export default _default;