UNPKG

react-amiga-guru-meditation

Version:

A React Error Boundary styled like the Amiga Guru Meditation — accessible, themeable, zero runtime dependencies, ARIA-compliant, CSS variables theming.

1 lines 5.08 kB
{"version":3,"sources":["../src/AmigaErrorBoundary.module.css"],"sourcesContent":["/* CSS variables (defaults inlined inside var() so any wrapping ancestor that\n * sets --ragm-* gets inherited — declaring them directly on .root would block\n * theming via CSS-only. */\n\n.root {\n position: relative;\n z-index: var(--ragm-z-index, 9999);\n box-sizing: border-box;\n border: var(--ragm-border-width, 6px) var(--ragm-border-style, solid) var(--ragm-fg, #ff2222);\n background-color: var(--ragm-bg, #000000);\n color: var(--ragm-fg, #ff2222);\n padding: var(--ragm-padding, 24px);\n text-align: center;\n font-family: var(--ragm-font-family, \"Times New Roman\", Times, serif);\n font-size: var(--ragm-font-size, 18px);\n font-weight: var(--ragm-font-weight, 400);\n line-height: var(--ragm-line-height, 1.4);\n\n animation-name: ragm-blink;\n animation-duration: var(--ragm-blink-duration, 1s);\n animation-timing-function: step-end;\n animation-iteration-count: infinite;\n animation-direction: alternate;\n}\n\n.root * {\n box-sizing: border-box;\n}\n\n.noBlink {\n animation: none;\n}\n\n.portal {\n position: fixed;\n inset: 0;\n z-index: var(--ragm-z-index, 9999);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n padding: var(--ragm-portal-padding, 0);\n background-color: var(--ragm-bg, #000000);\n color: var(--ragm-fg, #ff2222);\n border: var(--ragm-border-width, 6px) var(--ragm-border-style, solid) var(--ragm-fg, #ff2222);\n font-family: var(--ragm-font-family, \"Times New Roman\", Times, serif);\n font-size: var(--ragm-font-size, 18px);\n font-weight: var(--ragm-font-weight, 400);\n line-height: var(--ragm-line-height, 1.4);\n text-align: center;\n\n animation-name: ragm-blink;\n animation-duration: var(--ragm-blink-duration, 1s);\n animation-timing-function: step-end;\n animation-iteration-count: infinite;\n animation-direction: alternate;\n}\n\n.portal .root {\n border: 0;\n background: transparent;\n animation: none;\n padding: var(--ragm-padding, 24px);\n max-width: var(--ragm-max-width, 760px);\n width: 100%;\n}\n\n.title {\n margin: 0 0 12px;\n}\n\n.message {\n margin: 0 0 12px;\n}\n\n.code {\n font-family: var(--ragm-mono-family, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);\n word-break: break-word;\n}\n\n.details {\n text-align: left;\n margin: 16px auto 0;\n padding: 12px;\n border: 1px dashed var(--ragm-fg, #ff2222);\n font-size: 0.85em;\n max-width: var(--ragm-details-max-width, 100%);\n}\n\n.details summary {\n cursor: pointer;\n font-weight: bold;\n margin-bottom: 8px;\n user-select: none;\n}\n\n.details pre {\n margin: 0;\n white-space: pre-wrap;\n word-break: break-word;\n font-family: var(--ragm-mono-family, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);\n font-size: 12px;\n}\n\n@keyframes ragm-blink {\n 0% {\n border-color: var(--ragm-fg, #ff2222);\n }\n 50% {\n border-color: var(--ragm-bg, #000000);\n }\n 100% {\n border-color: var(--ragm-fg, #ff2222);\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .root,\n .portal {\n animation: none;\n }\n}\n"],"mappings":";AAIA,CAACA;AACC,YAAU;AACV,WAAS,IAAI,cAAc,EAAE;AAC7B,cAAY;AACZ,UAAQ,IAAI,mBAAmB,EAAE,KAAK,IAAI,mBAAmB,EAAE,OAAO,IAAI,SAAS,EAAE;AACrF,oBAAkB,IAAI,SAAS,EAAE;AACjC,SAAO,IAAI,SAAS,EAAE;AACtB,WAAS,IAAI,cAAc,EAAE;AAC7B,cAAY;AACZ,eAAa,IAAI,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,EAAE;AAC/D,aAAW,IAAI,gBAAgB,EAAE;AACjC,eAAa,IAAI,kBAAkB,EAAE;AACrC,eAAa,IAAI,kBAAkB,EAAE;AAErC,kBAAgB;AAChB,sBAAoB,IAAI,qBAAqB,EAAE;AAC/C,6BAA2B;AAC3B,6BAA2B;AAC3B,uBAAqB;AACvB;AAEA,CArBCA,wBAqBK;AACJ,cAAY;AACd;AAEA,CAACC;AACC,aAAW;AACb;AAEA,CAACC;AACC,YAAU;AACV,SAAO;AACP,WAAS,IAAI,cAAc,EAAE;AAC7B,WAAS;AACT,eAAa;AACb,mBAAiB;AACjB,kBAAgB;AAChB,WAAS,IAAI,qBAAqB,EAAE;AACpC,oBAAkB,IAAI,SAAS,EAAE;AACjC,SAAO,IAAI,SAAS,EAAE;AACtB,UAAQ,IAAI,mBAAmB,EAAE,KAAK,IAAI,mBAAmB,EAAE,OAAO,IAAI,SAAS,EAAE;AACrF,eAAa,IAAI,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,EAAE;AAC/D,aAAW,IAAI,gBAAgB,EAAE;AACjC,eAAa,IAAI,kBAAkB,EAAE;AACrC,eAAa,IAAI,kBAAkB,EAAE;AACrC,cAAY;AAEZ,kBAAgB;AAChB,sBAAoB,IAAI,qBAAqB,EAAE;AAC/C,6BAA2B;AAC3B,6BAA2B;AAC3B,uBAAqB;AACvB;AAEA,CAzBCA,0BAyBO,CAtDPF;AAuDC,UAAQ;AACR,cAAY;AACZ,aAAW;AACX,WAAS,IAAI,cAAc,EAAE;AAC7B,aAAW,IAAI,gBAAgB,EAAE;AACjC,SAAO;AACT;AAEA,CAACG;AACC,UAAQ,EAAE,EAAE;AACd;AAEA,CAACC;AACC,UAAQ,EAAE,EAAE;AACd;AAEA,CAACC;AACC,eAAa,IAAI,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE;AACpF,cAAY;AACd;AAEA,CAACC;AACC,cAAY;AACZ,UAAQ,KAAK,KAAK;AAClB,WAAS;AACT,UAAQ,IAAI,OAAO,IAAI,SAAS,EAAE;AAClC,aAAW;AACX,aAAW,IAAI,wBAAwB,EAAE;AAC3C;AAEA,CATCA,2BASQ;AACP,UAAQ;AACR,eAAa;AACb,iBAAe;AACf,eAAa;AACf;AAEA,CAhBCA,2BAgBQ;AACP,UAAQ;AACR,eAAa;AACb,cAAY;AACZ,eAAa,IAAI,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE;AACpF,aAAW;AACb;AAEA,WAtFkBC;AAuFhB;AACE,kBAAc,IAAI,SAAS,EAAE;AAC/B;AACA;AACE,kBAAc,IAAI,SAAS,EAAE;AAC/B;AACA;AACE,kBAAc,IAAI,SAAS,EAAE;AAC/B;AACF;AAEA,QAAO,wBAAyB;AAC9B,GAjHDP;AAAA,EAkHC,CArFDE;AAsFG,eAAW;AACb;AACF;","names":["root","noBlink","portal","title","message","code","details","ragm-blink"]}