UNPKG

1.73 kBSource Map (JSON)View Raw
1{"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/operator/select.ts"],"names":[],"mappings":"OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB;OACpC,EAAE,GAAG,EAAE,MAAM,mBAAmB;OAChC,EAAE,oBAAoB,EAAE,MAAM,oCAAoC;AAQzE,uBAA6B,WAAgB;IAAE,eAAkB;SAAlB,WAAkB,CAAlB,sBAAkB,CAAlB,IAAkB;QAAlB,8BAAkB;;IAC/D,IAAI,OAAsB,CAAC;IAE3B,EAAE,CAAC,CAAC,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC;QACpC,OAAO,GAAG,KAAK,CAAC,IAAI,OAAV,KAAK,GAAM,IAAI,EAAE,WAAW,SAAK,KAAK,EAAC,CAAC;IACpD,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC;QAC3C,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,CAAC;QACJ,MAAM,IAAI,SAAS,CAAC,sBAAoB,OAAO,WAAW,0BAAuB;cAC7E,kCAAkC,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["import { pluck } from 'rxjs/operator/pluck';\nimport { map } from 'rxjs/operator/map';\nimport { distinctUntilChanged } from 'rxjs/operator/distinctUntilChanged';\nimport { Observable } from 'rxjs/Observable';\n\nexport interface SelectSignature<T> {\n <R>(...paths: string[]): Observable<R>;\n <R>(mapFn: (state: T) => R): Observable<R>;\n}\n\nexport function select<T, R>(pathOrMapFn: any, ...paths: string[]): Observable<R> {\n let mapped$: Observable<R>;\n\n if (typeof pathOrMapFn === 'string') {\n mapped$ = pluck.call(this, pathOrMapFn, ...paths);\n }\n else if (typeof pathOrMapFn === 'function') {\n mapped$ = map.call(this, pathOrMapFn);\n }\n else {\n throw new TypeError(`Unexpected type ${ typeof pathOrMapFn } in select operator,`\n + ` expected 'string' or 'function'`);\n }\n\n return distinctUntilChanged.call(mapped$);\n}\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
\No newline at end of file