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 t;const e=a.isValidElement(r)?(t=r.$$jsxslack.props)==null?void 0:t.__source:r;if(typeof e=="object"&&e&&Object.prototype.hasOwnProperty.call(e,"columnNumber")&&Object.prototype.hasOwnProperty.call(e,"fileName")&&Object.prototype.hasOwnProperty.call(e,"lineNumber"))return e};class l extends Error{constructor(t,e){super(t),this.name=new.target.name,this.originalStack=this.stack,Object.setPrototypeOf(this,new.target.prototype),this.resetStack(e)}resetStack(t){const e=c(t);if(!e)return;const o=s(t)||"JSX element";this.stack=`${this.name}: ${this.message} at ${o} (${e.fileName}:${e.lineNumber}:${e.columnNumber})`}}export{l as JSXSlackError};