UNPKG

ng-devui

Version:

DevUI components based on Angular

127 lines 24.5 kB
import { animate, state, style, transition, trigger } from '@angular/animations'; import { AnimationCurves, AnimationDuration } from './animationParameters'; const easeOut = AnimationCurves.EASE_OUT; const easeIn = AnimationCurves.EASE_IN; const duration = AnimationDuration.FAST; const scaleY = 'scaleY(0.8)'; const scaleX = 'scaleX(0.8)'; const scaleY1 = 'scaleY(1)'; const scaleX1 = 'scaleX(1)'; const scaleXToVoid = 'scaleX(0.8)'; const scaleYToVoid = 'scaleY(0.8)'; export const directionFadeInOut = trigger('directionFadeInOut', [ state('void', style({ opacity: 0, })), state('bottom', style({ opacity: 1, })), state('bottom-left', style({ opacity: 1 })), state('bottom-right', style({ opacity: 1 })), state('top', style({ opacity: 1 })), state('top-left', style({ opacity: 1 })), state('top-right', style({ opacity: 1 })), state('left', style({ opacity: 1 })), state('left-top', style({ opacity: 1 })), state('left-bottom', style({ opacity: 1 })), state('right', style({ opacity: 1 })), state('right-top', style({ opacity: 1 })), state('right-bottom', style({ opacity: 1 })), // 下方 transition('* => bottom', [ style({ opacity: 0.8, transform: `${scaleY}`, transformOrigin: '50% -8px' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleY1}` })) ]), transition('bottom => void', [ style({ transformOrigin: '50% -8px' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleYToVoid}`, opacity: 0.8 })) ]), transition('* => bottom-left', [ style({ opacity: 0.8, transform: `${scaleY}`, transformOrigin: '50% -8px' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleY1}` })) ]), transition('bottom-left => void', [ style({ opacity: 1, transformOrigin: '50% -8px' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleYToVoid}`, opacity: 0.8 })) ]), transition('* => bottom-right', [ style({ opacity: 0.8, transform: `${scaleY}`, transformOrigin: '50% -8px' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleY1}` })) ]), transition('bottom-right => void', [ style({ opacity: 1, transformOrigin: '50% -8px' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleYToVoid}`, opacity: 0.8 })) ]), // 上方 transition('* => top', [ style({ opacity: 0.8, transform: `${scaleY}`, transformOrigin: '50% calc(100% + 8px)' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleY1}`, })) ]), transition('top => void', [ style({ opacity: 1, transformOrigin: '50% calc(100% + 8px)' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleYToVoid}`, opacity: 0.8 })) ]), transition('* => top-left', [ style({ opacity: 0.8, transform: `${scaleY}`, transformOrigin: '50% calc(100% + 8px)' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleY1}`, })) ]), transition('top-left => void', [ style({ opacity: 1, transformOrigin: '50% calc(100% + 8px)' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleYToVoid}`, opacity: 0.8 })) ]), transition('* => top-right', [ style({ opacity: 0.8, transform: `${scaleY}`, transformOrigin: '50% calc(100% + 8px)' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleY1}`, })) ]), transition('top-right => void', [ style({ opacity: 1, transformOrigin: '50% calc(100% + 8px)' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleYToVoid}`, opacity: 0.8 })) ]), // 左方 transition('* => left', [ style({ opacity: 0.8, transform: `${scaleX}`, transformOrigin: 'calc(100% + 8px)' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleX1}` })) ]), transition('left => void', [ style({ opacity: 1, transformOrigin: 'calc(100% + 8px)' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleXToVoid}`, opacity: 0.8 })) ]), transition('* => left-top', [ style({ opacity: 0.8, transform: `${scaleX}`, transformOrigin: 'calc(100% + 8px)' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleX1}` })) ]), transition('left-top => void', [ style({ opacity: 1, transformOrigin: 'calc(100% + 8px)' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleXToVoid}`, opacity: 0.8 })) ]), transition('* => left-bottom', [ style({ opacity: 0.8, transform: `${scaleX}`, transformOrigin: 'calc(100% + 8px)' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleX1}` })) ]), transition('left-bottom => void', [ style({ opacity: 1, transformOrigin: 'calc(100% + 8px)' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleXToVoid}`, opacity: 0.8 })) ]), // 右方 transition('* => right', [ style({ opacity: 0.8, transform: `${scaleX}`, transformOrigin: '-8px 50% ' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleX1}` })) ]), transition('right => void', [ style({ opacity: 1, transformOrigin: '-8px 50% ' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleXToVoid}`, opacity: 0 })) ]), transition('* => right-top', [ style({ opacity: 0.8, transform: `${scaleX}`, transformOrigin: '-8px 50% ' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleX1}` })) ]), transition('right-top => void', [ style({ opacity: 1, transformOrigin: '-8px 50% ' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleXToVoid}`, opacity: 0.8 })) ]), transition('* => right-bottom', [ style({ opacity: 0.8, transform: `${scaleX}`, transformOrigin: '-8px 50% ' }), animate(`${duration} ${easeOut}`, style({ opacity: 1, transform: `${scaleX1}` })) ]), transition('right-bottom => void', [ style({ opacity: 1, transformOrigin: '-8px 50% ' }), animate(`${duration} ${easeIn}`, style({ transform: `${scaleXToVoid}`, opacity: 0.8 })) ]), ]); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9uLWZhZGUtaW4tb3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vZGV2dWkvdXRpbHMvYW5pbWF0aW9ucy9kaXJlY3Rpb24tZmFkZS1pbi1vdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBNEIsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0csT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNFLE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7QUFDekMsTUFBTSxNQUFNLEdBQUksZUFBZSxDQUFDLE9BQU8sQ0FBQztBQUN4QyxNQUFNLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7QUFDeEMsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDO0FBQzdCLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQztBQUM3QixNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUM7QUFDNUIsTUFBTSxPQUFPLEdBQUcsV0FBVyxDQUFDO0FBQzVCLE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQztBQUNuQyxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQTZCLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTtJQUN4RixLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUN6QyxLQUFLLENBQUMsY0FBYyxF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QUFHLFFBQVEsS0FBSyxNQUFNLEVBQUUsRUFBRyxLQUFLLENBQUMsRUFBQyxTQUFTLEVBQUUsR0FBRyxZQUFZLEVBQUUsRUFBSSxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQztLQUN4RixDQUFDO0lBQ0YsVUFBVSxDQUFDLGdCQUFnQixFQUFFO1FBQzNCLEtBQUssQ0FBQyxFQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBQyxDQUFDO1FBQzNFLE9BQU8sQ0FBQyxHQUFHLFFBQVEsS0FBSyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLE9BQU8sRUFBRSxFQUFDLENBQUMsQ0FBQztLQUNqRixDQUFDO0lBQ0YsVUFBVSxDQUFDLG1CQUFtQixFQUFFO1FBQzlCLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBQyxDQUFDO1FBQ2xELE9BQU8sQ0FBQyxHQUFHLFFBQVEsS0FBSyxNQUFNLEVBQUUsRUFBRyxLQUFLLENBQUMsRUFBQyxTQUFTLEVBQUUsR0FBRyxZQUFZLEVBQUUsRUFBSSxPQUFPLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQztLQUMxRixDQUFDO0lBQ0YsVUFBVSxDQUFDLG1CQUFtQixFQUFFO1FBQzlCLEtBQUssQ0FBQyxFQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBQyxDQUFDO1FBQzNFLE9BQU8sQ0FBQyxHQUFHLFFBQVEsS0FBSyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLE9BQU8sRUFBRSxFQUFDLENBQUMsQ0FBQztLQUNqRixDQUFDO0lBQ0YsVUFBVSxDQUFDLHNCQUFzQixFQUFFO1FBQ2pDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBQyxDQUFDO1FBQ2xELE9BQU8sQ0FBQyxHQUFHLFFBQVEsS0FBSyxNQUFNLEVBQUUsRUFBRyxLQUFLLENBQUMsRUFBQyxTQUFTLEVBQUUsR0FBRyxZQUFZLEVBQUUsRUFBSSxPQUFPLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQztLQUMxRixDQUFDO0NBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uVHJpZ2dlck1ldGFkYXRhLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEFuaW1hdGlvbkN1cnZlcywgQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuL2FuaW1hdGlvblBhcmFtZXRlcnMnO1xuY29uc3QgZWFzZU91dCA9IEFuaW1hdGlvbkN1cnZlcy5FQVNFX09VVDtcbmNvbnN0IGVhc2VJbiA9ICBBbmltYXRpb25DdXJ2ZXMuRUFTRV9JTjtcbmNvbnN0IGR1cmF0aW9uID0gQW5pbWF0aW9uRHVyYXRpb24uRkFTVDtcbmNvbnN0IHNjYWxlWSA9ICdzY2FsZVkoMC44KSc7XG5jb25zdCBzY2FsZVggPSAnc2NhbGVYKDAuOCknO1xuY29uc3Qgc2NhbGVZMSA9ICdzY2FsZVkoMSknO1xuY29uc3Qgc2NhbGVYMSA9ICdzY2FsZVgoMSknO1xuY29uc3Qgc2NhbGVYVG9Wb2lkID0gJ3NjYWxlWCgwLjgpJztcbmNvbnN0IHNjYWxlWVRvVm9pZCA9ICdzY2FsZVkoMC44KSc7XG5cbmV4cG9ydCBjb25zdCBkaXJlY3Rpb25GYWRlSW5PdXQ6IEFuaW1hdGlvblRyaWdnZXJNZXRhZGF0YSA9IHRyaWdnZXIoJ2RpcmVjdGlvbkZhZGVJbk91dCcsIFtcbiAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7b3BhY2l0eTogMCwgfSkpLFxuICBzdGF0ZSgnYm90dG9tJywgc3R5bGUoe29wYWNpdHk6IDEsIH0pKSxcbiAgc3RhdGUoJ2JvdHRvbS1sZWZ0Jywgc3R5bGUoe29wYWNpdHk6IDF9KSksXG4gIHN0YXRlKCdib3R0b20tcmlnaHQnLCBzdHlsZSh7b3BhY2l0eTogMX0pKSxcbiAgc3RhdGUoJ3RvcCcsIHN0eWxlKHtvcGFjaXR5OiAxfSkpLFxuICBzdGF0ZSgndG9wLWxlZnQnLCBzdHlsZSh7b3BhY2l0eTogMX0pKSxcbiAgc3RhdGUoJ3RvcC1yaWdodCcsIHN0eWxlKHtvcGFjaXR5OiAxfSkpLFxuICBzdGF0ZSgnbGVmdCcsIHN0eWxlKHtvcGFjaXR5OiAxfSkpLFxuICBzdGF0ZSgnbGVmdC10b3AnLCBzdHlsZSh7b3BhY2l0eTogMX0pKSxcbiAgc3RhdGUoJ2xlZnQtYm90dG9tJywgc3R5bGUoe29wYWNpdHk6IDF9KSksXG4gIHN0YXRlKCdyaWdodCcsIHN0eWxlKHtvcGFjaXR5OiAxfSkpLFxuICBzdGF0ZSgncmlnaHQtdG9wJywgc3R5bGUoe29wYWNpdHk6IDF9KSksXG4gIHN0YXRlKCdyaWdodC1ib3R0b20nLCBzdHlsZSh7b3BhY2l0eTogMX0pKSxcbiAgLy8g5LiL5pa5XG4gIHRyYW5zaXRpb24oJyogPT4gYm90dG9tJywgW1xuICAgIHN0eWxlKHtvcGFjaXR5OiAwLjggLCB0cmFuc2Zvcm06IGAke3NjYWxlWX1gLCB0cmFuc2Zvcm1PcmlnaW46ICc1MCUgLThweCd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlT3V0fWAsIHN0eWxlKHtvcGFjaXR5OiAxLCB0cmFuc2Zvcm06IGAke3NjYWxlWTF9YCB9KSlcbiAgXSksXG4gIHRyYW5zaXRpb24oJ2JvdHRvbSA9PiB2b2lkJywgW1xuICAgIHN0eWxlKHsgIHRyYW5zZm9ybU9yaWdpbjogJzUwJSAtOHB4J30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VJbn1gLCAgc3R5bGUoe3RyYW5zZm9ybTogYCR7c2NhbGVZVG9Wb2lkfWAsIG9wYWNpdHk6IDAuOH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbignKiA9PiBib3R0b20tbGVmdCcsIFtcbiAgICBzdHlsZSh7b3BhY2l0eTogMC44ICwgdHJhbnNmb3JtOiBgJHtzY2FsZVl9YCwgdHJhbnNmb3JtT3JpZ2luOiAnNTAlIC04cHgnfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZU91dH1gLCBzdHlsZSh7b3BhY2l0eTogMSwgdHJhbnNmb3JtOiBgJHtzY2FsZVkxfWAgfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCdib3R0b20tbGVmdCA9PiB2b2lkJywgW1xuICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtT3JpZ2luOiAnNTAlIC04cHgnfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZUlufWAsICBzdHlsZSh7dHJhbnNmb3JtOiBgJHtzY2FsZVlUb1ZvaWR9YCwgb3BhY2l0eTogMC44fSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCcqID0+IGJvdHRvbS1yaWdodCcsIFtcbiAgICBzdHlsZSh7b3BhY2l0eTogMC44ICwgdHJhbnNmb3JtOiBgJHtzY2FsZVl9YCwgdHJhbnNmb3JtT3JpZ2luOiAnNTAlIC04cHgnfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZU91dH1gLCBzdHlsZSh7b3BhY2l0eTogMSwgdHJhbnNmb3JtOiBgJHtzY2FsZVkxfWAgfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCdib3R0b20tcmlnaHQgPT4gdm9pZCcsIFtcbiAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybU9yaWdpbjogJzUwJSAtOHB4J30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VJbn1gLCAgc3R5bGUoe3RyYW5zZm9ybTogYCR7c2NhbGVZVG9Wb2lkfWAsIG9wYWNpdHk6IDAuOH0pKVxuICBdKSxcblxuICAvLyDkuIrmlrlcbiAgdHJhbnNpdGlvbignKiA9PiB0b3AnLCBbXG4gICAgc3R5bGUoe29wYWNpdHk6IDAuOCAsIHRyYW5zZm9ybTogYCR7c2NhbGVZfWAsIHRyYW5zZm9ybU9yaWdpbjogJzUwJSBjYWxjKDEwMCUgKyA4cHgpJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VPdXR9YCwgc3R5bGUoe29wYWNpdHk6IDEsIHRyYW5zZm9ybTogYCR7c2NhbGVZMX1gLCB9KSlcbiAgXSksXG4gIHRyYW5zaXRpb24oJ3RvcCA9PiB2b2lkJywgW1xuICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtT3JpZ2luOiAnNTAlIGNhbGMoMTAwJSArIDhweCknfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZUlufWAsICBzdHlsZSh7dHJhbnNmb3JtOiBgJHtzY2FsZVlUb1ZvaWR9YCwgb3BhY2l0eTogMC44fSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCcqID0+IHRvcC1sZWZ0JywgW1xuICAgIHN0eWxlKHtvcGFjaXR5OiAwLjggLCB0cmFuc2Zvcm06IGAke3NjYWxlWX1gLCB0cmFuc2Zvcm1PcmlnaW46ICc1MCUgY2FsYygxMDAlICsgOHB4KSd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlT3V0fWAsIHN0eWxlKHtvcGFjaXR5OiAxLCB0cmFuc2Zvcm06IGAke3NjYWxlWTF9YCwgfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCd0b3AtbGVmdCA9PiB2b2lkJywgW1xuICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtT3JpZ2luOiAnNTAlIGNhbGMoMTAwJSArIDhweCknfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZUlufWAsICBzdHlsZSh7dHJhbnNmb3JtOiBgJHtzY2FsZVlUb1ZvaWR9YCwgb3BhY2l0eTogMC44fSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCcqID0+IHRvcC1yaWdodCcsIFtcbiAgICBzdHlsZSh7b3BhY2l0eTogMC44ICwgdHJhbnNmb3JtOiBgJHtzY2FsZVl9YCwgdHJhbnNmb3JtT3JpZ2luOiAnNTAlIGNhbGMoMTAwJSArIDhweCknfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZU91dH1gLCBzdHlsZSh7b3BhY2l0eTogMSwgdHJhbnNmb3JtOiBgJHtzY2FsZVkxfWAsIH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbigndG9wLXJpZ2h0ID0+IHZvaWQnLCBbXG4gICAgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm1PcmlnaW46ICc1MCUgY2FsYygxMDAlICsgOHB4KSd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlSW59YCwgIHN0eWxlKHt0cmFuc2Zvcm06IGAke3NjYWxlWVRvVm9pZH1gLCBvcGFjaXR5OiAwLjh9KSlcbiAgXSksXG5cbiAgLy8g5bem5pa5XG4gIHRyYW5zaXRpb24oJyogPT4gbGVmdCcsIFtcbiAgICBzdHlsZSh7b3BhY2l0eTogMC44LCB0cmFuc2Zvcm06IGAke3NjYWxlWH1gLCB0cmFuc2Zvcm1PcmlnaW46ICdjYWxjKDEwMCUgKyA4cHgpJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VPdXR9YCwgc3R5bGUoe29wYWNpdHk6IDEsIHRyYW5zZm9ybTogYCR7c2NhbGVYMX1gIH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbignbGVmdCA9PiB2b2lkJywgW1xuICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtT3JpZ2luOiAnY2FsYygxMDAlICsgOHB4KSd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlSW59YCwgIHN0eWxlKHt0cmFuc2Zvcm06IGAke3NjYWxlWFRvVm9pZH1gLCAgIG9wYWNpdHk6IDAuOH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbignKiA9PiBsZWZ0LXRvcCcsIFtcbiAgICBzdHlsZSh7b3BhY2l0eTogMC44LCB0cmFuc2Zvcm06IGAke3NjYWxlWH1gLCB0cmFuc2Zvcm1PcmlnaW46ICdjYWxjKDEwMCUgKyA4cHgpJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VPdXR9YCwgc3R5bGUoe29wYWNpdHk6IDEsIHRyYW5zZm9ybTogYCR7c2NhbGVYMX1gIH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbignbGVmdC10b3AgPT4gdm9pZCcsIFtcbiAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybU9yaWdpbjogJ2NhbGMoMTAwJSArIDhweCknfSksXG4gICAgYW5pbWF0ZShgJHtkdXJhdGlvbn0gICR7ZWFzZUlufWAsICBzdHlsZSh7dHJhbnNmb3JtOiBgJHtzY2FsZVhUb1ZvaWR9YCwgICBvcGFjaXR5OiAwLjh9KSlcbiAgXSksXG4gIHRyYW5zaXRpb24oJyogPT4gbGVmdC1ib3R0b20nLCBbXG4gICAgc3R5bGUoe29wYWNpdHk6IDAuOCwgdHJhbnNmb3JtOiBgJHtzY2FsZVh9YCwgdHJhbnNmb3JtT3JpZ2luOiAnY2FsYygxMDAlICsgOHB4KSd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlT3V0fWAsIHN0eWxlKHtvcGFjaXR5OiAxLCB0cmFuc2Zvcm06IGAke3NjYWxlWDF9YCB9KSlcbiAgXSksXG4gIHRyYW5zaXRpb24oJ2xlZnQtYm90dG9tID0+IHZvaWQnLCBbXG4gICAgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm1PcmlnaW46ICdjYWxjKDEwMCUgKyA4cHgpJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VJbn1gLCAgc3R5bGUoe3RyYW5zZm9ybTogYCR7c2NhbGVYVG9Wb2lkfWAsICAgb3BhY2l0eTogMC44fSkpXG4gIF0pLFxuICAvLyAg5Y+z5pa5XG4gIHRyYW5zaXRpb24oJyogPT4gcmlnaHQnLCBbXG4gICAgc3R5bGUoe29wYWNpdHk6IDAuOCwgdHJhbnNmb3JtOiBgJHtzY2FsZVh9YCwgdHJhbnNmb3JtT3JpZ2luOiAnLThweCA1MCUgJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VPdXR9YCwgc3R5bGUoe29wYWNpdHk6IDEsIHRyYW5zZm9ybTogYCR7c2NhbGVYMX1gfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCdyaWdodCA9PiB2b2lkJywgW1xuICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtT3JpZ2luOiAnLThweCA1MCUgJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VJbn1gLCAgc3R5bGUoe3RyYW5zZm9ybTogYCR7c2NhbGVYVG9Wb2lkfWAsICAgb3BhY2l0eTogMH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbignKiA9PiByaWdodC10b3AnLCBbXG4gICAgc3R5bGUoe29wYWNpdHk6IDAuOCwgdHJhbnNmb3JtOiBgJHtzY2FsZVh9YCwgdHJhbnNmb3JtT3JpZ2luOiAnLThweCA1MCUgJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VPdXR9YCwgc3R5bGUoe29wYWNpdHk6IDEsIHRyYW5zZm9ybTogYCR7c2NhbGVYMX1gfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCdyaWdodC10b3AgPT4gdm9pZCcsIFtcbiAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybU9yaWdpbjogJy04cHggNTAlICd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlSW59YCwgIHN0eWxlKHt0cmFuc2Zvcm06IGAke3NjYWxlWFRvVm9pZH1gLCAgIG9wYWNpdHk6IDAuOH0pKVxuICBdKSxcbiAgdHJhbnNpdGlvbignKiA9PiByaWdodC1ib3R0b20nLCBbXG4gICAgc3R5bGUoe29wYWNpdHk6IDAuOCwgdHJhbnNmb3JtOiBgJHtzY2FsZVh9YCwgdHJhbnNmb3JtT3JpZ2luOiAnLThweCA1MCUgJ30pLFxuICAgIGFuaW1hdGUoYCR7ZHVyYXRpb259ICAke2Vhc2VPdXR9YCwgc3R5bGUoe29wYWNpdHk6IDEsIHRyYW5zZm9ybTogYCR7c2NhbGVYMX1gfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCdyaWdodC1ib3R0b20gPT4gdm9pZCcsIFtcbiAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybU9yaWdpbjogJy04cHggNTAlICd9KSxcbiAgICBhbmltYXRlKGAke2R1cmF0aW9ufSAgJHtlYXNlSW59YCwgIHN0eWxlKHt0cmFuc2Zvcm06IGAke3NjYWxlWFRvVm9pZH1gLCAgIG9wYWNpdHk6IDAuOH0pKVxuICBdKSxcbl0pO1xuIl19