1
0
Fork 0

chore(models): Port to cis-prefix

This commit is contained in:
Joost De Cock 2022-09-06 16:52:28 +02:00
parent 040331dbac
commit 9d5b1b5873
7 changed files with 141 additions and 141 deletions

View file

@ -1,18 +1,18 @@
import { measurements, neckstimate, SHEHER, HEHIM } from './neckstimate.mjs' import { measurements, neckstimate, CISFEMALE, CISMALE } from './neckstimate.mjs'
const getMeasurements = (size, pronouns) => { const getMeasurements = (size, index) => {
const all = {} const all = {}
for (const m of measurements) { for (const m of measurements) {
all[m] = neckstimate(size * 10, m, pronouns) all[m] = neckstimate(size * 10, m, index)
} }
return all return all
} }
const multiplyMeasurements = (factor, pronouns) => { const multiplyMeasurements = (factor, index) => {
const all = {} const all = {}
for (const m of measurements) { for (const m of measurements) {
all[m] = factor * neckstimate(pronouns === 0 ? '340' : '380', m, pronouns) all[m] = factor * neckstimate(index === 0 ? '340' : '380', m, index)
} }
return all return all
@ -21,126 +21,126 @@ const multiplyMeasurements = (factor, pronouns) => {
export const groups = [ 'adult', 'doll', 'giant' ] export const groups = [ 'adult', 'doll', 'giant' ]
export const sizes = { export const sizes = {
adultsheher: [28,30,32,34,36,38,40,42,44,46], cisFemaleAdult: [28,30,32,34,36,38,40,42,44,46],
adulthehim: [32,34,36,38,40,42,44,46,48,50], cisMaleAdult: [32,34,36,38,40,42,44,46,48,50],
dollsheher: [10, 20, 30, 40, 50, 60], cisFemaleDoll: [10, 20, 30, 40, 50, 60],
dollhehim: [10, 20, 30, 40, 50, 60], cisMaleDoll: [10, 20, 30, 40, 50, 60],
giantsheher: [150, 200, 250, 300], cisFemaleGiant: [150, 200, 250, 300],
gianthehim: [150, 200, 250, 300], cisMaleGiant: [150, 200, 250, 300],
} }
export const adultsheher28 = getMeasurements(28, SHEHER) export const cisFemaleAdult28 = getMeasurements(28, CISFEMALE)
export const adultsheher30 = getMeasurements(30, SHEHER) export const cisFemaleAdult30 = getMeasurements(30, CISFEMALE)
export const adultsheher32 = getMeasurements(32, SHEHER) export const cisFemaleAdult32 = getMeasurements(32, CISFEMALE)
export const adultsheher34 = getMeasurements(34, SHEHER) export const cisFemaleAdult34 = getMeasurements(34, CISFEMALE)
export const adultsheher36 = getMeasurements(36, SHEHER) export const cisFemaleAdult36 = getMeasurements(36, CISFEMALE)
export const adultsheher38 = getMeasurements(38, SHEHER) export const cisFemaleAdult38 = getMeasurements(38, CISFEMALE)
export const adultsheher40 = getMeasurements(40, SHEHER) export const cisFemaleAdult40 = getMeasurements(40, CISFEMALE)
export const adultsheher42 = getMeasurements(42, SHEHER) export const cisFemaleAdult42 = getMeasurements(42, CISFEMALE)
export const adultsheher44 = getMeasurements(44, SHEHER) export const cisFemaleAdult44 = getMeasurements(44, CISFEMALE)
export const adultsheher46 = getMeasurements(46, SHEHER) export const cisFemaleAdult46 = getMeasurements(46, CISFEMALE)
export const adulthehim32 = getMeasurements(32, HEHIM) export const cisMaleAdult32 = getMeasurements(32, CISMALE)
export const adulthehim34 = getMeasurements(34, HEHIM) export const cisMaleAdult34 = getMeasurements(34, CISMALE)
export const adulthehim36 = getMeasurements(36, HEHIM) export const cisMaleAdult36 = getMeasurements(36, CISMALE)
export const adulthehim38 = getMeasurements(38, HEHIM) export const cisMaleAdult38 = getMeasurements(38, CISMALE)
export const adulthehim40 = getMeasurements(40, HEHIM) export const cisMaleAdult40 = getMeasurements(40, CISMALE)
export const adulthehim42 = getMeasurements(42, HEHIM) export const cisMaleAdult42 = getMeasurements(42, CISMALE)
export const adulthehim44 = getMeasurements(44, HEHIM) export const cisMaleAdult44 = getMeasurements(44, CISMALE)
export const adulthehim46 = getMeasurements(46, HEHIM) export const cisMaleAdult46 = getMeasurements(46, CISMALE)
export const adulthehim48 = getMeasurements(48, HEHIM) export const cisMaleAdult48 = getMeasurements(48, CISMALE)
export const adulthehim50 = getMeasurements(50, HEHIM) export const cisMaleAdult50 = getMeasurements(50, CISMALE)
export const dollsheher10 = multiplyMeasurements(0.1, SHEHER) export const cisFemaleDoll10 = multiplyMeasurements(0.1, CISFEMALE)
export const dollsheher20 = multiplyMeasurements(0.2, SHEHER) export const cisFemaleDoll20 = multiplyMeasurements(0.2, CISFEMALE)
export const dollsheher30 = multiplyMeasurements(0.3, SHEHER) export const cisFemaleDoll30 = multiplyMeasurements(0.3, CISFEMALE)
export const dollsheher40 = multiplyMeasurements(0.4, SHEHER) export const cisFemaleDoll40 = multiplyMeasurements(0.4, CISFEMALE)
export const dollsheher50 = multiplyMeasurements(0.5, SHEHER) export const cisFemaleDoll50 = multiplyMeasurements(0.5, CISFEMALE)
export const dollsheher60 = multiplyMeasurements(0.6, SHEHER) export const cisFemaleDoll60 = multiplyMeasurements(0.6, CISFEMALE)
export const dollhehim10 = multiplyMeasurements(0.1, HEHIM) export const cisMaleDoll10 = multiplyMeasurements(0.1, CISMALE)
export const dollhehim20 = multiplyMeasurements(0.2, HEHIM) export const cisMaleDoll20 = multiplyMeasurements(0.2, CISMALE)
export const dollhehim30 = multiplyMeasurements(0.3, HEHIM) export const cisMaleDoll30 = multiplyMeasurements(0.3, CISMALE)
export const dollhehim40 = multiplyMeasurements(0.4, HEHIM) export const cisMaleDoll40 = multiplyMeasurements(0.4, CISMALE)
export const dollhehim50 = multiplyMeasurements(0.5, HEHIM) export const cisMaleDoll50 = multiplyMeasurements(0.5, CISMALE)
export const dollhehim60 = multiplyMeasurements(0.6, HEHIM) export const cisMaleDoll60 = multiplyMeasurements(0.6, CISMALE)
export const giantsheher150 = multiplyMeasurements(1.5, SHEHER) export const cisFemaleGiant150 = multiplyMeasurements(1.5, CISFEMALE)
export const giantsheher200 = multiplyMeasurements(2, SHEHER) export const cisFemaleGiant200 = multiplyMeasurements( 2, CISFEMALE)
export const giantsheher250 = multiplyMeasurements(2.5, SHEHER) export const cisFemaleGiant250 = multiplyMeasurements(2.5, CISFEMALE)
export const giantsheher300 = multiplyMeasurements(3, SHEHER) export const cisFemaleGiant300 = multiplyMeasurements( 3, CISFEMALE)
export const gianthehim150 = multiplyMeasurements(1.5, HEHIM) export const cisMaleGiant150 = multiplyMeasurements(1.5, CISMALE)
export const gianthehim200 = multiplyMeasurements(2, HEHIM) export const cisMaleGiant200 = multiplyMeasurements( 2, CISMALE)
export const gianthehim250 = multiplyMeasurements(2.5, HEHIM) export const cisMaleGiant250 = multiplyMeasurements(2.5, CISMALE)
export const gianthehim300 = multiplyMeasurements(3, HEHIM) export const cisMaleGiant300 = multiplyMeasurements( 3, CISMALE)
export const adultsheher = { export const cisFemaleAdult = {
28: adultsheher28, 28: cisFemaleAdult28,
30: adultsheher30, 30: cisFemaleAdult30,
32: adultsheher32, 32: cisFemaleAdult32,
34: adultsheher34, 34: cisFemaleAdult34,
36: adultsheher36, 36: cisFemaleAdult36,
38: adultsheher38, 38: cisFemaleAdult38,
40: adultsheher40, 40: cisFemaleAdult40,
42: adultsheher42, 42: cisFemaleAdult42,
44: adultsheher44, 44: cisFemaleAdult44,
46: adultsheher46, 46: cisFemaleAdult46,
} }
export const adulthehim = { export const cisMaleAdult = {
32: adulthehim32, 32: cisMaleAdult32,
34: adulthehim34, 34: cisMaleAdult34,
36: adulthehim36, 36: cisMaleAdult36,
38: adulthehim38, 38: cisMaleAdult38,
40: adulthehim40, 40: cisMaleAdult40,
42: adulthehim42, 42: cisMaleAdult42,
44: adulthehim44, 44: cisMaleAdult44,
46: adulthehim46, 46: cisMaleAdult46,
48: adulthehim48, 48: cisMaleAdult48,
50: adulthehim50, 50: cisMaleAdult50,
} }
export const adults = { export const adult = {
sheher: adultsheher, cisFemale: cisFemaleAdult,
hehim:adulthehim, cisMale: cisMaleAdult,
} }
export const dollsheher = { export const cisFemaleDoll = {
10: dollsheher10, 10: cisFemaleDoll10,
20: dollsheher20, 20: cisFemaleDoll20,
30: dollsheher30, 30: cisFemaleDoll30,
40: dollsheher40, 40: cisFemaleDoll40,
50: dollsheher50, 50: cisFemaleDoll50,
60: dollsheher60, 60: cisFemaleDoll60,
} }
export const dollhehim = { export const cisMaleDoll = {
10: dollhehim10, 10: cisMaleDoll10,
20: dollhehim20, 20: cisMaleDoll20,
30: dollhehim30, 30: cisMaleDoll30,
40: dollhehim40, 40: cisMaleDoll40,
50: dollhehim50, 50: cisMaleDoll50,
60: dollhehim60, 60: cisMaleDoll60,
} }
export const dolls = { export const doll = {
sheher: dollsheher, cisFemale: cisFemaleDoll,
hehim: dollhehim, cisMale: cisMaleDoll,
} }
export const giantsheher = { export const cisFemaleGiant = {
150: giantsheher150, 150: cisFemaleGiant150,
200: giantsheher200, 200: cisFemaleGiant200,
250: giantsheher250, 250: cisFemaleGiant250,
300: giantsheher300, 300: cisFemaleGiant300,
} }
export const gianthehim = { export const cisMaleGiant = {
150: gianthehim150, 150: cisMaleGiant150,
200: gianthehim200, 200: cisMaleGiant200,
250: gianthehim250, 250: cisMaleGiant250,
300: gianthehim300, 300: cisMaleGiant300,
} }
export const giants = { export const giant = {
sheher: giantsheher, cisFemale: cisFemaleGiant,
hehim: gianthehim, cisMale: cisMaleGiant,
} }
export { measurements } export { measurements }

View file

@ -8,8 +8,8 @@
*/ */
// This signifies the index in the array of a measurements' value // This signifies the index in the array of a measurements' value
export const SHEHER = 0 export const CISFEMALE = 0
export const HEHIM = 1 export const CISMALE = 1
const base = { const base = {
ankle: [245, 235], ankle: [245, 235],

View file

@ -7,7 +7,7 @@ const { measurements, sizes } = all
describe('Measurements', () => { describe('Measurements', () => {
it("Measurements should be a named export and match the sizes", () => { it("Measurements should be a named export and match the sizes", () => {
for (const m of measurements) { for (const m of measurements) {
expect(typeof all.adultsheher28[m]).to.equal('number'); expect(typeof all.cisFemaleAdult28[m]).to.equal('number');
} }
}) })
}) })

View file

@ -1,6 +1,6 @@
import React, {useMemo, useEffect, useState} from 'react' import React, {useMemo, useEffect, useState} from 'react'
import MeasurementInput from '../inputs/measurement.js' import MeasurementInput from '../inputs/measurement.js'
import { adults, dolls, giants } from '@freesewing/models' import { adult, doll, giant } from '@freesewing/models'
import WomenswearIcon from 'shared/components/icons/womenswear.js' import WomenswearIcon from 'shared/components/icons/womenswear.js'
import MenswearIcon from 'shared/components/icons/menswear.js' import MenswearIcon from 'shared/components/icons/menswear.js'
import { useTranslation } from 'next-i18next' import { useTranslation } from 'next-i18next'
@ -9,11 +9,11 @@ import {settings} from '../menu/core-settings/index';
import { Tab, Tabs } from 'shared/components/mdx/tabs.js' import { Tab, Tabs } from 'shared/components/mdx/tabs.js'
const groups = { adults, dolls, giants } const groups = { adult, doll, giant }
const icons = { const icons = {
hehim: <MenswearIcon />, cisFemale: <WomenswearIcon />,
sheher: <WomenswearIcon />, cisMale: <MenswearIcon />,
} }
@ -57,7 +57,7 @@ const WorkbenchMeasurements = ({ app, design, gist, updateGist, gistReady }) =>
</span> {t('measurements')} </span> {t('measurements')}
</h1> </h1>
<h2>{t('cfp:preloadMeasurements')}</h2> <h2>{t('cfp:preloadMeasurements')}</h2>
<Tabs tabs="People, Dolls, Giants"> <Tabs tabs="Adults, Dolls, Giants">
{Object.keys(groups).map(group => ( {Object.keys(groups).map(group => (
<Tab tabId={group}> <Tab tabId={group}>
{Object.keys(icons).map(type => ( {Object.keys(icons).map(type => (
@ -71,7 +71,7 @@ const WorkbenchMeasurements = ({ app, design, gist, updateGist, gistReady }) =>
onClick={() => updateMeasurements(groups[group][type][m], false)} onClick={() => updateMeasurements(groups[group][type][m], false)}
> >
{icons[type]} {icons[type]}
{ group === 'adults' { group === 'adult'
? `${t('size')} ${m}` ? `${t('size')} ${m}`
: `${m}%` : `${m}%`
} }

View file

@ -2,12 +2,12 @@ import { dolls, giants } from '@freesewing/models'
const nonHuman = { const nonHuman = {
menswear: { menswear: {
dolls: dolls.hehim, dolls: dolls.cisFemale,
giants: giants.hehim, giants: giants.cisMale,
}, },
womenswear: { womenswear: {
dolls: dolls.sheher, dolls: dolls.cisFemale,
giants: giants.sheher, giants: giants.cisMale,
} }
} }
const round = val => Math.round(val*10)/10 const round = val => Math.round(val*10)/10

View file

@ -1,5 +1,5 @@
import designs from "../../config/software/designs.json" assert { type: 'json' } import designs from "../../config/software/designs.json" assert { type: 'json' }
import { adults, dolls, giants } from '@freesewing/models' import { adult, doll, giant } from '@freesewing/models'
import { getFamily } from './config.mjs' import { getFamily } from './config.mjs'
import chai from 'chai' import chai from 'chai'
@ -37,14 +37,14 @@ export const testPatternDrafting = (Pattern, log=false) => {
*/ */
if (family !== 'utilities') { if (family !== 'utilities') {
describe('Draft for humans:', () => { describe('Draft for humans:', () => {
for (const type of ['sheher', 'hehim']) { for (const type of ['cisFemale', 'cisMale']) {
describe(type, () => { describe(type, () => {
for (const size in adults[type]) { for (const size in adult[type]) {
it(` - Drafting for size ${size}`, () => { it(` - Drafting for size ${size}`, () => {
expect( expect(
doesItDraftAndRender( doesItDraftAndRender(
new Pattern({ new Pattern({
measurements: adults[type][size] measurements: adult[type][size]
}), log }), log
) )
).to.equal(true) ).to.equal(true)
@ -54,11 +54,11 @@ export const testPatternDrafting = (Pattern, log=false) => {
} }
}) })
// Do the same for fantastical models (dolls, giants) // Do the same for fantastical models (doll, giant)
const fams = { dolls, giants } const fams = { doll, giant }
for (const family of ['dolls', 'giants']) { for (const family of ['doll', 'giant']) {
describe(`Draft for ${family}:`, () => { describe(`Draft for ${family}:`, () => {
for (const type of ['sheher', 'hehim']) { for (const type of ['cisFemale', 'cisMale']) {
describe(type, () => { describe(type, () => {
for (const size in fams[family][type]) { for (const size in fams[family][type]) {
it(` - Drafting at ${size}%`, () => { it(` - Drafting at ${size}%`, () => {

View file

@ -1,5 +1,5 @@
import designs from "../../config/software/designs.json" assert { type: 'json' } import designs from "../../config/software/designs.json" assert { type: 'json' }
import { adults, dolls, giants } from '@freesewing/models' import { adult, doll, giant } from '@freesewing/models'
import { getFamily } from './config.mjs' import { getFamily } from './config.mjs'
import chai from 'chai' import chai from 'chai'
@ -49,7 +49,7 @@ export const testPatternSampling = (Pattern, log=false) => {
type: 'measurement', type: 'measurement',
measurement measurement
}, },
measurements: adults.sheher["36"] measurements: adult.cisFemale["36"]
}), log)).to.equal(true) }), log)).to.equal(true)
}) })
} }
@ -69,7 +69,7 @@ export const testPatternSampling = (Pattern, log=false) => {
type: 'option', type: 'option',
option option
}, },
measurements: adults.sheher["36"] measurements: adult.cisFemale["36"]
}), log)).to.equal(true) }), log)).to.equal(true)
}) })
} }
@ -81,13 +81,13 @@ export const testPatternSampling = (Pattern, log=false) => {
/* /*
* Sample pattern for different models * Sample pattern for different models
*/ */
describe(`Sample humans:` , () => { describe(`Sample human measurements:` , () => {
for (const type of ['sheher', 'hehim']) { for (const type of ['cisFemale', 'cisMale']) {
it(`Sample pattern for adults ${type} size range:` , () => { it(`Sample pattern for adult ${type} size range:` , () => {
expect(doesItSample(new Pattern({ expect(doesItSample(new Pattern({
sample: { sample: {
type: 'models', type: 'models',
models: adults[type], models: adult[type],
}, },
}), log)).to.equal(true) }), log)).to.equal(true)
}) })
@ -98,18 +98,18 @@ export const testPatternSampling = (Pattern, log=false) => {
if (['rendertest', 'tutorial', 'examples'].indexOf(design) === -1) { if (['rendertest', 'tutorial', 'examples'].indexOf(design) === -1) {
if (deprecated.indexOf(design) === -1) { if (deprecated.indexOf(design) === -1) {
/* /*
* Sample pattern for dolls & giants * Sample pattern for doll & giant
*/ */
for (const family of ['dolls', 'giants']) { for (const family of ['doll', 'giant']) {
describe(`Sample ${family}:` , () => { describe(`Sample ${family} measurements:` , () => {
for (const type of ['sheher', 'hehim']) { for (const type of ['cisFemale', 'cisMale']) {
it(`Sample pattern for ${family} ${type} size range:` , () => { it(`Sample pattern for ${family} ${type} size range:` , () => {
expect(doesItSample(new Pattern({ expect(doesItSample(new Pattern({
sample: { sample: {
type: 'models', type: 'models',
models: family === 'dolls' models: family === 'doll'
? dolls[type] ? doll[type]
: giants[type] : giant[type]
}, },
}), log)).to.equal(true) }), log)).to.equal(true)
}) })