@gisce/ooui 0.19.3 → 0.19.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Label.d.ts +1 -1
- package/dist/Label.d.ts.map +1 -1
- package/dist/ooui.es.js +1 -1
- package/dist/ooui.es.js.map +1 -1
- package/dist/ooui.umd.js +1 -1
- package/dist/ooui.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/Label.ts +2 -2
- package/src/spec/Label.spec.ts +3 -3
package/dist/ooui.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(C,Oe){typeof exports=="object"&&typeof module<"u"?Oe(exports,require("html-entities"),require("moment")):typeof define=="function"&&define.amd?define(["exports","html-entities","moment"],Oe):(C=typeof globalThis<"u"?globalThis:C||self,Oe(C.ooui={},C.htmlEntities,C.moment))})(this,function(C,Oe,nn){"use strict";const De=(t=>t&&typeof t=="object"&&"default"in t?t:{default:t})(nn),We=class{constructor(t){if(this._type="",this._parsedWidgetProps={},this._colspan=We._defaultColspan,this._readOnly=!1,this._invisible=!1,t){if(t.colspan&&(this._colspan=+t.colspan),t.readonly&&(t.readonly==="1"||t.readonly===1||t.readonly===!0)&&(this._readOnly=!0),t.invisible&&(t.invisible===1||t.invisible==="1"||t.invisible===!0)&&(this._invisible=!0),t.type&&(this._type=t.type),t.context&&(this._context=t.context),t.domain&&(typeof t.domain!="string"?this._domain=JSON.stringify(t.domain):this._domain=t.domain),t.widget_props)try{this._parsedWidgetProps=JSON.parse(t.widget_props.replace(/'/g,'"'))}catch{throw new Error("Error parsing widget_props")}t.key&&(this._key=t.key)}}static get defaultColspan(){return We._defaultColspan}static set defaultColspan(t){We._defaultColspan=t}get readOnly(){return this._readOnly}set readOnly(t){this._readOnly=t}get colspan(){return this._colspan}set colspan(t){this._colspan=+t}get invisible(){return this._invisible}set invisible(t){this._invisible=t}get type(){return this._type}set type(t){this._type=t}get context(){return this._context}set context(t){this._context=t}get domain(){return this._domain}set domain(t){this._domain=t}get key(){return this._key}set key(t){this._key=t}get parsedWidgetProps(){return this._parsedWidgetProps}set parsedWidgetProps(t){this._parsedWidgetProps=t}};let he=We;he._defaultColspan=1;const an=({entry:t,values:e,fields:r})=>{const[i,n,s]=t;if(r[i]===void 0||e[i]===void 0&&r[i].type!=="boolean"&&r[i].type!=="many2one")return!1;let a=s,u=r[i].type==="boolean"?!!e[i]:e[i];switch(r[i].type==="many2one"&&s===!1&&e[i]===void 0?a=void 0:(u=u===void 0?!1:u,u=u===null?!1:u),r[i].type==="many2one"&&Array.isArray(u)&&u[0]===void 0&&(u=!1),r[i].type==="boolean"&&(s===0||s===1)&&(a=s!==0),n.toLowerCase()){case"=":case"==":return u==a;case"<>":case"!=":return u!=a;case">":return u>a;case">=":return u>=a;case"<":return u<a;case"<=":return u<=a;case"in":return a.includes(u);case"not in":return!a.includes(u);default:return!1}},G=t=>Oe.decode(t,{level:"xml"}),sn=({attrs:t,values:e,fields:r})=>{const u=t.replace(/\(/g,"[").replace(/\)/g,"]").replace(/\'/g,'"').replace(/True/g,"true").replace(/False/g,"false"),f=G(u),g=JSON.parse(f),b={};for(const w of Object.keys(g))g[w].map(T=>an({entry:T,values:e,fields:r})).every(T=>T===!0)&&(b[w]=!0);return b},on=({tagAttributes:t,values:e,fields:r})=>{const i=t.attrs?sn({attrs:t.attrs,values:e,fields:r}):{};return{...t,...i,attrs:void 0}};class W extends he{constructor(e){super(e),this._id="",this._label="",this._nolabel=!1,this._required=!1,this._activated=!0,this._selectionValues=new Map([]),this._activated=!0,e&&(e.name&&(this._id=e.name),e.activated&&(this._activated=e.activated),e.string&&(this._label=G(e.string)),e.help&&(this._tooltip=G(e.help)),e.nolabel&&(e.nolabel==="1"||typeof e.nolabel=="boolean"&&e.nolabel===!0)&&(this._nolabel=!0),e.required&&(e.required==="1"||e.required===!0||e.required==="True")&&(this._required=!0),e.sum&&(this._sum=e.sum),e.selection&&(this._selectionValues=new Map(e.selection)))}get id(){return this._id}set id(e){this._id=e}get label(){return this._label}set label(e){this._label=e}get nolabel(){return this._nolabel}set nolabel(e){this._nolabel=e}get required(){return this._required}set required(e){this._required=e}get tooltip(){return this._tooltip}set tooltip(e){this._tooltip=e}get activated(){return this._activated}set activated(e){this._activated=e}get sum(){return this._sum}set sum(e){this._sum=e}get selectionValues(){return this._selectionValues}set selectionValues(e){this._selectionValues=e}findById(e){let r=null;return this._id===e&&(r=this),r}}class wt extends he{findById(e){return null}}class bt extends W{constructor(e){super({...e,nolabel:!0}),this._text="",this._align="left",this._labelType="default",this._labelSize="text",this._fieldForLabel=null,e!=null&&e.fieldForLabel&&(this._fieldForLabel=e.fieldForLabel),e.widget_props&&(this.parsedWidgetProps.label_type&&(this.labelType=this.parsedWidgetProps.label_type),this.parsedWidgetProps.label_size&&(this.labelSize=this.parsedWidgetProps.label_size))}get text(){return this._text}set text(e){this._text=e}get align(){return this._align}set align(e){this._align=e}get labelType(){return this._labelType}set labelType(e){this._labelType=e}get labelSize(){return this._labelSize}set labelSize(e){this._labelSize=e}get fieldForLabel(){return this._fieldForLabel}set fieldForLabel(e){this._fieldForLabel=e}}class Me{get columns(){return this._columns}set columns(e){this._columns=e}get colspan(){return this._colspan}set colspan(e){this._colspan=e}get rows(){return this._rows}set rows(e){this._rows=e}get index(){return this._index}get readOnly(){return this._readOnly}set readOnly(e){this._readOnly=e}get key(){return this._key}set key(e){this._key=e}constructor(e=4,r=6,i=!1,n=void 0){this._columns=e,this._colspan=r,this._rows=[[]],this._index=0,this._readOnly=i,this._key=n}freePosition(){const e=this._rows[this._index].filter(r=>!r.invisible).reduce((r,i)=>r+i.colspan,0);return this._columns-e}addWidget(e,r){const i=[],n=r?r.addLabel:!0;if(e instanceof wt){this._rows.push([]),this._index++;return}if(e.colspan>this._columns&&(e.colspan=this._columns),e.readOnly=e.readOnly||this.readOnly,n&&e instanceof W&&!e.nolabel){e.colspan>1&&(e.colspan-=1);const a=new bt({name:e.id+"_label",string:e.label,invisible:e.invisible,help:e.tooltip,fieldForLabel:e.id,key:e.key+"-label"});a.type="label",i.push(a),i.push(e)}else i.push(e);i.reduce((a,u)=>a+u.colspan,0)>this.freePosition()&&(this._rows.push([]),this._index++),this._rows[this._index]=this._rows[this._index].concat(i)}findById(e){let r=null;return this._rows&&this._rows.length&&this._rows.forEach(i=>{r||i&&i.length&&i.forEach(n=>{r||n&&(r=n.findById(e))})}),r}}const je=class extends he{constructor(t){super(t),this._id="",this._mustExpand=!1,this._label="",this._container=new Me(t&&t.col,je._defaultColspan,this.readOnly,t&&t.key),t&&(t.name&&(this._id=t.name),t.colspan?this._container.colspan=+t.colspan:this._mustExpand=!0,t.string&&(this._label=G(t.string)))}get id(){return this._id}set id(t){this._id=t}static get defaultColspan(){return je._defaultColspan}static set defaultColspan(t){je._defaultColspan=t}get container(){return this._container}set container(t){this._container=t}get colspan(){return this._container.colspan}set colspan(t){this._container.colspan=+t}get mustExpand(){return this._mustExpand}set mustExpand(t){this._mustExpand=t}get label(){return this._label}set label(t){this._label=t}findById(t){return t===this.id?this:this.container.findById(t)}};let de=je;de._defaultColspan=6;const Ye=class extends de{constructor(t){super(t),this._tabPosition="top",this._pages=[],this.colspan=Ye._defaultColspan,t&&(t.colspan&&(this.colspan=t.colspan),t.tabpos&&(this._tabPosition=t.tabpos))}static get defaultColspan(){return Ye._defaultColspan}static set defaultColspan(t){Ye._defaultColspan=t}get tabPosition(){return this._tabPosition}set tabPosition(t){this._tabPosition=t}get pages(){return[].concat.apply([],this._container.rows)}};let mt=Ye;mt._defaultColspan=3;class hr extends de{constructor(e){super(e),this._icon=null,e.icon&&(this._icon=e.icon)}get icon(){return this._icon}set icon(e){this._icon=e}}class dr extends de{constructor(e){super(e),this._icon=null,e&&e.icon&&(this._icon=e.icon)}get icon(){return this._icon}set icon(e){this._icon=e}}class gr extends W{constructor(e){if(super({...e,nolabel:(e==null?void 0:e.nolabel)!==void 0?e.nolabel:!0}),this._buttonType="workflow",this._caption="",this._confirmMessage="",this._primary=!1,this._danger=!1,e){if(e.string&&(this._caption=G(e.string)),e.buttonType&&(this._buttonType=e.buttonType),e.confirm&&(this._confirmMessage=G(e.confirm)),e.special&&e.special==="cancel"&&(this._buttonType="cancel"),e.icon&&(this._icon=e.icon),e.primary){const r=e.primary;(r==="1"||r===1||r===!0)&&(this._primary=!0)}if(e.danger){const r=e.danger;(r==="1"||r===1||r===!0)&&(this._danger=!0)}}}get buttonType(){return this._buttonType}set buttonType(e){this._buttonType=e}get caption(){return this._caption}set caption(e){this._caption=e}get icon(){return this._icon}set icon(e){this._icon=e}get confirmMessage(){return this._confirmMessage}set confirm(e){this._confirmMessage=e}get primary(){return this._primary}set primary(e){this._primary=e}get danger(){return this._danger}set danger(e){this._danger=e}}class _r extends de{constructor(e){super(e),this._defaultName="",e.default&&(this._defaultName=e.default)}get defaultName(){return this._defaultName}get defaultButton(){return this.buttons.find(e=>e.id===this.defaultName)}get secondaryButtons(){return this.buttons.filter(e=>e.id!==this.defaultName)}get buttons(){return this._container.rows[0]}}class ze extends W{constructor(e){super(e),this._placeholder="",this._isPassword=!1,this._translatable=!1,e&&(e.size&&(this._size=e.size),e.password&&(this.isPassword=e.password==="True"),e.translate&&(this.translatable=e.translate==="True"||e.translate===!0))}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e}get size(){return this._size}set size(e){this._size=e}get isPassword(){return this._isPassword}set isPassword(e){this._isPassword=e}get translatable(){return this._translatable}set translatable(e){this._translatable=e}}class qe extends W{constructor(e){if(super(e),this._placeholder="",this._mustExpand=!1,this._translatable=!1,e){if(e.placeholder&&(this._placeholder=G(e.placeholder)),e.colspan||(this._mustExpand=!0),e.height)try{this._height=parseInt(e.height)}catch{this._height=void 0}e.translate&&(this.translatable=e.translate==="True"||e.translate===!0)}}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e}get mustExpand(){return this._mustExpand}set mustExpand(e){this._mustExpand=e}get height(){return this._height}set height(e){this._height=e}get translatable(){return this._translatable}set translatable(e){this._translatable=e}}class ve extends W{constructor(e){super(e),this._size=150,e&&e.size&&(this._size=e.size)}get size(){return this._size}set size(e){this._size=e}}class pr extends W{constructor(e){super(e),this._size=150,this._relation="",e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}}class yr extends qe{}class vt extends W{constructor(e){super(e)}}class wr extends W{constructor(e){super(e)}}class $e extends W{constructor(e){if(super(e),this._integerDigits=16,this._decimalDigits=2,e!=null&&e.digits){const[r,i]=e.digits;this._integerDigits=r,this._decimalDigits=i}}get integerDigits(){return this._integerDigits}set integerDigits(e){this._integerDigits=e}get decimalDigits(){return this._decimalDigits}set decimalDigits(e){this._decimalDigits=e}}class br extends $e{}class mr extends $e{}class vr extends W{constructor(e){super(e)}}class Er extends W{constructor(e){super(e)}}class xr extends W{constructor(e){super(e),this._size=150,this._relation="",this._mustExpand=!1,e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation),e.colspan||(this._mustExpand=!0))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}get mustExpand(){return this._mustExpand}set mustExpand(e){this._mustExpand=e}}class Et extends W{constructor(e){super(e),this._size=150,this._relation="",this._views=null,this._mode=[],this._mustExpand=!1,e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation),e.mode&&(this._mode=e.mode.split(",")),e.views&&(this._views=e.views),e.colspan?this.colspan=e.colspan:this._mustExpand=!0,e.inv_field&&(this._inv_field=e.inv_field))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}get inv_field(){return this._inv_field}set inv_field(e){this._inv_field=e}get views(){return this._views}set views(e){this._views=e}get mode(){return this._mode}set mode(e){this._mode=e}get mustExpand(){return this._mustExpand}set mustExpand(e){this._mustExpand=e}}class Rr extends he{constructor(e){super(e),this._label="",this._icon=null,e&&(e.string&&(this._label=G(e.string)),e.icon&&(this._icon=e.icon))}get label(){return this._label}set label(e){this._label=e}get icon(){return this._icon}set icon(e){this._icon=e}findById(e){return null}}class Tr extends ve{}class Sr extends W{constructor(e){super(e),this._filenameField="",e&&e.filename&&(this._filenameField=e.filename)}get filenameField(){return this._filenameField}set filenameField(e){this._filenameField=e}}class Cr extends W{}class ln extends W{constructor(e){super(e)}}class Ar extends Et{constructor(e){super(e),this._titleField="",this._summaryField="",this._parsedWidgetProps&&(this._titleField=this._parsedWidgetProps.titleField,this._summaryField=this.parsedWidgetProps.summaryField)}get titleField(){return this._titleField}set titleField(e){this._titleField=e}get summaryField(){return this._summaryField}set summaryField(e){this._summaryField=e}}class Fr extends ve{constructor(e){super(e),this._nolabel=!0,this._card=!1,this._icon="",this._suffix="",this._parsedWidgetProps&&(this._card=this._parsedWidgetProps.card||!1,this._icon=this._parsedWidgetProps.icon||"",this._suffix=this._parsedWidgetProps.suffix||"")}get card(){return this._card}set card(e){this._card=e}get icon(){return this._icon}set icon(e){this._icon=e}get suffix(){return this._suffix}set suffix(e){this._suffix=e}}class xt extends W{constructor(e){super(e),this._size=150,this._relation="",this._field="name",this._columns=4,e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation),e.inv_field&&(this._inv_field=e.inv_field),this.parsedWidgetProps.hasOwnProperty("field")&&(this._field=this.parsedWidgetProps.field),this.parsedWidgetProps.columns&&(this._columns=this.parsedWidgetProps.columns))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}get inv_field(){return this._inv_field}set inv_field(e){this._inv_field=e}get field(){return this._field}set field(e){this._field=e}get columns(){return this._columns}set columns(e){this._columns=e}}class Or extends xt{}class Dr extends ve{get colors(){return this._parsedWidgetProps.colors||{}}}class Mr extends ve{constructor(e){super(e),this._direction="horizontal",e&&this.parsedWidgetProps.hasOwnProperty("direction")&&(this._direction=this.parsedWidgetProps.direction)}get direction(){return this._direction}set direction(e){this._direction=e}}class kr extends vt{}class Pr extends W{constructor(e){super(e),this._relation="",this._errorField=null,e&&(e.relation&&(this._relation=e.relation),this.parsedWidgetProps.hasOwnProperty("error_field")&&(this._errorField=this.parsedWidgetProps.error_field))}get relation(){return this._relation}set relation(e){this._relation=e}get errorField(){return this._errorField}set errorField(e){this._errorField=e}}class Nr extends qe{constructor(e){super(e),this._lang=null,e&&this.parsedWidgetProps.lang&&(this._lang=this.parsedWidgetProps.lang)}get lang(){return this._lang}set lang(e){this._lang=e}}class Rt{setWidgetClass(e){switch(e){case"notebook":this._widgetClass=mt;break;case"page":this._widgetClass=hr;break;case"group":this._widgetClass=dr;break;case"label":this._widgetClass=bt;break;case"char":this._widgetClass=ze;break;case"text":this._widgetClass=qe;break;case"button":this._widgetClass=gr;break;case"buttonGroup":this._widgetClass=_r;break;case"selection":this._widgetClass=ve;break;case"many2one":this._widgetClass=pr;break;case"boolean":this._widgetClass=vt;break;case"integer":this._widgetClass=wr;break;case"float":this._widgetClass=$e;break;case"float_time":this._widgetClass=br;break;case"date":this._widgetClass=vr;break;case"datetime":this._widgetClass=Er;break;case"progressbar":this._widgetClass=mr;break;case"many2many":this._widgetClass=xr;break;case"markdown":this._widgetClass=yr;break;case"one2many":case"one2many_list":this._widgetClass=Et;break;case"newline":this._widgetClass=wt;break;case"separator":this._widgetClass=Rr;break;case"url":this._widgetClass=ze;break;case"email":this._widgetClass=ze;break;case"reference":this._widgetClass=Tr;break;case"binary":this._widgetClass=Sr;break;case"image":this._widgetClass=Cr;break;case"fiber_grid":this._widgetClass=ln;break;case"timeline":this._widgetClass=Ar;break;case"indicator":this._widgetClass=Fr;break;case"tags":this._widgetClass=Or;break;case"tag":this._widgetClass=Dr;break;case"radio":this._widgetClass=Mr;break;case"multicheckbox":this._widgetClass=xt;break;case"switch":this._widgetClass=kr;break;case"steps":this._widgetClass=Pr;break;case"codeeditor":this._widgetClass=Nr;break}}createWidget(e,r){let i=e;switch(this.setWidgetClass(e),this._widgetClass===void 0&&(i=r.fieldsWidgetType,this.setWidgetClass(r.fieldsWidgetType)),this._widgetClass===void 0&&(this._widgetClass=he),e){case"notebook":case"page":case"group":return new this._widgetClass({...r,type:i});case"button":return new this._widgetClass({...r,type:e,buttonType:r.type});default:return new this._widgetClass({...r,type:i})}}}const un=({fieldName:t,values:e,fields:r})=>{var i;if(!t)return{};const n=(i=r[t])==null?void 0:i.states;if(!n)return{};const s={},a={};for(const u of Object.keys(n))if(e.state===u){const f=n[u];for(const g of f){const[b,w]=g;a[b]||(a[b]=[]),a[b].push(w)}}for(const u of Object.keys(a)){const f=a[u];s[u]=f.some(g=>g===!0)}return s},fn=({states:t,values:e})=>{if(!(e!=null&&e.state))return{};const r=t.split(",");return r.length===0?{}:r.includes(e.state)?{}:{invisible:!0}};function cn({values:t={},fieldName:e,fields:r={}}){var i;const n=((i=r[e])==null?void 0:i.type)||"passthrough";return n==="many2one"?t[e]?t[e][0]||null:!1:n==="one2many"||n==="many2many"?t[e].map(s=>s.id):t!=null&&t[e]?t==null?void 0:t[e]:e.indexOf("'")!==-1?e:parseInt(e)}const Ir=({context:t,values:e,fields:r})=>{try{if(!t)return;if(dn(t)||typeof t!="string")return t;const s=hn(t);if(s!==null)return s;if(t.trim().length===0)return;var i=t.replace(/\"/g,"'").replace(/\s/g,"").replace(/True/g,"true"),n=i.replace(/False/g,"false");const w=n.replace(/\{/g,"").replace(/\}/g,"").split(",").map(m=>m.split(":")),_={};return w.forEach(m=>{const E=m[1];if(m[1].indexOf("'")===-1&&m[1]!=="true"&&m[1]!=="false"){const T=cn({values:e,fields:r,fieldName:E==="active_id"?"id":E});_[m[0].replace(/'/g,"")]=T||void 0}else m[1]==="true"?_[m[0].replace(/'/g,"")]=!0:m[1]==="false"?_[m[0].replace(/'/g,"")]=!1:_[m[0].replace(/'/g,"")]=m[1].replace(/'/g,"")}),_}catch{return}};function hn(t){try{return JSON.parse(t)}catch{return null}}function dn(t){return typeof t=="object"&&t!==null&&typeof t!="string"}const gn=t=>{const e=t.trim().replace(")","").split("("),r=e[0],n=e[1].split(",").map(s=>s.trim());return{method:r,args:n}};function Ge(t,e){e=e||{};var r=e.pos||0,i=!!e.keepComments,n=!!e.keepWhitespace,s="<",a="<".charCodeAt(0),u=">",f=">".charCodeAt(0),g="-".charCodeAt(0),b="/".charCodeAt(0),w="!".charCodeAt(0),_="'".charCodeAt(0),m='"'.charCodeAt(0),E="[".charCodeAt(0),T="]".charCodeAt(0);function O(F){for(var L=[];t[r];)if(t.charCodeAt(r)==a){if(t.charCodeAt(r+1)===b){var V=r+2;r=t.indexOf(u,r);var ne=t.substring(V,r);if(ne.indexOf(F)==-1){var X=t.substring(0,r).split(`
|
|
1
|
+
(function(C,Oe){typeof exports=="object"&&typeof module<"u"?Oe(exports,require("html-entities"),require("moment")):typeof define=="function"&&define.amd?define(["exports","html-entities","moment"],Oe):(C=typeof globalThis<"u"?globalThis:C||self,Oe(C.ooui={},C.htmlEntities,C.moment))})(this,function(C,Oe,nn){"use strict";const De=(t=>t&&typeof t=="object"&&"default"in t?t:{default:t})(nn),We=class{constructor(t){if(this._type="",this._parsedWidgetProps={},this._colspan=We._defaultColspan,this._readOnly=!1,this._invisible=!1,t){if(t.colspan&&(this._colspan=+t.colspan),t.readonly&&(t.readonly==="1"||t.readonly===1||t.readonly===!0)&&(this._readOnly=!0),t.invisible&&(t.invisible===1||t.invisible==="1"||t.invisible===!0)&&(this._invisible=!0),t.type&&(this._type=t.type),t.context&&(this._context=t.context),t.domain&&(typeof t.domain!="string"?this._domain=JSON.stringify(t.domain):this._domain=t.domain),t.widget_props)try{this._parsedWidgetProps=JSON.parse(t.widget_props.replace(/'/g,'"'))}catch{throw new Error("Error parsing widget_props")}t.key&&(this._key=t.key)}}static get defaultColspan(){return We._defaultColspan}static set defaultColspan(t){We._defaultColspan=t}get readOnly(){return this._readOnly}set readOnly(t){this._readOnly=t}get colspan(){return this._colspan}set colspan(t){this._colspan=+t}get invisible(){return this._invisible}set invisible(t){this._invisible=t}get type(){return this._type}set type(t){this._type=t}get context(){return this._context}set context(t){this._context=t}get domain(){return this._domain}set domain(t){this._domain=t}get key(){return this._key}set key(t){this._key=t}get parsedWidgetProps(){return this._parsedWidgetProps}set parsedWidgetProps(t){this._parsedWidgetProps=t}};let he=We;he._defaultColspan=1;const an=({entry:t,values:e,fields:r})=>{const[i,n,s]=t;if(r[i]===void 0||e[i]===void 0&&r[i].type!=="boolean"&&r[i].type!=="many2one")return!1;let a=s,u=r[i].type==="boolean"?!!e[i]:e[i];switch(r[i].type==="many2one"&&s===!1&&e[i]===void 0?a=void 0:(u=u===void 0?!1:u,u=u===null?!1:u),r[i].type==="many2one"&&Array.isArray(u)&&u[0]===void 0&&(u=!1),r[i].type==="boolean"&&(s===0||s===1)&&(a=s!==0),n.toLowerCase()){case"=":case"==":return u==a;case"<>":case"!=":return u!=a;case">":return u>a;case">=":return u>=a;case"<":return u<a;case"<=":return u<=a;case"in":return a.includes(u);case"not in":return!a.includes(u);default:return!1}},G=t=>Oe.decode(t,{level:"xml"}),sn=({attrs:t,values:e,fields:r})=>{const u=t.replace(/\(/g,"[").replace(/\)/g,"]").replace(/\'/g,'"').replace(/True/g,"true").replace(/False/g,"false"),f=G(u),g=JSON.parse(f),b={};for(const w of Object.keys(g))g[w].map(T=>an({entry:T,values:e,fields:r})).every(T=>T===!0)&&(b[w]=!0);return b},on=({tagAttributes:t,values:e,fields:r})=>{const i=t.attrs?sn({attrs:t.attrs,values:e,fields:r}):{};return{...t,...i,attrs:void 0}};class W extends he{constructor(e){super(e),this._id="",this._label="",this._nolabel=!1,this._required=!1,this._activated=!0,this._selectionValues=new Map([]),this._activated=!0,e&&(e.name&&(this._id=e.name),e.activated&&(this._activated=e.activated),e.string&&(this._label=G(e.string)),e.help&&(this._tooltip=G(e.help)),e.nolabel&&(e.nolabel==="1"||typeof e.nolabel=="boolean"&&e.nolabel===!0)&&(this._nolabel=!0),e.required&&(e.required==="1"||e.required===!0||e.required==="True")&&(this._required=!0),e.sum&&(this._sum=e.sum),e.selection&&(this._selectionValues=new Map(e.selection)))}get id(){return this._id}set id(e){this._id=e}get label(){return this._label}set label(e){this._label=e}get nolabel(){return this._nolabel}set nolabel(e){this._nolabel=e}get required(){return this._required}set required(e){this._required=e}get tooltip(){return this._tooltip}set tooltip(e){this._tooltip=e}get activated(){return this._activated}set activated(e){this._activated=e}get sum(){return this._sum}set sum(e){this._sum=e}get selectionValues(){return this._selectionValues}set selectionValues(e){this._selectionValues=e}findById(e){let r=null;return this._id===e&&(r=this),r}}class wt extends he{findById(e){return null}}class bt extends W{constructor(e){super({...e,nolabel:!0}),this._text="",this._align="left",this._labelType="default",this._labelSize=void 0,this._fieldForLabel=null,e!=null&&e.fieldForLabel&&(this._fieldForLabel=e.fieldForLabel),e.widget_props&&(this.parsedWidgetProps.label_type&&(this.labelType=this.parsedWidgetProps.label_type),this.parsedWidgetProps.label_size&&(this.labelSize=this.parsedWidgetProps.label_size))}get text(){return this._text}set text(e){this._text=e}get align(){return this._align}set align(e){this._align=e}get labelType(){return this._labelType}set labelType(e){this._labelType=e}get labelSize(){return this._labelSize}set labelSize(e){this._labelSize=e}get fieldForLabel(){return this._fieldForLabel}set fieldForLabel(e){this._fieldForLabel=e}}class Me{get columns(){return this._columns}set columns(e){this._columns=e}get colspan(){return this._colspan}set colspan(e){this._colspan=e}get rows(){return this._rows}set rows(e){this._rows=e}get index(){return this._index}get readOnly(){return this._readOnly}set readOnly(e){this._readOnly=e}get key(){return this._key}set key(e){this._key=e}constructor(e=4,r=6,i=!1,n=void 0){this._columns=e,this._colspan=r,this._rows=[[]],this._index=0,this._readOnly=i,this._key=n}freePosition(){const e=this._rows[this._index].filter(r=>!r.invisible).reduce((r,i)=>r+i.colspan,0);return this._columns-e}addWidget(e,r){const i=[],n=r?r.addLabel:!0;if(e instanceof wt){this._rows.push([]),this._index++;return}if(e.colspan>this._columns&&(e.colspan=this._columns),e.readOnly=e.readOnly||this.readOnly,n&&e instanceof W&&!e.nolabel){e.colspan>1&&(e.colspan-=1);const a=new bt({name:e.id+"_label",string:e.label,invisible:e.invisible,help:e.tooltip,fieldForLabel:e.id,key:e.key+"-label"});a.type="label",i.push(a),i.push(e)}else i.push(e);i.reduce((a,u)=>a+u.colspan,0)>this.freePosition()&&(this._rows.push([]),this._index++),this._rows[this._index]=this._rows[this._index].concat(i)}findById(e){let r=null;return this._rows&&this._rows.length&&this._rows.forEach(i=>{r||i&&i.length&&i.forEach(n=>{r||n&&(r=n.findById(e))})}),r}}const je=class extends he{constructor(t){super(t),this._id="",this._mustExpand=!1,this._label="",this._container=new Me(t&&t.col,je._defaultColspan,this.readOnly,t&&t.key),t&&(t.name&&(this._id=t.name),t.colspan?this._container.colspan=+t.colspan:this._mustExpand=!0,t.string&&(this._label=G(t.string)))}get id(){return this._id}set id(t){this._id=t}static get defaultColspan(){return je._defaultColspan}static set defaultColspan(t){je._defaultColspan=t}get container(){return this._container}set container(t){this._container=t}get colspan(){return this._container.colspan}set colspan(t){this._container.colspan=+t}get mustExpand(){return this._mustExpand}set mustExpand(t){this._mustExpand=t}get label(){return this._label}set label(t){this._label=t}findById(t){return t===this.id?this:this.container.findById(t)}};let de=je;de._defaultColspan=6;const Ye=class extends de{constructor(t){super(t),this._tabPosition="top",this._pages=[],this.colspan=Ye._defaultColspan,t&&(t.colspan&&(this.colspan=t.colspan),t.tabpos&&(this._tabPosition=t.tabpos))}static get defaultColspan(){return Ye._defaultColspan}static set defaultColspan(t){Ye._defaultColspan=t}get tabPosition(){return this._tabPosition}set tabPosition(t){this._tabPosition=t}get pages(){return[].concat.apply([],this._container.rows)}};let mt=Ye;mt._defaultColspan=3;class hr extends de{constructor(e){super(e),this._icon=null,e.icon&&(this._icon=e.icon)}get icon(){return this._icon}set icon(e){this._icon=e}}class dr extends de{constructor(e){super(e),this._icon=null,e&&e.icon&&(this._icon=e.icon)}get icon(){return this._icon}set icon(e){this._icon=e}}class gr extends W{constructor(e){if(super({...e,nolabel:(e==null?void 0:e.nolabel)!==void 0?e.nolabel:!0}),this._buttonType="workflow",this._caption="",this._confirmMessage="",this._primary=!1,this._danger=!1,e){if(e.string&&(this._caption=G(e.string)),e.buttonType&&(this._buttonType=e.buttonType),e.confirm&&(this._confirmMessage=G(e.confirm)),e.special&&e.special==="cancel"&&(this._buttonType="cancel"),e.icon&&(this._icon=e.icon),e.primary){const r=e.primary;(r==="1"||r===1||r===!0)&&(this._primary=!0)}if(e.danger){const r=e.danger;(r==="1"||r===1||r===!0)&&(this._danger=!0)}}}get buttonType(){return this._buttonType}set buttonType(e){this._buttonType=e}get caption(){return this._caption}set caption(e){this._caption=e}get icon(){return this._icon}set icon(e){this._icon=e}get confirmMessage(){return this._confirmMessage}set confirm(e){this._confirmMessage=e}get primary(){return this._primary}set primary(e){this._primary=e}get danger(){return this._danger}set danger(e){this._danger=e}}class _r extends de{constructor(e){super(e),this._defaultName="",e.default&&(this._defaultName=e.default)}get defaultName(){return this._defaultName}get defaultButton(){return this.buttons.find(e=>e.id===this.defaultName)}get secondaryButtons(){return this.buttons.filter(e=>e.id!==this.defaultName)}get buttons(){return this._container.rows[0]}}class ze extends W{constructor(e){super(e),this._placeholder="",this._isPassword=!1,this._translatable=!1,e&&(e.size&&(this._size=e.size),e.password&&(this.isPassword=e.password==="True"),e.translate&&(this.translatable=e.translate==="True"||e.translate===!0))}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e}get size(){return this._size}set size(e){this._size=e}get isPassword(){return this._isPassword}set isPassword(e){this._isPassword=e}get translatable(){return this._translatable}set translatable(e){this._translatable=e}}class qe extends W{constructor(e){if(super(e),this._placeholder="",this._mustExpand=!1,this._translatable=!1,e){if(e.placeholder&&(this._placeholder=G(e.placeholder)),e.colspan||(this._mustExpand=!0),e.height)try{this._height=parseInt(e.height)}catch{this._height=void 0}e.translate&&(this.translatable=e.translate==="True"||e.translate===!0)}}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e}get mustExpand(){return this._mustExpand}set mustExpand(e){this._mustExpand=e}get height(){return this._height}set height(e){this._height=e}get translatable(){return this._translatable}set translatable(e){this._translatable=e}}class ve extends W{constructor(e){super(e),this._size=150,e&&e.size&&(this._size=e.size)}get size(){return this._size}set size(e){this._size=e}}class pr extends W{constructor(e){super(e),this._size=150,this._relation="",e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}}class yr extends qe{}class vt extends W{constructor(e){super(e)}}class wr extends W{constructor(e){super(e)}}class $e extends W{constructor(e){if(super(e),this._integerDigits=16,this._decimalDigits=2,e!=null&&e.digits){const[r,i]=e.digits;this._integerDigits=r,this._decimalDigits=i}}get integerDigits(){return this._integerDigits}set integerDigits(e){this._integerDigits=e}get decimalDigits(){return this._decimalDigits}set decimalDigits(e){this._decimalDigits=e}}class br extends $e{}class mr extends $e{}class vr extends W{constructor(e){super(e)}}class Er extends W{constructor(e){super(e)}}class xr extends W{constructor(e){super(e),this._size=150,this._relation="",this._mustExpand=!1,e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation),e.colspan||(this._mustExpand=!0))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}get mustExpand(){return this._mustExpand}set mustExpand(e){this._mustExpand=e}}class Et extends W{constructor(e){super(e),this._size=150,this._relation="",this._views=null,this._mode=[],this._mustExpand=!1,e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation),e.mode&&(this._mode=e.mode.split(",")),e.views&&(this._views=e.views),e.colspan?this.colspan=e.colspan:this._mustExpand=!0,e.inv_field&&(this._inv_field=e.inv_field))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}get inv_field(){return this._inv_field}set inv_field(e){this._inv_field=e}get views(){return this._views}set views(e){this._views=e}get mode(){return this._mode}set mode(e){this._mode=e}get mustExpand(){return this._mustExpand}set mustExpand(e){this._mustExpand=e}}class Rr extends he{constructor(e){super(e),this._label="",this._icon=null,e&&(e.string&&(this._label=G(e.string)),e.icon&&(this._icon=e.icon))}get label(){return this._label}set label(e){this._label=e}get icon(){return this._icon}set icon(e){this._icon=e}findById(e){return null}}class Tr extends ve{}class Sr extends W{constructor(e){super(e),this._filenameField="",e&&e.filename&&(this._filenameField=e.filename)}get filenameField(){return this._filenameField}set filenameField(e){this._filenameField=e}}class Cr extends W{}class ln extends W{constructor(e){super(e)}}class Ar extends Et{constructor(e){super(e),this._titleField="",this._summaryField="",this._parsedWidgetProps&&(this._titleField=this._parsedWidgetProps.titleField,this._summaryField=this.parsedWidgetProps.summaryField)}get titleField(){return this._titleField}set titleField(e){this._titleField=e}get summaryField(){return this._summaryField}set summaryField(e){this._summaryField=e}}class Fr extends ve{constructor(e){super(e),this._nolabel=!0,this._card=!1,this._icon="",this._suffix="",this._parsedWidgetProps&&(this._card=this._parsedWidgetProps.card||!1,this._icon=this._parsedWidgetProps.icon||"",this._suffix=this._parsedWidgetProps.suffix||"")}get card(){return this._card}set card(e){this._card=e}get icon(){return this._icon}set icon(e){this._icon=e}get suffix(){return this._suffix}set suffix(e){this._suffix=e}}class xt extends W{constructor(e){super(e),this._size=150,this._relation="",this._field="name",this._columns=4,e&&(e.size&&(this._size=e.size),e.relation&&(this._relation=e.relation),e.inv_field&&(this._inv_field=e.inv_field),this.parsedWidgetProps.hasOwnProperty("field")&&(this._field=this.parsedWidgetProps.field),this.parsedWidgetProps.columns&&(this._columns=this.parsedWidgetProps.columns))}get size(){return this._size}set size(e){this._size=e}get relation(){return this._relation}set relation(e){this._relation=e}get inv_field(){return this._inv_field}set inv_field(e){this._inv_field=e}get field(){return this._field}set field(e){this._field=e}get columns(){return this._columns}set columns(e){this._columns=e}}class Or extends xt{}class Dr extends ve{get colors(){return this._parsedWidgetProps.colors||{}}}class Mr extends ve{constructor(e){super(e),this._direction="horizontal",e&&this.parsedWidgetProps.hasOwnProperty("direction")&&(this._direction=this.parsedWidgetProps.direction)}get direction(){return this._direction}set direction(e){this._direction=e}}class kr extends vt{}class Pr extends W{constructor(e){super(e),this._relation="",this._errorField=null,e&&(e.relation&&(this._relation=e.relation),this.parsedWidgetProps.hasOwnProperty("error_field")&&(this._errorField=this.parsedWidgetProps.error_field))}get relation(){return this._relation}set relation(e){this._relation=e}get errorField(){return this._errorField}set errorField(e){this._errorField=e}}class Nr extends qe{constructor(e){super(e),this._lang=null,e&&this.parsedWidgetProps.lang&&(this._lang=this.parsedWidgetProps.lang)}get lang(){return this._lang}set lang(e){this._lang=e}}class Rt{setWidgetClass(e){switch(e){case"notebook":this._widgetClass=mt;break;case"page":this._widgetClass=hr;break;case"group":this._widgetClass=dr;break;case"label":this._widgetClass=bt;break;case"char":this._widgetClass=ze;break;case"text":this._widgetClass=qe;break;case"button":this._widgetClass=gr;break;case"buttonGroup":this._widgetClass=_r;break;case"selection":this._widgetClass=ve;break;case"many2one":this._widgetClass=pr;break;case"boolean":this._widgetClass=vt;break;case"integer":this._widgetClass=wr;break;case"float":this._widgetClass=$e;break;case"float_time":this._widgetClass=br;break;case"date":this._widgetClass=vr;break;case"datetime":this._widgetClass=Er;break;case"progressbar":this._widgetClass=mr;break;case"many2many":this._widgetClass=xr;break;case"markdown":this._widgetClass=yr;break;case"one2many":case"one2many_list":this._widgetClass=Et;break;case"newline":this._widgetClass=wt;break;case"separator":this._widgetClass=Rr;break;case"url":this._widgetClass=ze;break;case"email":this._widgetClass=ze;break;case"reference":this._widgetClass=Tr;break;case"binary":this._widgetClass=Sr;break;case"image":this._widgetClass=Cr;break;case"fiber_grid":this._widgetClass=ln;break;case"timeline":this._widgetClass=Ar;break;case"indicator":this._widgetClass=Fr;break;case"tags":this._widgetClass=Or;break;case"tag":this._widgetClass=Dr;break;case"radio":this._widgetClass=Mr;break;case"multicheckbox":this._widgetClass=xt;break;case"switch":this._widgetClass=kr;break;case"steps":this._widgetClass=Pr;break;case"codeeditor":this._widgetClass=Nr;break}}createWidget(e,r){let i=e;switch(this.setWidgetClass(e),this._widgetClass===void 0&&(i=r.fieldsWidgetType,this.setWidgetClass(r.fieldsWidgetType)),this._widgetClass===void 0&&(this._widgetClass=he),e){case"notebook":case"page":case"group":return new this._widgetClass({...r,type:i});case"button":return new this._widgetClass({...r,type:e,buttonType:r.type});default:return new this._widgetClass({...r,type:i})}}}const un=({fieldName:t,values:e,fields:r})=>{var i;if(!t)return{};const n=(i=r[t])==null?void 0:i.states;if(!n)return{};const s={},a={};for(const u of Object.keys(n))if(e.state===u){const f=n[u];for(const g of f){const[b,w]=g;a[b]||(a[b]=[]),a[b].push(w)}}for(const u of Object.keys(a)){const f=a[u];s[u]=f.some(g=>g===!0)}return s},fn=({states:t,values:e})=>{if(!(e!=null&&e.state))return{};const r=t.split(",");return r.length===0?{}:r.includes(e.state)?{}:{invisible:!0}};function cn({values:t={},fieldName:e,fields:r={}}){var i;const n=((i=r[e])==null?void 0:i.type)||"passthrough";return n==="many2one"?t[e]?t[e][0]||null:!1:n==="one2many"||n==="many2many"?t[e].map(s=>s.id):t!=null&&t[e]?t==null?void 0:t[e]:e.indexOf("'")!==-1?e:parseInt(e)}const Ir=({context:t,values:e,fields:r})=>{try{if(!t)return;if(dn(t)||typeof t!="string")return t;const s=hn(t);if(s!==null)return s;if(t.trim().length===0)return;var i=t.replace(/\"/g,"'").replace(/\s/g,"").replace(/True/g,"true"),n=i.replace(/False/g,"false");const w=n.replace(/\{/g,"").replace(/\}/g,"").split(",").map(m=>m.split(":")),_={};return w.forEach(m=>{const E=m[1];if(m[1].indexOf("'")===-1&&m[1]!=="true"&&m[1]!=="false"){const T=cn({values:e,fields:r,fieldName:E==="active_id"?"id":E});_[m[0].replace(/'/g,"")]=T||void 0}else m[1]==="true"?_[m[0].replace(/'/g,"")]=!0:m[1]==="false"?_[m[0].replace(/'/g,"")]=!1:_[m[0].replace(/'/g,"")]=m[1].replace(/'/g,"")}),_}catch{return}};function hn(t){try{return JSON.parse(t)}catch{return null}}function dn(t){return typeof t=="object"&&t!==null&&typeof t!="string"}const gn=t=>{const e=t.trim().replace(")","").split("("),r=e[0],n=e[1].split(",").map(s=>s.trim());return{method:r,args:n}};function Ge(t,e){e=e||{};var r=e.pos||0,i=!!e.keepComments,n=!!e.keepWhitespace,s="<",a="<".charCodeAt(0),u=">",f=">".charCodeAt(0),g="-".charCodeAt(0),b="/".charCodeAt(0),w="!".charCodeAt(0),_="'".charCodeAt(0),m='"'.charCodeAt(0),E="[".charCodeAt(0),T="]".charCodeAt(0);function O(F){for(var L=[];t[r];)if(t.charCodeAt(r)==a){if(t.charCodeAt(r+1)===b){var V=r+2;r=t.indexOf(u,r);var ne=t.substring(V,r);if(ne.indexOf(F)==-1){var X=t.substring(0,r).split(`
|
|
2
2
|
`);throw new Error(`Unexpected close tag
|
|
3
3
|
Line: `+(X.length-1)+`
|
|
4
4
|
Column: `+(X[X.length-1].length+1)+`
|