UNPKG

2.58 kBSource Map (JSON)View Raw
1{"version":3,"file":"extractStyleParts.js","sourceRoot":"../src/","sources":["extractStyleParts.ts"],"names":[],"mappings":";;AACA,2CAA0C;AAE1C;;;GAGG;AACH,SAAgB,iBAAiB;IAC/B,cAAyD;SAAzD,UAAyD,EAAzD,qBAAyD,EAAzD,IAAyD;QAAzD,yBAAyD;;IAEzD,IAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAM,OAAO,GAAS,EAAE,CAAC;IACzB,IAAM,UAAU,GAAG,uBAAU,CAAC,WAAW,EAAE,CAAC;IAE5C,SAAS,YAAY,CAAC,QAA+B;QACnD,KAAkB,UAAQ,EAAR,qBAAQ,EAAR,sBAAQ,EAAR,IAAQ,EAAE;YAAvB,IAAM,GAAG,iBAAA;YACZ,IAAI,GAAG,EAAE;gBACP,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;oBAC3B,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBACzB,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;qBAC9B;yBAAM;wBACL,IAAM,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;wBAEzD,IAAI,cAAc,EAAE;4BAClB,YAAY,CAAC,cAAc,CAAC,CAAC;yBAC9B;6BAAM;4BACL,qCAAqC;4BACrC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;gCAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;6BACnB;yBACF;qBACF;iBACF;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC7B,YAAY,CAAC,GAAG,CAAC,CAAC;iBACnB;qBAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACnB;aACF;SACF;IACH,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,CAAC;IAEnB,OAAO;QACL,OAAO,SAAA;QACP,OAAO,SAAA;KACR,CAAC;AACJ,CAAC;AAxCD,8CAwCC","sourcesContent":["import { IStyle, IStyleBaseArray } from './IStyle';\nimport { Stylesheet } from './Stylesheet';\n\n/**\n * Separates the classes and style objects. Any classes that are pre-registered\n * args are auto expanded into objects.\n */\nexport function extractStyleParts(\n ...args: (IStyle | IStyle[] | false | null | undefined)[]\n): { classes: string[]; objects: IStyleBaseArray } {\n const classes: string[] = [];\n const objects: {}[] = [];\n const stylesheet = Stylesheet.getInstance();\n\n function _processArgs(argsList: (IStyle | IStyle[])[]): void {\n for (const arg of argsList) {\n if (arg) {\n if (typeof arg === 'string') {\n if (arg.indexOf(' ') >= 0) {\n _processArgs(arg.split(' '));\n } else {\n const translatedArgs = stylesheet.argsFromClassName(arg);\n\n if (translatedArgs) {\n _processArgs(translatedArgs);\n } else {\n // Avoid adding the same class twice.\n if (classes.indexOf(arg) === -1) {\n classes.push(arg);\n }\n }\n }\n } else if (Array.isArray(arg)) {\n _processArgs(arg);\n } else if (typeof arg === 'object') {\n objects.push(arg);\n }\n }\n }\n }\n\n _processArgs(args);\n\n return {\n classes,\n objects,\n };\n}\n"]}
\No newline at end of file