{
  "version": 3,
  "sources": ["../../src/assets/TLImageAsset.ts"],
  "sourcesContent": ["import { defineMigrations } from '@bigbluebutton/store'\nimport { T } from '@bigbluebutton/validate'\nimport { createAssetValidator, TLBaseAsset } from './TLBaseAsset'\n\n/**\n * An asset for images such as PNGs and JPEGs, used by the TLImageShape.\n *\n * @public */\nexport type TLImageAsset = TLBaseAsset<\n\t'image',\n\t{\n\t\tw: number\n\t\th: number\n\t\tname: string\n\t\tisAnimated: boolean\n\t\tmimeType: string | null\n\t\tsrc: string | null\n\t}\n>\n\n/** @internal */\nexport const imageAssetValidator: T.Validator<TLImageAsset> = createAssetValidator(\n\t'image',\n\tT.object({\n\t\tw: T.number,\n\t\th: T.number,\n\t\tname: T.string,\n\t\tisAnimated: T.boolean,\n\t\tmimeType: T.string.nullable(),\n\t\tsrc: T.string.nullable(),\n\t})\n)\n\nconst Versions = {\n\tAddIsAnimated: 1,\n\tRenameWidthHeight: 2,\n} as const\n\n/** @internal */\nexport const imageAssetMigrations = defineMigrations({\n\tcurrentVersion: Versions.RenameWidthHeight,\n\tmigrators: {\n\t\t[Versions.AddIsAnimated]: {\n\t\t\tup: (asset) => {\n\t\t\t\treturn {\n\t\t\t\t\t...asset,\n\t\t\t\t\tprops: {\n\t\t\t\t\t\t...asset.props,\n\t\t\t\t\t\tisAnimated: false,\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t},\n\t\t\tdown: (asset) => {\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\t\t\t\tconst { isAnimated, ...rest } = asset.props\n\t\t\t\treturn {\n\t\t\t\t\t...asset,\n\t\t\t\t\tprops: rest,\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t[Versions.RenameWidthHeight]: {\n\t\t\tup: (asset) => {\n\t\t\t\tconst { width, height, ...others } = asset.props\n\t\t\t\treturn { ...asset, props: { w: width, h: height, ...others } }\n\t\t\t},\n\t\t\tdown: (asset) => {\n\t\t\t\tconst { w, h, ...others } = asset.props\n\t\t\t\treturn { ...asset, props: { width: w, height: h, ...others } }\n\t\t\t},\n\t\t},\n\t},\n})\n"],
  "mappings": "AAAA,SAAS,wBAAwB;AACjC,SAAS,SAAS;AAClB,SAAS,4BAAyC;AAmB3C,MAAM,sBAAiD;AAAA,EAC7D;AAAA,EACA,EAAE,OAAO;AAAA,IACR,GAAG,EAAE;AAAA,IACL,GAAG,EAAE;AAAA,IACL,MAAM,EAAE;AAAA,IACR,YAAY,EAAE;AAAA,IACd,UAAU,EAAE,OAAO,SAAS;AAAA,IAC5B,KAAK,EAAE,OAAO,SAAS;AAAA,EACxB,CAAC;AACF;AAEA,MAAM,WAAW;AAAA,EAChB,eAAe;AAAA,EACf,mBAAmB;AACpB;AAGO,MAAM,uBAAuB,iBAAiB;AAAA,EACpD,gBAAgB,SAAS;AAAA,EACzB,WAAW;AAAA,IACV,CAAC,SAAS,aAAa,GAAG;AAAA,MACzB,IAAI,CAAC,UAAU;AACd,eAAO;AAAA,UACN,GAAG;AAAA,UACH,OAAO;AAAA,YACN,GAAG,MAAM;AAAA,YACT,YAAY;AAAA,UACb;AAAA,QACD;AAAA,MACD;AAAA,MACA,MAAM,CAAC,UAAU;AAEhB,cAAM,EAAE,YAAY,GAAG,KAAK,IAAI,MAAM;AACtC,eAAO;AAAA,UACN,GAAG;AAAA,UACH,OAAO;AAAA,QACR;AAAA,MACD;AAAA,IACD;AAAA,IACA,CAAC,SAAS,iBAAiB,GAAG;AAAA,MAC7B,IAAI,CAAC,UAAU;AACd,cAAM,EAAE,OAAO,QAAQ,GAAG,OAAO,IAAI,MAAM;AAC3C,eAAO,EAAE,GAAG,OAAO,OAAO,EAAE,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,EAAE;AAAA,MAC9D;AAAA,MACA,MAAM,CAAC,UAAU;AAChB,cAAM,EAAE,GAAG,GAAG,GAAG,OAAO,IAAI,MAAM;AAClC,eAAO,EAAE,GAAG,OAAO,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,GAAG,OAAO,EAAE;AAAA,MAC9D;AAAA,IACD;AAAA,EACD;AACD,CAAC;",
  "names": []
}
