Stickers
Co-authored-by: scott@signal.org Co-authored-by: ken@signal.org
This commit is contained in:
parent
8c8856785b
commit
29de50c12a
100 changed files with 7572 additions and 693 deletions
54
ts/state/smart/StickerPreviewModal.tsx
Normal file
54
ts/state/smart/StickerPreviewModal.tsx
Normal file
|
@ -0,0 +1,54 @@
|
|||
import { connect } from 'react-redux';
|
||||
import { mapDispatchToProps } from '../actions';
|
||||
import { StickerPreviewModal } from '../../components/stickers/StickerPreviewModal';
|
||||
import { StateType } from '../reducer';
|
||||
|
||||
import { getIntl, getStickersPath } from '../selectors/user';
|
||||
import {
|
||||
getBlessedPacks,
|
||||
getPacks,
|
||||
translatePackFromDB,
|
||||
} from '../selectors/stickers';
|
||||
|
||||
type ExternalProps = {
|
||||
packId: string;
|
||||
readonly onClose: () => unknown;
|
||||
};
|
||||
|
||||
const mapStateToProps = (state: StateType, props: ExternalProps) => {
|
||||
const { packId } = props;
|
||||
const stickersPath = getStickersPath(state);
|
||||
const packs = getPacks(state);
|
||||
const blessedPacks = getBlessedPacks(state);
|
||||
const pack = packs[packId];
|
||||
|
||||
if (!pack) {
|
||||
throw new Error(`Cannot find pack ${packId}`);
|
||||
}
|
||||
const translated = translatePackFromDB(
|
||||
pack,
|
||||
packs,
|
||||
blessedPacks,
|
||||
stickersPath
|
||||
);
|
||||
|
||||
return {
|
||||
...props,
|
||||
pack: {
|
||||
...translated,
|
||||
cover: translated.cover
|
||||
? translated.cover
|
||||
: {
|
||||
id: 0,
|
||||
url: 'nonexistent',
|
||||
packId,
|
||||
emoji: 'WTF',
|
||||
},
|
||||
},
|
||||
i18n: getIntl(state),
|
||||
};
|
||||
};
|
||||
|
||||
const smart = connect(mapStateToProps, mapDispatchToProps);
|
||||
|
||||
export const SmartStickerPreviewModal = smart(StickerPreviewModal);
|
Loading…
Add table
Add a link
Reference in a new issue