UNPKG

jsx-slack

Version:

Build JSON object for Slack Block Kit surfaces from JSX

3 lines (2 loc) 758 B
import{resolveTagName as s}from"./block-kit/utils.mjs";import{JSXSlack as a}from"./jsx.mjs";const c=r=>{var e;const t=a.isValidElement(r)?(e=r.$$jsxslack.props)==null?void 0:e.__source:r;if(typeof t=="object"&&t&&Object.prototype.hasOwnProperty.call(t,"columnNumber")&&Object.prototype.hasOwnProperty.call(t,"fileName")&&Object.prototype.hasOwnProperty.call(t,"lineNumber"))return t};class n extends Error{constructor(e,t){super(e),this.name=new.target.name,this.originalStack=this.stack,Object.setPrototypeOf(this,new.target.prototype),this.resetStack(t)}resetStack(e){const t=c(e);if(!t)return;const o=s(e)||"JSX element";this.stack=`${this.name}: ${this.message} at ${o} (${t.fileName}:${t.lineNumber}:${t.columnNumber})`}}export{n as JSXSlackError};