UNPKG

@anikitenko/bp5-rjsf-theme

Version:

BlueprintJS 5 theme for React JSON Schema Form

2 lines 16.1 kB
/*! For license information please see index.js.LICENSE.txt */ (()=>{"use strict";var e={16:(e,t,r)=>{r.d(t,{A:()=>s});var i=r(601),n=r.n(i),a=r(314),l=r.n(a)()(n());l.push([e.id,".bp5-rjsf-selectWrapper {\n display: flex;\n}\n\n.bp5-rjsf-selectWrapper > select {\n flex: 1;\n}\n",""]);const s=l},20:(e,t,r)=>{var i=r(953),n=Symbol.for("react.element"),a=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),l=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function o(e,t,r){var i,o={},d=null,c=null;for(i in void 0!==r&&(d=""+r),void 0!==t.key&&(d=""+t.key),void 0!==t.ref&&(c=t.ref),t)a.call(t,i)&&!s.hasOwnProperty(i)&&(o[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps)void 0===o[i]&&(o[i]=t[i]);return{$$typeof:n,type:e,key:d,ref:c,props:o,_owner:l.current}}t.jsx=o,t.jsxs=o},56:(e,t,r)=>{e.exports=function(e){var t=r.nc;t&&e.setAttribute("nonce",t)}},72:e=>{var t=[];function r(e){for(var r=-1,i=0;i<t.length;i++)if(t[i].identifier===e){r=i;break}return r}function i(e,i){for(var a={},l=[],s=0;s<e.length;s++){var o=e[s],d=i.base?o[0]+i.base:o[0],c=a[d]||0,u="".concat(d," ").concat(c);a[d]=c+1;var p=r(u),m={css:o[1],media:o[2],sourceMap:o[3],supports:o[4],layer:o[5]};if(-1!==p)t[p].references++,t[p].updater(m);else{var h=n(m,i);i.byIndex=s,t.splice(s,0,{identifier:u,updater:h,references:1})}l.push(u)}return l}function n(e,t){var r=t.domAPI(t);return r.update(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;r.update(e=t)}else r.remove()}}e.exports=function(e,n){var a=i(e=e||[],n=n||{});return function(e){e=e||[];for(var l=0;l<a.length;l++){var s=r(a[l]);t[s].references--}for(var o=i(e,n),d=0;d<a.length;d++){var c=r(a[d]);0===t[c].references&&(t[c].updater(),t.splice(c,1))}a=o}}},113:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},314:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",i=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),i&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),i&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,i,n,a){"string"==typeof e&&(e=[[null,e,void 0]]);var l={};if(i)for(var s=0;s<this.length;s++){var o=this[s][0];null!=o&&(l[o]=!0)}for(var d=0;d<e.length;d++){var c=[].concat(e[d]);i&&l[c[0]]||(void 0!==a&&(void 0===c[5]||(c[1]="@layer".concat(c[5].length>0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=a),r&&(c[2]?(c[1]="@media ".concat(c[2]," {").concat(c[1],"}"),c[2]=r):c[2]=r),n&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=n):c[4]="".concat(n)),t.push(c))}},t}},540:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},601:e=>{e.exports=function(e){return e[1]}},659:e=>{var t={};e.exports=function(e,r){var i=function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}(e);if(!i)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");i.appendChild(r)}},825:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(r){!function(e,t,r){var i="";r.supports&&(i+="@supports (".concat(r.supports,") {")),r.media&&(i+="@media ".concat(r.media," {"));var n=void 0!==r.layer;n&&(i+="@layer".concat(r.layer.length>0?" ".concat(r.layer):""," {")),i+=r.css,n&&(i+="}"),r.media&&(i+="}"),r.supports&&(i+="}");var a=r.sourceMap;a&&"undefined"!=typeof btoa&&(i+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(i,e,t.options)}(t,e,r)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},848:(e,t,r)=>{e.exports=r(20)},953:e=>{e.exports=require("react")}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var a=t[i]={id:i,exports:{}};return e[i](a,a.exports,r),a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nc=void 0;var i={};r.r(i),r.d(i,{Bp5Theme:()=>U});const n=require("@rjsf/core");var a=r(848);const l=require("@blueprintjs/core");var s=r(953),o=r.n(s);const d=require("@rjsf/utils"),c=require("@blueprintjs/select"),u=e=>{const{options:t,value:r=[],disabled:i,onChange:n,placeholder:s,registry:o}=e,u=t.enumOptions||[],{translateString:p}=o,m=u.map((e=>({label:p(d.TranslatableString.OptionPrefix,[e.value]),value:e.value}))),h=m.filter((e=>r.includes(e.value)));return(0,a.jsx)(c.MultiSelect,{items:m,itemRenderer:(e,{handleClick:t,modifiers:r})=>{const i=h.some((t=>t.value===e.value));return(0,a.jsx)(l.MenuItem,{text:e.label,active:r.active,onClick:t,shouldDismissPopover:!1,icon:i?"tick":"blank"},e.value)},itemPredicate:(e,t,r,i)=>{const n=t.label?.toLowerCase().includes(e.toLowerCase());return n||!1},onItemSelect:e=>{r.includes(e.value)||n([...r,e.value])},onRemove:e=>{n(r.filter((t=>t!==e.value)))},selectedItems:h,tagRenderer:e=>e.label,tagInputProps:{disabled:i,placeholder:s},popoverProps:{minimal:!0},fill:!0,resetOnSelect:!0})},p={CheckboxWidget:e=>{const{schema:t,id:r,value:i,disabled:n,readonly:s,label:o,autofocus:c,onBlur:u,onFocus:p,onChange:m,uiSchema:h}=e,f=(0,d.schemaRequiresTrueValue)(t),v=(0,d.getUiOptions)(h),y=v["ui:help"]||t.description,b=v["ui:title"]||t.title||o;return(0,a.jsx)(l.FormGroup,{disabled:n,helperText:y,label:b,labelFor:r,labelInfo:(o||v["ui:title"]||t.title)&&f?"(required)":null,children:(0,a.jsx)(l.Checkbox,{id:r,checked:void 0!==i&&i,required:f,disabled:n||s,autoFocus:c,type:"checkbox",onChange:e=>m(e.target.checked),onBlur:u&&(e=>u(r,e.target.checked)),onFocus:p&&(e=>p(r,e.target.checked)),children:"Should we?"})})},CheckboxesWidget:({id:e,disabled:t,options:{inline:r=!1,enumOptions:i,enumDisabled:n,emptyValue:o},value:c,autofocus:u=!1,readonly:p,onChange:m,onBlur:h,onFocus:f,uiSchema:v,schema:y,label:b,required:x})=>{const g=Array.isArray(c)?c:[c],j=(0,s.useCallback)((({target:t})=>h(e,(0,d.enumOptionsValueForIndex)(t&&t.value,i,o))),[h,e]),S=(0,s.useCallback)((({target:t})=>f(e,(0,d.enumOptionsValueForIndex)(t&&t.value,i,o))),[f,e]),C=(0,d.getUiOptions)(v),T=C["ui:description"]||y.description,O=C["ui:title"]||y.title||b;return(0,a.jsx)(l.FormGroup,{disabled:t,helperText:T,label:O,labelInfo:(b||C["ui:title"]||y.title)&&x?"(required)":null,children:Array.isArray(i)&&i.map(((s,o)=>{const c=(0,d.enumOptionsIsSelected)(s.value,g),h=Array.isArray(n)&&-1!==n.indexOf(s.value);return(0,a.jsx)(l.Checkbox,{id:`${e}_${o}`,label:s.label,required:x,inline:r,checked:c,autoFocus:u&&0===o,onChange:e=>{e.target.checked?m((0,d.enumOptionsSelectValue)(o,g,i)):m((0,d.enumOptionsDeselectValue)(o,g,i))},onBlur:j,onFocus:S,disabled:t||h||p,"aria-describedby":(0,d.ariaDescribedByIds)(e)},o+1)}))})},TextWidget:e=>{const{id:t,placeholder:r,required:i,readonly:n,disabled:o,label:c,value:u,onChange:p,onBlur:m,onFocus:h,autofocus:f,options:v,schema:y,uiSchema:b}=e,[x,g]=(0,s.useState)(u||""),j=(0,d.getUiOptions)(b),S=j["ui:description"]||y.description,C=j["ui:title"]||y.title||c;return(0,a.jsx)(l.FormGroup,{disabled:o,helperText:S,fill:!0,label:C,labelFor:t,labelInfo:(c||j["ui:title"]||y.title)&&i?"(required)":null,children:(0,a.jsx)(l.InputGroup,{id:t,fill:!0,placeholder:r,disabled:o,readOnly:n,autoFocus:f,onChange:({target:{value:e}})=>{const t=v.emptyValue||" ";g(""===e?t:e)},onBlur:e=>{const r=e.target.value,i=v.emptyValue||" ";p(""===r?i:r),m(t,""===r?i:r)},onFocus:({target:{value:e}})=>{const r=v.emptyValue||" ";h(t,""===e?r:e)},value:x})})},UpDownWidget:e=>{const{id:t,required:r,readonly:i,disabled:n,label:s,value:o,onChange:c,onBlur:u,onFocus:p,autofocus:m,schema:h,uiSchema:f,placeholder:v}=e,y=e=>{c(e)},b=(0,d.getUiOptions)(f),x=b["ui:description"]||h.description,g=b["ui:title"]||h.title||s;return(0,a.jsx)(l.FormGroup,{disabled:n,helperText:x,label:g,labelFor:t,labelInfo:(s||b["ui:title"]||h.title)&&r?"(required)":null,children:(0,a.jsx)(l.NumericInput,{placeholder:v,onValueChange:y,disabled:n,readOnly:i,autoFocus:m,onChange:y,onBlur:({target:{value:e}})=>u(t,e),onFocus:({target:{value:e}})=>p(t,e),value:o,fill:!0})})},SelectWidget:e=>{const{schema:t,id:r,options:i,value:o,required:c,disabled:p,multiple:m=!1,autofocus:h=!1,onChange:f,onBlur:v,onFocus:y,placeholder:b,uiSchema:x,label:g}=e,{enumOptions:j,enumDisabled:S,emptyValue:C}=i,T=m?[]:"",O=(0,n.getDefaultRegistry)(),k=(0,d.getUiOptions)(x),F=k["ui:help"]||t.description,I=k["ui:title"]||t.title||g,{translateString:A}=O,B=[];if(m||B.push({value:"",label:b&&""!==b?b:"Select option",disabled:!0}),Array.isArray(j))for(const e of j)B.push({value:e.value,label:A(d.TranslatableString.OptionPrefix,[e.value]),disabled:S&&-1!==S.indexOf(e.value)});const q=(0,s.useCallback)((e=>y(r,(0,d.enumOptionsValueForIndex)(e.currentTarget.value,j,C))),[y,r,t,j,C]),_=(0,s.useCallback)((e=>v(r,(0,d.enumOptionsValueForIndex)(e.currentTarget.value,j,C))),[v,r,t,j,C]),D=(0,s.useCallback)((e=>f((0,d.enumOptionsValueForIndex)(e.currentTarget.value,j,C))),[f,t]);return(0,a.jsx)(l.FormGroup,{disabled:p,helperText:F,label:I,labelFor:r,labelInfo:(g||k["ui:title"]||t.title)&&c?"(required)":null,children:m?(0,a.jsx)(u,{...e}):(0,a.jsx)(l.HTMLSelect,{id:r,fill:!0,className:"bp5-rjsf-selectWrapper",disabled:p,required:c,autoFocus:h,onBlur:_,value:void 0===o?T:o,onFocus:q,onChange:D,"aria-describedby":(0,d.ariaDescribedByIds)(r),options:B})})}},m=p,h=({children:e,key:t})=>(0,a.jsx)("div",{children:e},t),f=({idSchema:e,title:t,uiSchema:r,required:i,schema:n,registry:l})=>{if(!t)return null;const s=(0,d.getUiOptions)(r),o=(0,d.getTemplate)("TitleFieldTemplate",l,s),c=`${e.$id}__title`;return(0,a.jsx)(o,{id:c,title:t,uiSchema:r,required:i,schema:n,registry:l})},v=({idSchema:e,description:t,uiSchema:r,registry:i,schema:n})=>{if(!t)return null;const l=(0,d.getUiOptions)(r),s=(0,d.getTemplate)("DescriptionFieldTemplate",i,l),o=`${e.$id}__description`;return(0,a.jsx)(s,{id:o,description:t,schema:n,registry:i})},y=e=>(0,a.jsx)("div",{children:(0,a.jsxs)("div",{style:{display:"flex",gap:10,alignItems:"center"},children:[(0,a.jsx)("div",{style:{flex:1},children:e.children}),(0,a.jsx)("div",{children:e.hasToolbar&&(0,a.jsxs)(l.ButtonGroup,{variant:"minimal",style:{verticalAlign:"middle"},children:[(e.hasMoveUp||e.hasMoveDown)&&(0,a.jsx)(l.Button,{icon:"arrow-up",tabIndex:-1,disabled:e.disabled||e.readonly||!e.hasMoveUp,onClick:e.onReorderClick(e.index,e.index-1)}),(e.hasMoveUp||e.hasMoveDown)&&(0,a.jsx)(l.Button,{icon:"arrow-down",tabIndex:-1,disabled:e.disabled||e.readonly||!e.hasMoveDown,onClick:e.onReorderClick(e.index,e.index+1)}),e.hasRemove&&(0,a.jsx)(l.Button,{icon:"trash",tabIndex:-1,disabled:e.disabled||e.readonly,onClick:e.onDropIndexClick(e.index)})]})})]})},e.key),b=({props:e})=>{const t=e.items,r=(0,d.getUiOptions)(e.uiSchema),{title:i}=e,n=r["ui:title"]||i,s=r["ui:description"]||e.schema.description;return(0,a.jsxs)("div",{className:e.className,children:[(0,a.jsx)(f,{idSchema:e.idSchema,title:n,uiSchema:r,required:e.required,schema:e.schema,registry:e.registry}),(r["ui:description"]||e.schema.description)&&(0,a.jsx)("div",{className:"field-description",children:s},`field-description-${e.idSchema.$id}`),(0,a.jsx)("div",{className:"row array-item-list",children:t?.map(y)},`array-item-list-${e.idSchema.$id}`),e.canAdd&&(0,a.jsx)(l.Button,{fill:!0,icon:"plus",className:"array-item-add",onClick:e.onAddClick,disabled:e.disabled||e.readonly,style:{margin:"5px"}})]})},x=({props:e})=>{const t=e.items,r=(0,d.getUiOptions)(e.uiSchema),i=r["ui:title"]||e.title,n=r["ui:description"]||e.schema.description;return(0,a.jsxs)("div",{children:[(0,a.jsx)(f,{idSchema:e.idSchema,title:i,uiSchema:r,required:e.required,schema:e.schema,registry:e.registry}),(r["ui:description"]||e.schema.description)&&(0,a.jsx)(v,{idSchema:e.idSchema,description:n,schema:e.schema,registry:e.registry,uiSchema:r}),(0,a.jsxs)("div",{children:[t?.map(y),e.canAdd&&(0,a.jsx)(l.Button,{fill:!0,icon:"plus",className:"array-item-add",onClick:e.onAddClick,disabled:e.disabled||e.readonly,style:{margin:"5px"}})]},`array-item-list-${e.idSchema.$id}`)]})},g={ObjectFieldTemplate:e=>{const{description:t,disabled:r,formData:i,idSchema:n,onAddClick:s,properties:o,readonly:c,schema:u,title:p,uiSchema:m,registry:h,required:f}=e,v=(0,d.getUiOptions)(m),y=v["ui:title"]||p,b=(0,d.getTemplate)("TitleFieldTemplate",h,v),x=(0,d.getTemplate)("DescriptionFieldTemplate",h,v);return(0,a.jsxs)(l.Card,{style:{marginBottom:20},children:[(v["ui:title"]||p)&&(0,a.jsx)(b,{id:`${n.$id}-title`,title:y,required:f,schema:u,uiSchema:m,registry:h}),t&&(0,a.jsx)(x,{id:`${n.$id}-description`,description:t,schema:u,uiSchema:m,registry:h}),o.map(((e,t)=>(0,a.jsx)("div",{style:{display:e.hidden?"none":"block"},children:e.content},t+1))),(0,d.canExpand)(u,m,i)?(0,a.jsx)(l.Button,{fill:!0,icon:"plus",onClick:s(u),disabled:r||c,className:"object-property-expand",style:{margin:"5px"}}):null]})},FieldTemplate:e=>{const{children:t,errors:r,help:i,registry:n,uiSchema:l}=e,s=(0,d.getUiOptions)(l),o=(0,d.getTemplate)("WrapIfAdditionalTemplate",n,s);return(0,a.jsxs)(o,{...e,children:[t,r,i]})},ErrorListTemplate:({errors:e,registry:t})=>{const{translateString:r}=t;return(0,a.jsx)(l.Callout,{title:r(d.TranslatableString.ErrorsLabel),intent:l.Intent.DANGER,style:{marginBottom:10},children:e.map(((e,t)=>(0,a.jsx)(h,{children:e.stack},t+1)))})},ArrayFieldTemplate:e=>{let{schema:t,registry:r}=e;return r||(r=(0,n.getDefaultRegistry)()),r.schemaUtils.isMultiSelect(t)?(0,a.jsx)(b,{props:e}):(0,a.jsx)(x,{props:e})},TitleFieldTemplate:e=>{const{id:t,title:r,uiSchema:i,required:n}=e;return(0,a.jsxs)(l.H5,{id:t,children:[i&&i["ui:title"]||r,n&&(0,a.jsx)("span",{className:"bp5-intent-danger",children:" *"})]})},DescriptionFieldTemplate:e=>{const{id:t,description:r}=e;return r?(0,a.jsx)(l.Callout,{id:t,style:{marginBottom:"1em"},children:r}):null},WrapIfAdditionalTemplate:e=>{const{children:t,id:r,disabled:i,label:n,onKeyChange:s,onDropPropertyClick:c,readonly:u,required:p,schema:m,classNames:h,style:f}=e;return d.ADDITIONAL_PROPERTY_FLAG in m?(0,a.jsxs)(l.Card,{style:{display:"flex",alignItems:"center",gap:"5px",marginBottom:"5px"},children:[(0,a.jsxs)("div",{style:{flex:1},children:[(0,a.jsx)(l.FormGroup,{children:(0,a.jsx)(l.InputGroup,{required:p,disabled:i||u,id:`${r}-key`,onBlur:u?void 0:({target:e})=>s(e.value),defaultValue:n,size:"small"})}),o().Children.toArray(t)]}),(0,a.jsx)("div",{style:{alignSelf:"center"},children:(0,a.jsx)(l.Button,{intent:"danger",variant:"minimal",icon:"remove",tabIndex:-1,disabled:i||u,onClick:c(n)})})]}):(0,a.jsx)("div",{className:h,style:f,children:o().Children.toArray(t)})},ButtonTemplates:{SubmitButton:e=>{const{uiSchema:t}=e,{norender:r,submitText:i,props:n}=(0,d.getSubmitButtonOptions)(t);return(0,a.jsx)("div",{children:!r&&(0,a.jsx)(l.Button,{type:"submit",...n,children:i})})}}},j=g;var S=r(72),C=r.n(S),T=r(825),O=r.n(T),k=r(659),F=r.n(k),I=r(56),A=r.n(I),B=r(540),q=r.n(B),_=r(113),D=r.n(_),w=r(16),N={};N.styleTagTransform=D(),N.setAttributes=A(),N.insert=F().bind(null,"head"),N.domAPI=O(),N.insertStyleElement=q(),C()(w.A,N),w.A&&w.A.locals&&w.A.locals;const{fields:M,widgets:R}=(0,n.getDefaultRegistry)(),U={widgets:{...R,...m},fields:{...M},templates:j};module.exports=i})();