UNPKG

2.22 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/Interactions.ts"],"names":["Interactions","interactions","_interactions","Object","entries","reduce","acc","name","query","interaction","onlyMatch","includes","keys"],"mappings":";;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;;;IAIaA,Y;;;;;gCACQ;AACjB,aAAO,CAAC,aAAD,CAAP;AACD;;;AAID,wBAAYC,YAAZ,EAAsD;AAAA;;AAAA;;AACpD,SAAKC,aAAL,GAAqBD,YAArB;AACD;;;;iCAEmB;AAClB,aAAOE,MAAM,CAACC,OAAP,CAAe,KAAKF,aAApB,EAAmCG,MAAnC,CACL,UAACC,GAAD,QAAkC;AAAA;AAAA,YAAjBC,IAAiB;AAAA,YAAXC,KAAW;;AAChC,kCACKF,GADL,UAEE,0BAAc,4BAAgB,aAAhB,EAA+BC,IAA/B,CAAd,EAAoDC,KAApD,CAFF;AAID,OANI,EAOL,EAPK,CAAP;AASD;;;2CAcCC,W,EACAC,S,EACS;AACT,aAAO,CAAC,EAAEA,SAAS,IAAIA,SAAS,CAACC,QAAV,CAAmBF,WAAnB,CAAf,CAAR;AACD;;;wBAhByB;AACxB,aAAON,MAAM,CAACS,IAAP,CAAY,KAAKV,aAAjB,CAAP;AACD;;;wBAE0C;AACzC,aAAOC,MAAM,CAACC,OAAP,CAAe,KAAKF,aAApB,EAAmCG,MAAnC,CACL,UAACC,GAAD;AAAA;AAAA,YAAOC,IAAP;AAAA,YAAaC,KAAb;;AAAA,iCAA8BF,GAA9B,sBAAoCC,IAApC,EAA2CC,KAA3C;AAAA,OADK,EAEL,EAFK,CAAP;AAID","sourcesContent":["import { createClassName, createRuleSet } from \"./Utils\"\n\n/**\n * Encapsulates all interaction data needed by the Media component. The data is\n * generated on initialization so no further runtime work is necessary.\n */\nexport class Interactions {\n static validKeys() {\n return [\"interaction\"]\n }\n\n private _interactions: { [key: string]: string }\n\n constructor(interactions: { [name: string]: string }) {\n this._interactions = interactions\n }\n\n public toRuleSets() {\n return Object.entries(this._interactions).reduce(\n (acc: string[], [name, query]) => {\n return [\n ...acc,\n createRuleSet(createClassName(\"interaction\", name), query),\n ]\n },\n []\n )\n }\n\n public get interactions() {\n return Object.keys(this._interactions)\n }\n\n public get dynamicResponsiveMediaQueries() {\n return Object.entries(this._interactions).reduce(\n (acc, [name, query]) => ({ ...acc, [name]: query }),\n {}\n )\n }\n\n public shouldRenderMediaQuery(\n interaction: string,\n onlyMatch: string[]\n ): boolean {\n return !!(onlyMatch && onlyMatch.includes(interaction))\n }\n}\n"],"file":"Interactions.js"}
\No newline at end of file