3 lines
5.3 KiB
JavaScript
3 lines
5.3 KiB
JavaScript
/*! maintenance_supporter frontend 2.94.0 */
|
|
import{s as o,u as c}from"/maintenance_supporter_panelfiles/panel-chunks/chunk-JE577H3E.js";var f={already_archived:"ws_err_already_archived",already_paused:"ws_err_already_paused",archived:"ws_err_archived",create_failed:"ws_err_create_failed",duplicate_failed:"ws_err_duplicate_failed",empty:"ws_err_empty",empty_csv:"ws_err_empty_csv",invalid_cursor:"ws_err_invalid_cursor",invalid_date:"ws_err_invalid_date",invalid_device:"ws_err_invalid_device",invalid_entity_slug:"ws_err_invalid_entity_slug",invalid_format:"ws_err_invalid_format",invalid_input:"ws_err_invalid_input",invalid_mirror_todo:"ws_err_invalid_mirror_todo",invalid_parent:"ws_err_invalid_parent",invalid_icon:"ws_err_invalid_icon",invalid_range:"ws_err_invalid_range",invalid_search_template:"ws_err_invalid_search_template",invalid_target:"ws_err_invalid_target",invalid_trigger_config:"ws_err_invalid_trigger_config",invalid_url:"ws_err_invalid_url",invalid_user:"ws_err_invalid_user",invalid_view:"ws_err_invalid_view",limit_reached:"ws_err_limit_reached",no_defaults:"ws_err_no_defaults",no_phases:"ws_err_no_phases",no_url:"ws_err_no_url",not_archived:"ws_err_not_archived",not_available:"ws_err_not_available",not_configured:"ws_err_not_configured",not_found:"ws_err_not_found",not_loaded:"ws_err_not_loaded",not_paused:"ws_err_not_paused",replace_failed:"ws_err_replace_failed",self_link_device:"ws_err_self_link_device",storage_unavailable:"ws_err_storage_unavailable",too_early:"ws_err_too_early",too_large:"ws_err_too_large",too_many:"ws_err_too_many",too_many_views:"ws_err_too_many_views",unauthorized:"ws_err_unauthorized",unavailable:"ws_err_unavailable"},p={entry_id:"object",name:"name",task_type:"maintenance_type",schedule_type:"schedule_type",interval_days:"interval_days",interval_anchor:"interval_anchor",warning_days:"warning_days",last_performed:"last_performed_optional",notes:"notes_optional",documentation_url:"documentation_url_optional",custom_icon:"custom_icon_optional",nfc_tag_id:"nfc_tag_id_optional",responsible_user_id:"responsible_user",entity_slug:"entity_slug",entity_id:"entity_id",area_id:"area_id_optional",manufacturer:"manufacturer_optional",model:"model_optional",serial_number:"serial_number_optional",installation_date:"installation_date_optional",warranty_expiry:"warranty_expiry_optional",checklist:"checklist_steps_optional",reason:"reason",feedback:"feedback",cost:"cost",duration:"duration",description:"description_optional",environmental_entity:"environmental_entity_optional",environmental_attribute:"environmental_attribute_optional",trigger_above:"trigger_above",trigger_below:"trigger_below",trigger_equals:"trigger_equals",trigger_not_equals:"trigger_not_equals",trigger_for_minutes:"trigger_for_minutes"};function w(r){let t=r.replace(/_ids?$/,"").split("_").filter(Boolean);if(t.length===0)return r;let e=t.join(" ");return e.charAt(0).toUpperCase()+e.slice(1)}function m(r,t){let e=p[r];if(e){let n=o(e,t);if(n&&n!==e)return n}return w(r)}function h(r){let t=[...r.matchAll(/\['([^']+)'\]/g)].map(i=>i[1]),e=t.length?t[t.length-1]:void 0,n;return(n=r.match(/length of value must be at most (\d+)/))?{field:e,rule:"too_long",param:n[1]}:(n=r.match(/length of value must be at least (\d+)/))?{field:e,rule:"too_short",param:n[1]}:(n=r.match(/value must be at most (\S+)/))?{field:e,rule:"value_too_high",param:n[1]}:(n=r.match(/value must be at least (\S+)/))?{field:e,rule:"value_too_low",param:n[1]}:/required key not provided/.test(r)?{field:e,rule:"required"}:(n=r.match(/expected (\w+)/))?{field:e,rule:"wrong_type",param:n[1]}:/value must be one of/.test(r)?{field:e,rule:"invalid_choice"}:/not a valid value/.test(r)?{field:e,rule:"invalid_value"}:{field:e,rule:"unknown"}}var g=r=>r.toLowerCase().split(/[^a-z0-9]+/).filter(t=>t.length>1);function y(r,t){let e=new Set(g(t));return g(r).every(n=>e.has(n))}function v(r,t,e){if(e=e??o("action_error",t),typeof r=="string")return r;if(typeof r!="object"||r===null)return e;let n=r,i=n.message||n.error?.message||"",_=n.code||n.error?.code||"",s=_?f[_]:void 0;if(!i&&!s)return e;let l=h(i),d=l.field?m(l.field,t):"",a=u=>o(u,t).replace("{field}",d).replace("{n}",l.param??"");switch(l.rule){case"too_long":return a("err_too_long");case"too_short":return a("err_too_short");case"value_too_high":return a("err_value_too_high");case"value_too_low":return a("err_value_too_low");case"required":return a("err_required");case"wrong_type":return a("err_wrong_type").replace("{type}",l.param??"");case"invalid_choice":return a("err_invalid_choice");case"invalid_value":return a("err_invalid_value");default:if(s){let u=o(s,t);return i&&!y(i,_)?`${u} (${i})`:u}return i||e}}async function b(r,t,e={}){e.busy?.(!0);try{let n=typeof t=="function"?await t():await r.hass.connection.sendMessagePromise(t);return e.reload&&await e.reload(),e.successToast&&e.onSuccess?.(e.successToast),n===void 0?null:n}catch(n){let i=e.lang||c(r.hass);e.onError?.(v(n,i,e.fallbackKey?o(e.fallbackKey,i):void 0),n);return}finally{e.busy?.(!1)}}async function W(r,t,e){let n=[],i=[];for(let _ of t){let s="";await b(r,e(_),{onError:d=>{s=d}})===void 0?i.push({item:_,message:s}):n.push(_)}return{done:n,failed:i}}function x(r,t,e){if(t.length===0)return r;let n=o("bulk_failed",e).replace("{n}",String(t.length)).replace("{reason}",t[0].message);return`${r} \xB7 ${n}`}export{b as a,W as b,x as c};
|