Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/thatstupidcomputer / apps/web/src/animation/office/objects/TapeRoll.tsx |
| Date | Not specified in source |
| Repository | Janady13/thatstupidcomputer |
| Revision | 57555cde46910102dd25d6c1c1fb2c359e9655bd |
| Branch | main |
| Path or archive member | apps/web/src/animation/office/objects/TapeRoll.tsx |
| Original SHA-256 | e0523d2cd893822429976898e36fbb37d8e420781633a648fa9af441452246ec |
| Git blob SHA | d21ab3d31e12021e989b2a58431506052a0b5fcd |
| Reading-copy SHA-256 | e0523d2cd893822429976898e36fbb37d8e420781633a648fa9af441452246ec |
Recovered source transcript
Download complete source text ↓15 lines · 1.1 KB
import { memo } from 'react';
import type { ArtProps } from '../types';
/** Tape roll. Local geometry: placement belongs to RoomObject. */
export const TapeRoll = memo(function TapeRoll({ idPrefix, palette, hiddenParts }: ArtProps) {
return (
<g id={`${idPrefix}--tape-roll`} data-part="tape-roll" display={hiddenParts?.includes("tape-roll") ? "none" : undefined} data-art="tape-roll">
<path id={`${idPrefix}--tape-roll-body`} data-part="tape-roll-body" d="M-20 -14 L-20 0 Q-1 9 21 1 L21 -13 Z" fill={palette.paper} stroke={palette.ink} strokeWidth="1.3" strokeLinecap="round" strokeLinejoin="round" />
<ellipse id={`${idPrefix}--tape-roll-top`} data-part="tape-roll-top" cx="0" cy="-14" rx="21" ry="7" fill={palette.paper} stroke={palette.ink} strokeWidth="1.3" />
<ellipse id={`${idPrefix}--tape-roll-core`} data-part="tape-roll-core" cx="0" cy="-14" rx="12" ry="4" fill={palette.ink} stroke={palette.ink} strokeWidth="0.75" />
<path id={`${idPrefix}--tape-roll-tail`} data-part="tape-roll-tail" d="M20 -12 L24 4 L35 5" fill="none" stroke={palette.ink} strokeWidth="0.9" strokeLinecap="round" strokeLinejoin="round" />
</g>
);
});