@simai-studio/view 1.2.0 → 1.3.0
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/README.md +1 -1
- package/dist/package-receipt.json +61 -61
- package/dist/smart/view-flow/component.json +10 -2
- package/dist/smart/view-flow/component.json.gz +0 -0
- package/dist/smart/view-flow/css/view-flow.css +367 -0
- package/dist/smart/view-flow/css/view-flow.css.gz +0 -0
- package/dist/smart/view-flow/css/view-flow.min.css +1 -0
- package/dist/smart/view-flow/css/view-flow.min.css.gz +0 -0
- package/dist/smart/view-flow/js/view-flow.js +1552 -4
- package/dist/smart/view-flow/js/view-flow.js.gz +0 -0
- package/dist/smart/view-flow/js/view-flow.min.js +248 -137
- package/dist/smart/view-flow/js/view-flow.min.js.gz +0 -0
- package/dist/smart/view-flow/smart.manifest.json +11 -3
- package/dist/smart/view-flow/smart.manifest.json.gz +0 -0
- package/dist/smart/view-properties/component.json +8 -1
- package/dist/smart/view-properties/component.json.gz +0 -0
- package/dist/smart/view-properties/css/view-properties.css +367 -0
- package/dist/smart/view-properties/css/view-properties.css.gz +0 -0
- package/dist/smart/view-properties/css/view-properties.min.css +1 -0
- package/dist/smart/view-properties/css/view-properties.min.css.gz +0 -0
- package/dist/smart/view-properties/js/view-properties.js +1552 -4
- package/dist/smart/view-properties/js/view-properties.js.gz +0 -0
- package/dist/smart/view-properties/js/view-properties.min.js +491 -380
- package/dist/smart/view-properties/js/view-properties.min.js.gz +0 -0
- package/dist/smart/view-properties/smart.manifest.json +34 -3
- package/dist/smart/view-properties/smart.manifest.json.gz +0 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(()=>{"use strict";var e={e577837dd70a(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{Yq:()=>u,Yz:()=>c});var i=n("15b4e93ff6ed"),l=e([i]),a=l.then?(await l)():l;i=a[0];const s=864e5;function o(e){return"short"===e||"medium"===e||"long"===e||"full"===e}function u(e,{date:t="medium",time:n=null,intl:r=null,gap:l="",...a}={}){const s=(0,i.ay)(e);if(!s)return l;let u=r;return u||(u={},o(t)&&(u.dateStyle=t),o(n)&&(u.timeStyle=n),u.dateStyle||u.timeStyle||(u.dateStyle="medium")),(0,i.Qz)("DateTimeFormat",(0,i.OE)(a),u).format(s)}function c(e,{now:t=new Date}={}){const n=(0,i.ay)(e),r=(0,i.ay)(t);if(!n||!r)return Number.NaN;const l=Date.UTC(n.getFullYear(),n.getMonth(),n.getDate()),a=Date.UTC(r.getFullYear(),r.getMonth(),r.getDate());return Math.round((l-a)/s)}r()}catch(d){r(d)}})},"15b4e93ff6ed"(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{OE:()=>s,Qz:()=>c,ay:()=>o});var i=n("43090d1c8307"),l=e([i]),a=l.then?(await l)():l;i=a[0];function s({locale:e,node:t}={}){return String(e||"").trim()||(0,i.pageLocale)(t)}function o(e){if(null==e||""===e)return null;const t=e instanceof Date?new Date(e.getTime()):new Date("string"==typeof e&&/^\d+$/u.test(e)?Number(e):e);return Number.isNaN(t.getTime())?null:t}function u(){const e="undefined"!=typeof globalThis?globalThis:{};return e.__sfFormat||(e.__sfFormat={formatters:new Map}),e.__sfFormat.formatters}function c(e,t,n){const r=`${e}|${t}|${JSON.stringify(n)}`,i=u();if(i.has(r))return i.get(r);const l=Intl[e];let a;try{a=new l(t||void 0,n)}catch{try{a=new l(void 0,n)}catch{a=new l(t||void 0,"NumberFormat"===e?{maximumFractionDigits:2}:{})}}return i.size>=256&&i.delete(i.keys().next().value),i.set(r,a),a}r()}catch(d){r(d)}})},"9ce1a42b2a85"(e,t,n){n.d(t,{AC:()=>a,MC:()=>d,SB:()=>c,cy:()=>o,d2:()=>s});const r=/^(\d{4}-\d{2}-\d{2})(?:[T ](\d{2}):(\d{2})((?::\d{2})(?:\.\d+)?)?(Z|[+-]\d{2}:?\d{2})?)?$/u,i=/^\d{4}-\d{2}-\d{2}$/u;function l(e){return e&&"object"==typeof e&&!Array.isArray(e)&&"value"in e?e.value:e}function a(e){const t=l(e);if(null==t||""===t)return{raw:t??null,known:!0,date:"",time:"",rest:"",zone:""};const n="string"==typeof t?t.trim().match(r):null;return n?{raw:t,known:!0,date:n[1],time:n[2]?`${n[2]}:${n[3]}`:"",rest:n[4]||"",zone:n[5]||""}:{raw:t,known:!1,date:"",time:"",rest:"",zone:""}}function s(e){const t=String(e??"").trim().replace(/[_\s]/gu,"");if(""===t||":"===t)return"";const n=t.match(/^(\d{1,2})[:.]?(\d{2})$/u);if(!n)return null;const r=Number(n[1]),i=Number(n[2]);return r>23||i>59?null:`${String(r).padStart(2,"0")}:${n[2]}`}function o(e,t){const n=String(t?.date??"").trim(),r=s(t?.time);if(null===r)return{error:"timeInvalid"};if(!n&&!r)return{value:null};if(!i.test(n))return{error:n?"dateInvalid":"dateMissing"};if(!r)return{error:"timeMissing"};const l=e?.known?e:null;if(l&&l.date===n&&l.time===r)return{value:l.raw};return{value:`${n}T${r}${l&&l.time===r?l.rest:":00"}${l&&l.time?l.zone:""}`}}const u=/^(\d{2}):(\d{2})((?::\d{2})(?:\.\d+)?)?$/u;function c(e){const t=l(e);if(null==t||""===t)return{raw:t??null,known:!0,time:"",rest:""};const n="string"==typeof t?t.trim().match(u):null;return n&&null!==s(`${n[1]}:${n[2]}`)?{raw:t,known:!0,time:`${n[1]}:${n[2]}`,rest:n[3]||""}:{raw:t,known:!1,time:"",rest:""}}function d(e,t){const n=s(t);if(null===n)return{error:"timeInvalid"};if(!n)return{value:null};const r=e?.known?e:null;return r&&r.time===n?{value:r.raw}:{value:r?.rest?`${n}:00`:n}}},eb06ad68f8d3(e,t,n){n.d(t,{b:()=>B,j:()=>L});Object.freeze(["p","h2","h3","h4","strong","em","a","ul","ol","li","blockquote","br"]);const r=Object.freeze(["p","h2","h3","h4"]),i=Object.freeze(["https:","mailto:","tel:"]),l=Object.freeze(["html","paste"]),a=(Object.freeze(["pre","table"]),new Set(["script","style","template","head","title","meta","link","base","noscript","iframe","frame","frameset","noembed","noframes","object","embed","applet","svg","math","canvas","video","audio","img","picture","source","track","input","select","textarea","xmp","plaintext"])),s=new Set(["address","article","aside","body","caption","center","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h5","h6","header","hgroup","hr","html","legend","listing","main","menu","nav","optgroup","option","pre","section","summary","table","tbody","td","tfoot","th","thead","tr"]),o=new Set(["ul","ol"]),u=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),c=new Set(["script","style","textarea","title","xmp","iframe","noembed","noframes","noscript"]),d=new Set(["td","th","table","caption","button"]),p=/[\u0000-\u001f\u007f-\u009f]/gu,f=/[\u0000- \u007f-\u009f\u00a0\u1680\u2000-\u200b\u2028\u2029\u202f\u205f\u3000\ufeff]/gu;const h={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" ",shy:"",hellip:"…",mdash:"—",ndash:"–",minus:"−",laquo:"«",raquo:"»",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",bull:"•",middot:"·",copy:"©",reg:"®",trade:"™",deg:"°",times:"×",divide:"÷",plusmn:"±",euro:"€",pound:"£",yen:"¥",cent:"¢",sect:"§",para:"¶",thinsp:" ",ensp:" ",emsp:" ",zwj:"",zwnj:"",larr:"←",rarr:"→",uarr:"↑",darr:"↓",numero:"№",prime:"′",Prime:"″"};function m(e){return String(e).replace(/&(#x[0-9a-f]+|#[0-9]+|[a-z][a-z0-9]*);?/giu,(e,t)=>{if("#"===t[0]){const e="x"===t[1]||"X"===t[1]?Number.parseInt(t.slice(2),16):Number.parseInt(t.slice(1),10);return!Number.isFinite(e)||e<=0||e>1114111||e>=55296&&e<=57343?"�":String.fromCodePoint(e)}return Object.hasOwn(h,t)&&e.endsWith(";")?h[t]:e})}function g(e){const t="string"==typeof e?e:"",n={type:"element",name:"#root",attrs:{},children:[]},i=[n],l=()=>i[i.length-1],a=e=>l().children.push(e),p=e=>{if(!e)return;const t=l().children.at(-1);"text"===t?.type?t.value+=e:a({type:"text",value:e})},f=(e,t=null)=>{for(let n=i.length-1;n>0;n-=1){const r=i[n].name;if(t&&t.has(r))return!1;if(r===e)return i.length=n,!0}return!1};let h=0;const g=t.length;for(;h<g;){const e=t.indexOf("<",h);if(e<0){p(m(t.slice(h)));break}if(e>h&&p(m(t.slice(h,e))),h=e,t.startsWith("\x3c!--",h)){const e=t.indexOf("--\x3e",h+4);h=e<0?g:e+3;continue}const n=t[h+1]??"";if("!"===n||"?"===n){const e=t.indexOf(">",h+2);h=e<0?g:e+1;continue}if("/"===n){const e=/^<\/([a-z][a-z0-9-]*)[^>]*>?/iu.exec(t.slice(h));if(!e){const e=t.indexOf(">",h+2);h=e<0?g:e+1;continue}h+=e[0].length;const n=e[1].toLowerCase();"br"===n?a({type:"element",name:"br",attrs:{},children:[]}):"p"!==n||f("p",d)?f(n):a({type:"element",name:"p",attrs:{},children:[]});continue}const l=/^<([a-z][a-z0-9-]*)/iu.exec(t.slice(h));if(!l){p("<"),h+=1;continue}h+=l[0].length;const b=l[1].toLowerCase(),y={};let v=!1;for(;h<g;){const e=/^[\s/]+/u.exec(t.slice(h));if(e){e[0].includes("/")&&">"===t[h+e[0].length]&&(v=!0),h+=e[0].length;continue}if(">"===t[h]){h+=1;break}const n=/^([^\s/>"'=][^\s/>"'=]*)(?:\s*=\s*(?:"([^"]*)"?|'([^']*)'?|([^\s>]*)))?/u.exec(t.slice(h));if(!n){h+=1;continue}h+=n[0].length;const r=n[1].toLowerCase();Object.hasOwn(y,r)||(y[r]=m(n[2]??n[3]??n[4]??""))}const $={type:"element",name:b,attrs:y,children:[]};if("li"===b&&f("li",o),(r.includes(b)||o.has(b)||"blockquote"===b||s.has(b))&&f("p",d),a($),"plaintext"===b){h=g;break}if(c.has(b)){const e=new RegExp(`</${b}[\\s/>]`,"iu").exec(t.slice(h)),n=e?h+e.index:g;"textarea"===b||"title"===b?$.children.push({type:"text",value:m(t.slice(h,n))}):$.children.push({type:"text",value:t.slice(h,n)});const r=e?t.indexOf(">",n):-1;h=r<0?g:r+1;continue}u.has(b)||v||i.push($)}return n}function b(e){const t=e=>{if(3===e.nodeType)return{type:"text",value:e.data};if(11===e.nodeType)return{type:"element",name:"#root",attrs:{},children:[...e.childNodes].map(t).filter(Boolean)};if(1!==e.nodeType)return null;if(e.namespaceURI&&"http://www.w3.org/1999/xhtml"!==e.namespaceURI)return null;const n=e.localName;if(a.has(n))return null;const r={},i=e.getAttribute("href");null!==i&&(r.href=i);const l=e.getAttribute("style");null!==l&&(r.style=l);return{type:"element",name:n,attrs:r,children:"template"===n?[]:[...e.childNodes].map(t).filter(Boolean)}},n=t(e);return n&&"element"===n.type?{...n,name:"#root"}:{type:"element",name:"#root",attrs:{},children:n?[n]:[]}}function y(e,t){const n={...t};"strong"!==e.name&&"b"!==e.name||(n.strong=!0),"em"!==e.name&&"i"!==e.name||(n.em=!0);const r=function(e){const t={};if(!e)return t;const n=/(?:^|;)\s*font-weight\s*:\s*([^;!]+)/iu.exec(e)?.[1]?.trim().toLowerCase();n&&("bold"===n||"bolder"===n||Number(n)>=600?t.strong=!0:("normal"===n||"lighter"===n||Number(n)<600)&&(t.strong=!1));const r=/(?:^|;)\s*font-style\s*:\s*([^;!]+)/iu.exec(e)?.[1]?.trim().toLowerCase();return r&&("italic"===r||r.startsWith("oblique")?t.em=!0:"normal"===r&&(t.em=!1)),t}(e.attrs?.style);return void 0!==r.strong&&(n.strong=r.strong),void 0!==r.em&&(n.em=r.em),n}const v=(e,t,n)=>({kind:e,value:t,strong:Boolean(n.marks.strong),em:Boolean(n.marks.em),href:n.href||null});class ${constructor(e){this.kind=e,this.blocks=[],this.run=[],this.types=["p"],this.starts=[0],this.needBreak=!1}inline(e){"item"===this.kind&&this.needBreak&&this.run.length>0&&("text"!==e.kind||e.value.trim())&&(this.run.push({kind:"br",strong:!1,em:!1,href:null}),this.needBreak=!1),this.run.push(e)}flush(){this.run.length&&("item"===this.kind?this.blocks.push({type:"inline",leaves:this.run}):this.blocks.push({type:this.types[this.types.length-1],leaves:this.run}),this.run=[])}open(e){"item"!==this.kind?(this.flush(),this.types.push(e),this.starts.push(this.blocks.length)):this.needBreak=!0}close(e=!1){if("item"===this.kind)return void(this.needBreak=!0);const t=this.starts[this.starts.length-1];e&&!this.run.length&&this.blocks.length===t&&this.blocks.push({type:this.types[this.types.length-1],leaves:[]}),this.flush(),this.types.length>1&&(this.types.pop(),this.starts.pop())}block(e){this.flush(),this.blocks.push(e),this.needBreak=!1}}function w(e,t,n){for(const r of e)x(r,t,n)}function x(e,t,n){if("text"===e.type)return void function(e,t,n){if(n.pre)return void e.replace(/\r\n?/gu,"\n").split("\n").forEach((e,r)=>{r>0&&t.inline(v("br","",n)),e&&t.inline(v("text",e.replace(/[\t\f]/gu," "),n))});const r=e.replace(/[\t\n\r\f ]+/gu," ");r&&(" "!==r||t.run.length)&&t.inline(v("text",r,n))}(e.value,t,n);const l=e.name;if(a.has(l))return;if("br"===l)return void t.inline(v("br","",n));const u={...n,marks:y(e,n.marks)};if("a"===l){const r=function(e){if("string"!=typeof e)return null;const t=e.trim();if(!t||t.length>2048)return null;const n=t.replace(f,"");if(!n)return null;if(n.startsWith("/")){if(/^\/[/\\]/u.test(n))return null;const e=t.replace(p,"");return/^\/[/\\]/u.test(e)?null:e}const r=/^([a-z][a-z0-9+.-]*):/iu.exec(n)?.[1]?.toLowerCase();if(!r||!i.includes(`${r}:`))return null;let l;try{l=new globalThis.URL(t.replace(p,""))}catch{return null}return l.protocol!==`${r}:`?null:"https:"!==l.protocol||l.hostname?"https:"!==l.protocol&&l.href.length<=l.protocol.length?null:l.href:null}(e.attrs?.href);return void w(e.children,t,r&&!n.href?{...u,href:r}:u)}if(r.includes(l))return t.open(l),w(e.children,t,u),void t.close(!0);if(o.has(l)){const n=F(e,u,l);return void(n.items.length&&t.block(n))}if("blockquote"===l){if("item"===t.kind)return t.open("p"),w(e.children,t,u),void t.close();const n=new $("flow");return w(e.children,n,u),n.flush(),void t.block({type:"blockquote",blocks:n.blocks})}if("li"===l)return t.open("p"),w(e.children,t,u),void t.close();if(!n.paste||"item"===t.kind||"pre"!==l&&"listing"!==l){if(!n.paste||"item"===t.kind||"table"!==l)return s.has(l)?(t.open("p"),w(e.children,t,"pre"===l||"listing"===l?{...u,pre:!0}:u),void t.close()):void w(e.children,t,u);t.block(function(e,t){const n={type:"table",caption:[],rows:[]},r=(e,r)=>{const i=[];for(const n of e.children){if("element"!==n.type||"td"!==n.name&&"th"!==n.name)continue;const e=new $("item");w(n.children,e,{...t,marks:y(n,t.marks)}),e.flush(),i.push({header:"th"===n.name,leaves:S(e.blocks)})}i.length&&n.rows.push({head:r,cells:i})},i=(e,t)=>{for(const n of e.children)"element"===n.type&&"tr"===n.name&&r(n,t)};for(const l of e.children)if("element"===l.type)if("caption"===l.name){const e=new $("item");w(l.children,e,t),e.flush(),n.caption=S(e.blocks)}else"thead"===l.name?i(l,!0):"tbody"===l.name||"tfoot"===l.name?i(l,!1):"tr"===l.name&&r(l,!1);return n}(e,u))}else t.block({type:"pre",text:k(e)})}function k(e){const t=e=>"text"===e.type?e.value:a.has(e.name)?"":"br"===e.name?"\n":e.children.map(t).join("");return e.children.map(t).join("").replace(/\r\n?/gu,"\n").replace(/\u00a0/gu," ").replace(/^\n/u,"").replace(/\s+$/u,"")}function S(e){const t=[],n=e=>{if("inline"===e.type)(r=e.leaves).length&&(t.length&&t.push({kind:"br",strong:!1,em:!1,href:null}),t.push(...r));else for(const t of e.items)t.children.forEach(n);var r};return e.forEach(n),t}function _(e,t){const n=new $("item");return w(e.children,n,t),n.flush(),{children:n.blocks}}function F(e,t,n){const r={type:n,items:[]};let i=null;const l=()=>{i&&(i.flush(),r.items.push({children:i.blocks}),i=null)};for(const n of e.children)if("element"!==n.type||"li"!==n.name){if("element"===n.type&&o.has(n.name)){l();const e=F(n,{...t,marks:y(n,t.marks)},n.name);if(!e.items.length)continue;const i=r.items.at(-1);i?i.children.push(e):r.items.push({children:[e]});continue}("text"!==n.type||n.value.trim())&&("element"===n.type&&a.has(n.name)||(i??=new $("item"),x(n,i,t)))}else l(),r.items.push(_(n,t));return l(),r}const T=" ",A=(e,t)=>e.strong===t.strong&&e.em===t.em&&e.href===t.href;function q(e,t){const n=[];for(const t of e){if("text"===t.kind&&!t.value)continue;const e=n.at(-1);"text"===t.kind&&"text"===e?.kind&&A(e,t)?e.value+=t.value:n.push({...t})}for(let e=0;e<n.length;e+=1){const t=n[e];if("text"!==t.kind)continue;t.value=t.value.replace(/ {2,}/gu,T);const r=n[e-1];t.value.startsWith(T)&&(!r||"br"===r.kind||"text"===r.kind&&r.value.endsWith(T))&&(t.value=t.value.slice(1));const i=n[e+1];!t.value.endsWith(T)||i&&"br"!==i.kind||(t.value=t.value.slice(0,-1))}let r=n.filter(e=>"br"===e.kind||e.value);if("value"===t){for(;"br"===r[0]?.kind;)r.shift();for(;"br"===r.at(-1)?.kind;)r.pop();"text"===r[0]?.kind&&(r[0].value=r[0].value.replace(/^[\s\u00a0]+/u,""));const e=r.at(-1);"text"===e?.kind&&(e.value=e.value.replace(/[\s\u00a0]+$/u,"")),r=r.filter(e=>"br"===e.kind||e.value)}const i=new Map;for(const e of r)e.href&&i.set(e.href,(i.get(e.href)||"")+("text"===e.kind?e.value:"x"));for(const e of r)e.href&&!i.get(e.href).trim()&&(e.href=null);const l=[];for(const e of r){const t=l.at(-1);"text"===e.kind&&"text"===t?.kind&&A(t,e)?t.value+=e.value:l.push(e)}return l}const z=e=>e.some(e=>"text"===e.kind&&""!==e.value.replace(/[\s\u00a0]+/gu,""));function O(e,t){const n=e.items.map(e=>function(e,t){const n=[];for(const r of e.children)if("inline"===r.type){const e=q(r.leaves,t);if(!e.length)continue;const i=n.at(-1);"inline"===i?.type?i.leaves=q([...i.leaves,{kind:"br",strong:!1,em:!1,href:null},...e],t):n.push({type:"inline",leaves:e})}else{const e=O(r,t);if(!e)continue;const i=n.at(-1);i&&i.type===e.type?i.items.push(...e.items):n.push(e)}if("value"===t){const e=n.filter(e=>"inline"!==e.type||z(e.leaves));return e.length?{children:e}:null}return n.length&&"inline"===n[0].type||n.unshift({type:"inline",leaves:[{kind:"br",strong:!1,em:!1,href:null}]}),{children:n}}(e,t)).filter(Boolean);return n.length?{type:e.type,items:n}:null}function j(e,t){const n=[];for(const r of e){let e=null;if("blockquote"===r.type){const n=j(r.blocks,t);n.length?e={type:"blockquote",blocks:n}:"editor"===t&&(e={type:"blockquote",blocks:[{type:"p",leaves:[{kind:"br",strong:!1,em:!1,href:null}]}]})}else if(o.has(r.type))e=O(r,t);else if("pre"===r.type)r.text.trim()&&(e={type:"pre",text:r.text});else if("table"===r.type){const t=r.rows.map(e=>({head:e.head,cells:e.cells.map(e=>({header:e.header,leaves:q(e.leaves,"value")}))})).filter(e=>e.cells.some(e=>z(e.leaves)));t.length&&(e={type:"table",caption:q(r.caption,"value"),rows:t})}else{const n=q(r.leaves,t);"value"===t?z(n)&&(e={type:r.type,leaves:n}):e={type:r.type,leaves:n.length?n:[{kind:"br",strong:!1,em:!1,href:null}]}}if(!e)continue;const i=n.at(-1);i&&o.has(e.type)&&i.type===e.type?i.items.push(...e.items):n.push(e)}return n}function E(e,{mode:t="value",profile:n="html"}={}){if(!l.includes(n))throw new TypeError(`rich_text_profile_unknown: ${n}`);const r=new $("flow");w(e.children??[],r,{marks:{},href:null,pre:!1,paste:"paste"===n}),r.flush();const i=j(r.blocks,t);return"editor"!==t||i.length?i:[{type:"p",leaves:[{kind:"br",strong:!1,em:!1,href:null}]}]}const C=e=>e.replace(/&/gu,"&").replace(/"/gu,""").replace(/</gu,"<").replace(/>/gu,">").replace(/\u00a0/gu," ");function P(e){const t=(e,n)=>{let r="",i=0;const l=["href","strong","em"][n];for(;i<e.length;){const a=l?e[i][l]:null;let s=i+1;for(;s<e.length&&l&&e[s][l]===a;)s+=1;const o=e.slice(i,s);r+=l?"href"===l&&a?`<a href="${C(a)}">${t(o,n+1)}</a>`:"href"!==l&&a?`<${l}>${t(o,n+1)}</${l}>`:t(o,n+1):o.map(e=>"br"===e.kind?"<br>":e.value.replace(/&/gu,"&").replace(/</gu,"<").replace(/>/gu,">").replace(/\u00a0/gu," ")).join(""),i=s}return r};return t(e,0)}function V(e){return`<${e.type}>${e.items.map(e=>`<li>${e.children.map(e=>"inline"===e.type?P(e.leaves):V(e)).join("")}</li>`).join("")}</${e.type}>`}function N(e){return e.map(e=>{if("blockquote"===e.type)return`<blockquote>${N(e.blocks)}</blockquote>`;if(o.has(e.type))return V(e);if("pre"===e.type){return`<p>${P(q(e.text.split("\n").flatMap((e,t)=>[...t?[{kind:"br",strong:!1,em:!1,href:null}]:[],{kind:"text",value:e.replace(/[\t\f]/gu," "),strong:!1,em:!1,href:null}]),"value"))}</p>`}if("table"===e.type){return[{leaves:e.caption},...e.rows.flatMap(e=>e.cells)].filter(e=>z(e.leaves)).map(e=>`<p>${P(e.leaves)}</p>`).join("")}return`<${e.type}>${P(e.leaves)}</${e.type}>`}).join("")}const M=e=>{const t=e&&"object"==typeof e&&!Array.isArray(e)&&"value"in e?e.value:e;return"string"==typeof t?t:""};function B(e){const t=M(e);return t?function(e,{mode:t="value",document:n}={}){let r;if(e&&"object"==typeof e&&"number"==typeof e.nodeType)r=b(e);else{const t="string"==typeof e?e:"",i=void 0===n?globalThis.document:n;if(t&&i?.createElement){const e=i.createElement("template");e.innerHTML=t,r=b(e.content)}else r=g(t)}return N(E(r,{mode:t}))}(t,{mode:"value"}):""}function L(e){const t=M(e);return t?function(e){const t=E(g(e),{mode:"value"}),n=e=>e.map(e=>"br"===e.kind?"\n":e.value).join(""),r=e=>e.items.map(e=>e.children.map(e=>"inline"===e.type?n(e.leaves):r(e)).join("\n")).join("\n"),i=e=>e.map(e=>"blockquote"===e.type?i(e.blocks):o.has(e.type)?r(e):n(e.leaves)).join("\n\n");return i(t)}(t).replace(/\s+/gu," ").trim():""}},e5483002f3ea(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{oX:()=>ut,z4:()=>Ke});var i=n("2a080a730149"),l=n("073f05ff1a81"),a=n("5961360f41f4"),s=n("43090d1c8307"),o=n("fc654eb7fab0"),u=n("9ce1a42b2a85"),c=n("dd6973f77245"),d=n("eb06ad68f8d3"),p=e([i,l,s]);[i,l,s]=p.then?(await p)():p;function f(e){return String(e?.size||"").trim()||"1"}function h(e,t){const n=t.getFilterControlValue(e.key);return i.html`
|
|
1
|
+
(()=>{"use strict";var e={e577837dd70a(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{Yq:()=>u,Yz:()=>c});var i=n("15b4e93ff6ed"),a=e([i]),s=a.then?(await a)():a;i=s[0];const l=864e5;function o(e){return"short"===e||"medium"===e||"long"===e||"full"===e}function u(e,{date:t="medium",time:n=null,intl:r=null,gap:a="",...s}={}){const l=(0,i.ay)(e);if(!l)return a;let u=r;return u||(u={},o(t)&&(u.dateStyle=t),o(n)&&(u.timeStyle=n),u.dateStyle||u.timeStyle||(u.dateStyle="medium")),(0,i.Qz)("DateTimeFormat",(0,i.OE)(s),u).format(l)}function c(e,{now:t=new Date}={}){const n=(0,i.ay)(e),r=(0,i.ay)(t);if(!n||!r)return Number.NaN;const a=Date.UTC(n.getFullYear(),n.getMonth(),n.getDate()),s=Date.UTC(r.getFullYear(),r.getMonth(),r.getDate());return Math.round((a-s)/l)}r()}catch(d){r(d)}})},"15b4e93ff6ed"(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{OE:()=>l,Qz:()=>c,ay:()=>o});var i=n("43090d1c8307"),a=e([i]),s=a.then?(await a)():a;i=s[0];function l({locale:e,node:t}={}){return String(e||"").trim()||(0,i.pageLocale)(t)}function o(e){if(null==e||""===e)return null;const t=e instanceof Date?new Date(e.getTime()):new Date("string"==typeof e&&/^\d+$/u.test(e)?Number(e):e);return Number.isNaN(t.getTime())?null:t}function u(){const e="undefined"!=typeof globalThis?globalThis:{};return e.__sfFormat||(e.__sfFormat={formatters:new Map}),e.__sfFormat.formatters}function c(e,t,n){const r=`${e}|${t}|${JSON.stringify(n)}`,i=u();if(i.has(r))return i.get(r);const a=Intl[e];let s;try{s=new a(t||void 0,n)}catch{try{s=new a(void 0,n)}catch{s=new a(t||void 0,"NumberFormat"===e?{maximumFractionDigits:2}:{})}}return i.size>=256&&i.delete(i.keys().next().value),i.set(r,s),s}r()}catch(d){r(d)}})},"9ce1a42b2a85"(e,t,n){n.d(t,{AC:()=>s,MC:()=>d,SB:()=>c,cy:()=>o,d2:()=>l});const r=/^(\d{4}-\d{2}-\d{2})(?:[T ](\d{2}):(\d{2})((?::\d{2})(?:\.\d+)?)?(Z|[+-]\d{2}:?\d{2})?)?$/u,i=/^\d{4}-\d{2}-\d{2}$/u;function a(e){return e&&"object"==typeof e&&!Array.isArray(e)&&"value"in e?e.value:e}function s(e){const t=a(e);if(null==t||""===t)return{raw:t??null,known:!0,date:"",time:"",rest:"",zone:""};const n="string"==typeof t?t.trim().match(r):null;return n?{raw:t,known:!0,date:n[1],time:n[2]?`${n[2]}:${n[3]}`:"",rest:n[4]||"",zone:n[5]||""}:{raw:t,known:!1,date:"",time:"",rest:"",zone:""}}function l(e){const t=String(e??"").trim().replace(/[_\s]/gu,"");if(""===t||":"===t)return"";const n=t.match(/^(\d{1,2})[:.]?(\d{2})$/u);if(!n)return null;const r=Number(n[1]),i=Number(n[2]);return r>23||i>59?null:`${String(r).padStart(2,"0")}:${n[2]}`}function o(e,t){const n=String(t?.date??"").trim(),r=l(t?.time);if(null===r)return{error:"timeInvalid"};if(!n&&!r)return{value:null};if(!i.test(n))return{error:n?"dateInvalid":"dateMissing"};if(!r)return{error:"timeMissing"};const a=e?.known?e:null;if(a&&a.date===n&&a.time===r)return{value:a.raw};return{value:`${n}T${r}${a&&a.time===r?a.rest:":00"}${a&&a.time?a.zone:""}`}}const u=/^(\d{2}):(\d{2})((?::\d{2})(?:\.\d+)?)?$/u;function c(e){const t=a(e);if(null==t||""===t)return{raw:t??null,known:!0,time:"",rest:""};const n="string"==typeof t?t.trim().match(u):null;return n&&null!==l(`${n[1]}:${n[2]}`)?{raw:t,known:!0,time:`${n[1]}:${n[2]}`,rest:n[3]||""}:{raw:t,known:!1,time:"",rest:""}}function d(e,t){const n=l(t);if(null===n)return{error:"timeInvalid"};if(!n)return{value:null};const r=e?.known?e:null;return r&&r.time===n?{value:r.raw}:{value:r?.rest?`${n}:00`:n}}},eb06ad68f8d3(e,t,n){n.d(t,{b:()=>V,j:()=>I});Object.freeze(["p","h2","h3","h4","strong","em","a","ul","ol","li","blockquote","br"]);const r=Object.freeze(["p","h2","h3","h4"]),i=Object.freeze(["https:","mailto:","tel:"]),a=Object.freeze(["html","paste"]),s=(Object.freeze(["pre","table"]),new Set(["script","style","template","head","title","meta","link","base","noscript","iframe","frame","frameset","noembed","noframes","object","embed","applet","svg","math","canvas","video","audio","img","picture","source","track","input","select","textarea","xmp","plaintext"])),l=new Set(["address","article","aside","body","caption","center","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h5","h6","header","hgroup","hr","html","legend","listing","main","menu","nav","optgroup","option","pre","section","summary","table","tbody","td","tfoot","th","thead","tr"]),o=new Set(["ul","ol"]),u=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),c=new Set(["script","style","textarea","title","xmp","iframe","noembed","noframes","noscript"]),d=new Set(["td","th","table","caption","button"]),p=/[\u0000-\u001f\u007f-\u009f]/gu,f=/[\u0000- \u007f-\u009f\u00a0\u1680\u2000-\u200b\u2028\u2029\u202f\u205f\u3000\ufeff]/gu;const h={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" ",shy:"",hellip:"…",mdash:"—",ndash:"–",minus:"−",laquo:"«",raquo:"»",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",bull:"•",middot:"·",copy:"©",reg:"®",trade:"™",deg:"°",times:"×",divide:"÷",plusmn:"±",euro:"€",pound:"£",yen:"¥",cent:"¢",sect:"§",para:"¶",thinsp:" ",ensp:" ",emsp:" ",zwj:"",zwnj:"",larr:"←",rarr:"→",uarr:"↑",darr:"↓",numero:"№",prime:"′",Prime:"″"};function m(e){return String(e).replace(/&(#x[0-9a-f]+|#[0-9]+|[a-z][a-z0-9]*);?/giu,(e,t)=>{if("#"===t[0]){const e="x"===t[1]||"X"===t[1]?Number.parseInt(t.slice(2),16):Number.parseInt(t.slice(1),10);return!Number.isFinite(e)||e<=0||e>1114111||e>=55296&&e<=57343?"�":String.fromCodePoint(e)}return Object.hasOwn(h,t)&&e.endsWith(";")?h[t]:e})}function g(e){const t="string"==typeof e?e:"",n={type:"element",name:"#root",attrs:{},children:[]},i=[n],a=()=>i[i.length-1],s=e=>a().children.push(e),p=e=>{if(!e)return;const t=a().children.at(-1);"text"===t?.type?t.value+=e:s({type:"text",value:e})},f=(e,t=null)=>{for(let n=i.length-1;n>0;n-=1){const r=i[n].name;if(t&&t.has(r))return!1;if(r===e)return i.length=n,!0}return!1};let h=0;const g=t.length;for(;h<g;){const e=t.indexOf("<",h);if(e<0){p(m(t.slice(h)));break}if(e>h&&p(m(t.slice(h,e))),h=e,t.startsWith("\x3c!--",h)){const e=t.indexOf("--\x3e",h+4);h=e<0?g:e+3;continue}const n=t[h+1]??"";if("!"===n||"?"===n){const e=t.indexOf(">",h+2);h=e<0?g:e+1;continue}if("/"===n){const e=/^<\/([a-z][a-z0-9-]*)[^>]*>?/iu.exec(t.slice(h));if(!e){const e=t.indexOf(">",h+2);h=e<0?g:e+1;continue}h+=e[0].length;const n=e[1].toLowerCase();"br"===n?s({type:"element",name:"br",attrs:{},children:[]}):"p"!==n||f("p",d)?f(n):s({type:"element",name:"p",attrs:{},children:[]});continue}const a=/^<([a-z][a-z0-9-]*)/iu.exec(t.slice(h));if(!a){p("<"),h+=1;continue}h+=a[0].length;const y=a[1].toLowerCase(),b={};let v=!1;for(;h<g;){const e=/^[\s/]+/u.exec(t.slice(h));if(e){e[0].includes("/")&&">"===t[h+e[0].length]&&(v=!0),h+=e[0].length;continue}if(">"===t[h]){h+=1;break}const n=/^([^\s/>"'=][^\s/>"'=]*)(?:\s*=\s*(?:"([^"]*)"?|'([^']*)'?|([^\s>]*)))?/u.exec(t.slice(h));if(!n){h+=1;continue}h+=n[0].length;const r=n[1].toLowerCase();Object.hasOwn(b,r)||(b[r]=m(n[2]??n[3]??n[4]??""))}const $={type:"element",name:y,attrs:b,children:[]};if("li"===y&&f("li",o),(r.includes(y)||o.has(y)||"blockquote"===y||l.has(y))&&f("p",d),s($),"plaintext"===y){h=g;break}if(c.has(y)){const e=new RegExp(`</${y}[\\s/>]`,"iu").exec(t.slice(h)),n=e?h+e.index:g;"textarea"===y||"title"===y?$.children.push({type:"text",value:m(t.slice(h,n))}):$.children.push({type:"text",value:t.slice(h,n)});const r=e?t.indexOf(">",n):-1;h=r<0?g:r+1;continue}u.has(y)||v||i.push($)}return n}function y(e){const t=e=>{if(3===e.nodeType)return{type:"text",value:e.data};if(11===e.nodeType)return{type:"element",name:"#root",attrs:{},children:[...e.childNodes].map(t).filter(Boolean)};if(1!==e.nodeType)return null;if(e.namespaceURI&&"http://www.w3.org/1999/xhtml"!==e.namespaceURI)return null;const n=e.localName;if(s.has(n))return null;const r={},i=e.getAttribute("href");null!==i&&(r.href=i);const a=e.getAttribute("style");null!==a&&(r.style=a);return{type:"element",name:n,attrs:r,children:"template"===n?[]:[...e.childNodes].map(t).filter(Boolean)}},n=t(e);return n&&"element"===n.type?{...n,name:"#root"}:{type:"element",name:"#root",attrs:{},children:n?[n]:[]}}function b(e,t){const n={...t};"strong"!==e.name&&"b"!==e.name||(n.strong=!0),"em"!==e.name&&"i"!==e.name||(n.em=!0);const r=function(e){const t={};if(!e)return t;const n=/(?:^|;)\s*font-weight\s*:\s*([^;!]+)/iu.exec(e)?.[1]?.trim().toLowerCase();n&&("bold"===n||"bolder"===n||Number(n)>=600?t.strong=!0:("normal"===n||"lighter"===n||Number(n)<600)&&(t.strong=!1));const r=/(?:^|;)\s*font-style\s*:\s*([^;!]+)/iu.exec(e)?.[1]?.trim().toLowerCase();return r&&("italic"===r||r.startsWith("oblique")?t.em=!0:"normal"===r&&(t.em=!1)),t}(e.attrs?.style);return void 0!==r.strong&&(n.strong=r.strong),void 0!==r.em&&(n.em=r.em),n}const v=(e,t,n)=>({kind:e,value:t,strong:Boolean(n.marks.strong),em:Boolean(n.marks.em),href:n.href||null});class ${constructor(e){this.kind=e,this.blocks=[],this.run=[],this.types=["p"],this.starts=[0],this.needBreak=!1}inline(e){"item"===this.kind&&this.needBreak&&this.run.length>0&&("text"!==e.kind||e.value.trim())&&(this.run.push({kind:"br",strong:!1,em:!1,href:null}),this.needBreak=!1),this.run.push(e)}flush(){this.run.length&&("item"===this.kind?this.blocks.push({type:"inline",leaves:this.run}):this.blocks.push({type:this.types[this.types.length-1],leaves:this.run}),this.run=[])}open(e){"item"!==this.kind?(this.flush(),this.types.push(e),this.starts.push(this.blocks.length)):this.needBreak=!0}close(e=!1){if("item"===this.kind)return void(this.needBreak=!0);const t=this.starts[this.starts.length-1];e&&!this.run.length&&this.blocks.length===t&&this.blocks.push({type:this.types[this.types.length-1],leaves:[]}),this.flush(),this.types.length>1&&(this.types.pop(),this.starts.pop())}block(e){this.flush(),this.blocks.push(e),this.needBreak=!1}}function w(e,t,n){for(const r of e)x(r,t,n)}function x(e,t,n){if("text"===e.type)return void function(e,t,n){if(n.pre)return void e.replace(/\r\n?/gu,"\n").split("\n").forEach((e,r)=>{r>0&&t.inline(v("br","",n)),e&&t.inline(v("text",e.replace(/[\t\f]/gu," "),n))});const r=e.replace(/[\t\n\r\f ]+/gu," ");r&&(" "!==r||t.run.length)&&t.inline(v("text",r,n))}(e.value,t,n);const a=e.name;if(s.has(a))return;if("br"===a)return void t.inline(v("br","",n));const u={...n,marks:b(e,n.marks)};if("a"===a){const r=function(e){if("string"!=typeof e)return null;const t=e.trim();if(!t||t.length>2048)return null;const n=t.replace(f,"");if(!n)return null;if(n.startsWith("/")){if(/^\/[/\\]/u.test(n))return null;const e=t.replace(p,"");return/^\/[/\\]/u.test(e)?null:e}const r=/^([a-z][a-z0-9+.-]*):/iu.exec(n)?.[1]?.toLowerCase();if(!r||!i.includes(`${r}:`))return null;let a;try{a=new globalThis.URL(t.replace(p,""))}catch{return null}return a.protocol!==`${r}:`?null:"https:"!==a.protocol||a.hostname?"https:"!==a.protocol&&a.href.length<=a.protocol.length?null:a.href:null}(e.attrs?.href);return void w(e.children,t,r&&!n.href?{...u,href:r}:u)}if(r.includes(a))return t.open(a),w(e.children,t,u),void t.close(!0);if(o.has(a)){const n=_(e,u,a);return void(n.items.length&&t.block(n))}if("blockquote"===a){if("item"===t.kind)return t.open("p"),w(e.children,t,u),void t.close();const n=new $("flow");return w(e.children,n,u),n.flush(),void t.block({type:"blockquote",blocks:n.blocks})}if("li"===a)return t.open("p"),w(e.children,t,u),void t.close();if(!n.paste||"item"===t.kind||"pre"!==a&&"listing"!==a){if(!n.paste||"item"===t.kind||"table"!==a)return l.has(a)?(t.open("p"),w(e.children,t,"pre"===a||"listing"===a?{...u,pre:!0}:u),void t.close()):void w(e.children,t,u);t.block(function(e,t){const n={type:"table",caption:[],rows:[]},r=(e,r)=>{const i=[];for(const n of e.children){if("element"!==n.type||"td"!==n.name&&"th"!==n.name)continue;const e=new $("item");w(n.children,e,{...t,marks:b(n,t.marks)}),e.flush(),i.push({header:"th"===n.name,leaves:S(e.blocks)})}i.length&&n.rows.push({head:r,cells:i})},i=(e,t)=>{for(const n of e.children)"element"===n.type&&"tr"===n.name&&r(n,t)};for(const a of e.children)if("element"===a.type)if("caption"===a.name){const e=new $("item");w(a.children,e,t),e.flush(),n.caption=S(e.blocks)}else"thead"===a.name?i(a,!0):"tbody"===a.name||"tfoot"===a.name?i(a,!1):"tr"===a.name&&r(a,!1);return n}(e,u))}else t.block({type:"pre",text:k(e)})}function k(e){const t=e=>"text"===e.type?e.value:s.has(e.name)?"":"br"===e.name?"\n":e.children.map(t).join("");return e.children.map(t).join("").replace(/\r\n?/gu,"\n").replace(/\u00a0/gu," ").replace(/^\n/u,"").replace(/\s+$/u,"")}function S(e){const t=[],n=e=>{if("inline"===e.type)(r=e.leaves).length&&(t.length&&t.push({kind:"br",strong:!1,em:!1,href:null}),t.push(...r));else for(const t of e.items)t.children.forEach(n);var r};return e.forEach(n),t}function F(e,t){const n=new $("item");return w(e.children,n,t),n.flush(),{children:n.blocks}}function _(e,t,n){const r={type:n,items:[]};let i=null;const a=()=>{i&&(i.flush(),r.items.push({children:i.blocks}),i=null)};for(const n of e.children)if("element"!==n.type||"li"!==n.name){if("element"===n.type&&o.has(n.name)){a();const e=_(n,{...t,marks:b(n,t.marks)},n.name);if(!e.items.length)continue;const i=r.items.at(-1);i?i.children.push(e):r.items.push({children:[e]});continue}("text"!==n.type||n.value.trim())&&("element"===n.type&&s.has(n.name)||(i??=new $("item"),x(n,i,t)))}else a(),r.items.push(F(n,t));return a(),r}const T=" ",A=(e,t)=>e.strong===t.strong&&e.em===t.em&&e.href===t.href;function z(e,t){const n=[];for(const t of e){if("text"===t.kind&&!t.value)continue;const e=n.at(-1);"text"===t.kind&&"text"===e?.kind&&A(e,t)?e.value+=t.value:n.push({...t})}for(let e=0;e<n.length;e+=1){const t=n[e];if("text"!==t.kind)continue;t.value=t.value.replace(/ {2,}/gu,T);const r=n[e-1];t.value.startsWith(T)&&(!r||"br"===r.kind||"text"===r.kind&&r.value.endsWith(T))&&(t.value=t.value.slice(1));const i=n[e+1];!t.value.endsWith(T)||i&&"br"!==i.kind||(t.value=t.value.slice(0,-1))}let r=n.filter(e=>"br"===e.kind||e.value);if("value"===t){for(;"br"===r[0]?.kind;)r.shift();for(;"br"===r.at(-1)?.kind;)r.pop();"text"===r[0]?.kind&&(r[0].value=r[0].value.replace(/^[\s\u00a0]+/u,""));const e=r.at(-1);"text"===e?.kind&&(e.value=e.value.replace(/[\s\u00a0]+$/u,"")),r=r.filter(e=>"br"===e.kind||e.value)}const i=new Map;for(const e of r)e.href&&i.set(e.href,(i.get(e.href)||"")+("text"===e.kind?e.value:"x"));for(const e of r)e.href&&!i.get(e.href).trim()&&(e.href=null);const a=[];for(const e of r){const t=a.at(-1);"text"===e.kind&&"text"===t?.kind&&A(t,e)?t.value+=e.value:a.push(e)}return a}const q=e=>e.some(e=>"text"===e.kind&&""!==e.value.replace(/[\s\u00a0]+/gu,""));function O(e,t){const n=e.items.map(e=>function(e,t){const n=[];for(const r of e.children)if("inline"===r.type){const e=z(r.leaves,t);if(!e.length)continue;const i=n.at(-1);"inline"===i?.type?i.leaves=z([...i.leaves,{kind:"br",strong:!1,em:!1,href:null},...e],t):n.push({type:"inline",leaves:e})}else{const e=O(r,t);if(!e)continue;const i=n.at(-1);i&&i.type===e.type?i.items.push(...e.items):n.push(e)}if("value"===t){const e=n.filter(e=>"inline"!==e.type||q(e.leaves));return e.length?{children:e}:null}return n.length&&"inline"===n[0].type||n.unshift({type:"inline",leaves:[{kind:"br",strong:!1,em:!1,href:null}]}),{children:n}}(e,t)).filter(Boolean);return n.length?{type:e.type,items:n}:null}function j(e,t){const n=[];for(const r of e){let e=null;if("blockquote"===r.type){const n=j(r.blocks,t);n.length?e={type:"blockquote",blocks:n}:"editor"===t&&(e={type:"blockquote",blocks:[{type:"p",leaves:[{kind:"br",strong:!1,em:!1,href:null}]}]})}else if(o.has(r.type))e=O(r,t);else if("pre"===r.type)r.text.trim()&&(e={type:"pre",text:r.text});else if("table"===r.type){const t=r.rows.map(e=>({head:e.head,cells:e.cells.map(e=>({header:e.header,leaves:z(e.leaves,"value")}))})).filter(e=>e.cells.some(e=>q(e.leaves)));t.length&&(e={type:"table",caption:z(r.caption,"value"),rows:t})}else{const n=z(r.leaves,t);"value"===t?q(n)&&(e={type:r.type,leaves:n}):e={type:r.type,leaves:n.length?n:[{kind:"br",strong:!1,em:!1,href:null}]}}if(!e)continue;const i=n.at(-1);i&&o.has(e.type)&&i.type===e.type?i.items.push(...e.items):n.push(e)}return n}function E(e,{mode:t="value",profile:n="html"}={}){if(!a.includes(n))throw new TypeError(`rich_text_profile_unknown: ${n}`);const r=new $("flow");w(e.children??[],r,{marks:{},href:null,pre:!1,paste:"paste"===n}),r.flush();const i=j(r.blocks,t);return"editor"!==t||i.length?i:[{type:"p",leaves:[{kind:"br",strong:!1,em:!1,href:null}]}]}const N=e=>e.replace(/&/gu,"&").replace(/"/gu,""").replace(/</gu,"<").replace(/>/gu,">").replace(/\u00a0/gu," ");function P(e){const t=(e,n)=>{let r="",i=0;const a=["href","strong","em"][n];for(;i<e.length;){const s=a?e[i][a]:null;let l=i+1;for(;l<e.length&&a&&e[l][a]===s;)l+=1;const o=e.slice(i,l);r+=a?"href"===a&&s?`<a href="${N(s)}">${t(o,n+1)}</a>`:"href"!==a&&s?`<${a}>${t(o,n+1)}</${a}>`:t(o,n+1):o.map(e=>"br"===e.kind?"<br>":e.value.replace(/&/gu,"&").replace(/</gu,"<").replace(/>/gu,">").replace(/\u00a0/gu," ")).join(""),i=l}return r};return t(e,0)}function C(e){return`<${e.type}>${e.items.map(e=>`<li>${e.children.map(e=>"inline"===e.type?P(e.leaves):C(e)).join("")}</li>`).join("")}</${e.type}>`}function L(e){return e.map(e=>{if("blockquote"===e.type)return`<blockquote>${L(e.blocks)}</blockquote>`;if(o.has(e.type))return C(e);if("pre"===e.type){return`<p>${P(z(e.text.split("\n").flatMap((e,t)=>[...t?[{kind:"br",strong:!1,em:!1,href:null}]:[],{kind:"text",value:e.replace(/[\t\f]/gu," "),strong:!1,em:!1,href:null}]),"value"))}</p>`}if("table"===e.type){return[{leaves:e.caption},...e.rows.flatMap(e=>e.cells)].filter(e=>q(e.leaves)).map(e=>`<p>${P(e.leaves)}</p>`).join("")}return`<${e.type}>${P(e.leaves)}</${e.type}>`}).join("")}const M=e=>{const t=e&&"object"==typeof e&&!Array.isArray(e)&&"value"in e?e.value:e;return"string"==typeof t?t:""};function V(e){const t=M(e);return t?function(e,{mode:t="value",document:n}={}){let r;if(e&&"object"==typeof e&&"number"==typeof e.nodeType)r=y(e);else{const t="string"==typeof e?e:"",i=void 0===n?globalThis.document:n;if(t&&i?.createElement){const e=i.createElement("template");e.innerHTML=t,r=y(e.content)}else r=g(t)}return L(E(r,{mode:t}))}(t,{mode:"value"}):""}function I(e){const t=M(e);return t?function(e){const t=E(g(e),{mode:"value"}),n=e=>e.map(e=>"br"===e.kind?"\n":e.value).join(""),r=e=>e.items.map(e=>e.children.map(e=>"inline"===e.type?n(e.leaves):r(e)).join("\n")).join("\n"),i=e=>e.map(e=>"blockquote"===e.type?i(e.blocks):o.has(e.type)?r(e):n(e.leaves)).join("\n\n");return i(t)}(t).replace(/\s+/gu," ").trim():""}},e5483002f3ea(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{oX:()=>ut,z4:()=>Ke});var i=n("2a080a730149"),a=n("073f05ff1a81"),s=n("5961360f41f4"),l=n("43090d1c8307"),o=n("fc654eb7fab0"),u=n("9ce1a42b2a85"),c=n("dd6973f77245"),d=n("eb06ad68f8d3"),p=e([i,a,l]);[i,a,l]=p.then?(await p)():p;function f(e){return String(e?.size||"").trim()||"1"}function h(e,t){const n=t.getFilterControlValue(e.key);return i.html`
|
|
2
2
|
<sf-input
|
|
3
3
|
size=${f(t)}
|
|
4
4
|
appearance="filled"
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
name="sf_filter_${e.key||"text"}"
|
|
8
8
|
@change=${r=>{t.patchTempFilterValue(e.key,{value:r.target?.value||"",operator:n.operator||e.filter?.defaultOperator||"contains"})}}
|
|
9
9
|
></sf-input>
|
|
10
|
-
`}function m(e,t){const n=t.getFilterControlValue(e.key),r=e.filter?.operators||["eq"],
|
|
10
|
+
`}function m(e,t){const n=t.getFilterControlValue(e.key),r=e.filter?.operators||["eq"],a=n.operator||e.filter?.defaultOperator||r[0],s="between"===a,l=s?n.value:Array.isArray(n.value)?n.value[0]:n.value;return i.html`
|
|
11
11
|
<div class="flex gap-1/3 flex-col">
|
|
12
12
|
<div class="sf-filter-operator-range flex gap-1/3 items-cross-center">
|
|
13
13
|
<sf-slider-range
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
label="tooltip"
|
|
17
17
|
suffix="%"
|
|
18
18
|
max="100"
|
|
19
|
-
multiple=${String(
|
|
20
|
-
.value=${
|
|
21
|
-
@onSliderEnd=${n=>{t.patchTempFilterValue(e.key,{value:
|
|
19
|
+
multiple=${String(s)}
|
|
20
|
+
.value=${l}
|
|
21
|
+
@onSliderEnd=${n=>{t.patchTempFilterValue(e.key,{value:s?n.detail.values||[]:n.detail.value,operator:a})}}
|
|
22
22
|
></sf-slider-range>
|
|
23
23
|
</div>
|
|
24
24
|
<sf-dropdown
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
placeholder="${Pe(t,"operator")}"
|
|
29
29
|
root-class="flex-1"
|
|
30
30
|
search="false"
|
|
31
|
-
@change=${n=>{const r=n.detail?.values?.[0]||n.detail?.value||
|
|
31
|
+
@change=${n=>{const r=n.detail?.values?.[0]||n.detail?.value||a;t.patchTempFilterValue(e.key,{operator:r})}}
|
|
32
32
|
>
|
|
33
33
|
${r.map(e=>i.html`
|
|
34
34
|
<sf-list-item
|
|
@@ -36,24 +36,24 @@
|
|
|
36
36
|
size=${f(t)}
|
|
37
37
|
text="${t.getFilterOperatorLabel(e)}"
|
|
38
38
|
value="${e}"
|
|
39
|
-
?selected=${e===
|
|
39
|
+
?selected=${e===a}
|
|
40
40
|
></sf-list-item>
|
|
41
41
|
`)}
|
|
42
42
|
</sf-dropdown>
|
|
43
43
|
</div>
|
|
44
|
-
`}function g(e,t){const n=t.getFilterControlValue(e.key),r=e.filter?.operators||["eq"],
|
|
44
|
+
`}function g(e,t){const n=t.getFilterControlValue(e.key),r=e.filter?.operators||["eq"],a=n.operator||e.filter?.defaultOperator||r[0],s="between"===a,l=n.value,o=Array.isArray(l)?l:[l||"",""],u=(n,r)=>{if(!s)return void t.patchTempFilterValue(e.key,{value:r||"",operator:a});const i=[...o];i[n]=r||"",t.patchTempFilterValue(e.key,{value:i,operator:a})};return i.html`
|
|
45
45
|
<div class="flex gap-1/3 flex-col">
|
|
46
46
|
<div class="sf-filter-operator-inputs flex gap-1/3 items-cross-center">
|
|
47
47
|
<sf-input
|
|
48
48
|
size=${f(t)}
|
|
49
49
|
appearance="bordered"
|
|
50
50
|
root-class="flex-1 min-w-0"
|
|
51
|
-
label="${
|
|
52
|
-
value="${
|
|
51
|
+
label="${s?Pe(t,"rangeFrom"):t.getFilterOperatorLabel(a)}"
|
|
52
|
+
value="${s?o[0]||"":l||""}"
|
|
53
53
|
name="sf_filter_${e.key||"number"}"
|
|
54
54
|
@change=${e=>{u(0,e.target?.value)}}
|
|
55
55
|
></sf-input>
|
|
56
|
-
${
|
|
56
|
+
${s?i.html`
|
|
57
57
|
<sf-input
|
|
58
58
|
size=${f(t)}
|
|
59
59
|
appearance="bordered"
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
placeholder="${Pe(t,"operator")}"
|
|
72
72
|
root-class="flex-1"
|
|
73
73
|
search="false"
|
|
74
|
-
@change=${n=>{const r=n.detail?.values?.[0]||n.detail?.value||
|
|
74
|
+
@change=${n=>{const r=n.detail?.values?.[0]||n.detail?.value||a;t.patchTempFilterValue(e.key,{operator:r})}}
|
|
75
75
|
>
|
|
76
76
|
${r.map(e=>i.html`
|
|
77
77
|
<sf-list-item
|
|
@@ -79,19 +79,19 @@
|
|
|
79
79
|
size=${f(t)}
|
|
80
80
|
text="${t.getFilterOperatorLabel(e)}"
|
|
81
81
|
value="${e}"
|
|
82
|
-
?selected=${e===
|
|
82
|
+
?selected=${e===a}
|
|
83
83
|
></sf-list-item>
|
|
84
84
|
`)}
|
|
85
85
|
</sf-dropdown>
|
|
86
86
|
</div>
|
|
87
|
-
`}function
|
|
87
|
+
`}function y(e,t){const n=t.getFilterControlValue(e.key),r=e.filter?.operators||["eq"],a=n.operator||e.filter?.defaultOperator||r[0],s="between"===a,l=s&&Array.isArray(n.value)?n.value:s?["",""]:n.value||"";return i.html`
|
|
88
88
|
<div class="flex flex-col gap-1/3">
|
|
89
89
|
<sf-input-date
|
|
90
|
-
.value=${
|
|
91
|
-
?range=${
|
|
90
|
+
.value=${l}
|
|
91
|
+
?range=${s}
|
|
92
92
|
name="sf_filter_${e.key||"date"}"
|
|
93
93
|
locale="ru-Ru"
|
|
94
|
-
@change=${n=>{t.patchTempFilterValue(e.key,{value:n.detail.value,operator:
|
|
94
|
+
@change=${n=>{t.patchTempFilterValue(e.key,{value:n.detail.value,operator:a})}}
|
|
95
95
|
></sf-input-date>
|
|
96
96
|
<sf-dropdown
|
|
97
97
|
size=${f(t)}
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
placeholder="${Pe(t,"operator")}"
|
|
101
101
|
root-class="flex-1"
|
|
102
102
|
search="false"
|
|
103
|
-
@change=${n=>{const r=n.detail?.values?.[0]||n.detail?.value||
|
|
103
|
+
@change=${n=>{const r=n.detail?.values?.[0]||n.detail?.value||a;t.patchTempFilterValue(e.key,{operator:r})}}
|
|
104
104
|
>
|
|
105
105
|
${r.map(e=>i.html`
|
|
106
106
|
<sf-list-item
|
|
@@ -108,46 +108,46 @@
|
|
|
108
108
|
size=${f(t)}
|
|
109
109
|
text="${t.getFilterOperatorLabel(e)}"
|
|
110
110
|
value="${e}"
|
|
111
|
-
?selected=${e===
|
|
111
|
+
?selected=${e===a}
|
|
112
112
|
></sf-list-item>
|
|
113
113
|
`)}
|
|
114
114
|
</sf-dropdown>
|
|
115
115
|
</div>
|
|
116
|
-
`}function
|
|
116
|
+
`}function b(e,t){const n=t.getEndpointFilterPage(e),r=t.getVisibleFilterOptions(e),a=t.getFilterControlValue(e.key),s=t.getFilterOptionSearch(e.key),l=new Set(a.values||[]);return i.html`
|
|
117
117
|
<div class="flex flex-col gap-1/2 overflow-x-hidden">
|
|
118
118
|
${!e.filter?.searchable||n&&!n.searchable?"":i.html`
|
|
119
119
|
<sf-input
|
|
120
120
|
size=${f(t)}
|
|
121
121
|
appearance="filled"
|
|
122
122
|
placeholder="${Pe(t,"searchInList")}"
|
|
123
|
-
value="${
|
|
123
|
+
value="${s}"
|
|
124
124
|
name="sf_filter_${e.key||"list"}_search"
|
|
125
125
|
@input=${n=>{t.patchTempFilterOptionSearch(e.key,n.target?.value||"")}}
|
|
126
126
|
@change=${n=>{t.patchTempFilterOptionSearch(e.key,n.target?.value||"")}}
|
|
127
127
|
></sf-input>
|
|
128
128
|
`}
|
|
129
129
|
<div class="flex flex-col gap-1/2 overflow-x-hidden" data-size="4.5">
|
|
130
|
-
${r.map(n=>t.renderFilterOption(e,n,
|
|
130
|
+
${r.map(n=>t.renderFilterOption(e,n,l))}
|
|
131
131
|
</div>
|
|
132
132
|
${r.length||"loading"===n?.status||"error"===n?.status?"":i.html`
|
|
133
133
|
<!-- A list with nothing in it says why, in one line, as every
|
|
134
134
|
list does (simai.interaction-rules, five states). -->
|
|
135
|
-
<sf-empty-state layout="inline" size="1/2" kind=${
|
|
135
|
+
<sf-empty-state layout="inline" size="1/2" kind=${s?"nothing-found":"no-data"}></sf-empty-state>`}
|
|
136
136
|
${n?i.html`
|
|
137
137
|
<div role="status" aria-live="polite" class="sf-text-1">
|
|
138
138
|
${"loading"===n.status?Pe(t,"loadingOptions"):""}
|
|
139
139
|
</div>
|
|
140
140
|
${"error"===n.status?i.html`<sf-empty-state layout="inline" size="1/2" kind="error" text=${Pe(t,"optionsError")}
|
|
141
|
-
@sf-empty-state-action=${n=>{"retry"===n.detail?.id&&t.loadEndpointFilterPage(e,null,
|
|
141
|
+
@sf-empty-state-action=${n=>{"retry"===n.detail?.id&&t.loadEndpointFilterPage(e,null,s)}}></sf-empty-state>`:""}
|
|
142
142
|
${n.nextCursor&&"error"!==n.status?i.html`<sf-button appearance="outline" size=${f(t)} text="${Pe(t,"loadMore")}"
|
|
143
143
|
?disabled=${"loading"===n.status}
|
|
144
|
-
@click=${()=>t.loadEndpointFilterPage(e,n.nextCursor,
|
|
144
|
+
@click=${()=>t.loadEndpointFilterPage(e,n.nextCursor,s)}></sf-button>`:""}
|
|
145
145
|
`:""}
|
|
146
146
|
</div>
|
|
147
|
-
`}function v(e,t){return
|
|
147
|
+
`}function v(e,t){return b(e,t)}function $(e,t){const n=e.filter?.options??["image","document","archive","other"].map(e=>({value:e,label:Pe(t,`fileKind_${e}`)}));return b({...e,filter:{...e.filter||{},options:n,defaultOperator:e.filter?.defaultOperator??"in"}},t)}function w(e,t){const n=e.filter?.options??(Array.isArray(e.swatches)?e.swatches:[]).map(e=>"string"==typeof e?{value:e,label:e}:e).filter(e=>e?.value).map(e=>({value:e.value,label:e.label??e.value,color:e.value}));return n.length?b({...e,filter:{...e.filter||{},options:n,optionRenderer:e.filter?.optionRenderer??"swatch",defaultOperator:e.filter?.defaultOperator??"in"}},t):h(e,t)}const x={text:h,string:h,number:g,integer:g,date:y,datetime:y,range:m,"date-range":y,"multi-select":b,"single-select":b,choice:b,choices:b,boolean:b,user:b,"entity-multi-select":v,"entity-single-select":v,record:v,relation:v,lookup:v,file:$,color:w};function k(e={},t){const n=e.filter?.control||e.propertyType||e.type||e.dataType||"text";return(x[n]||x.text)(e,t)}const S="1/2",F="tonal",_=[[/^image\//u,"image"],[/^video\//u,"movie"],[/^audio\//u,"audiotrack"],[/^text\/(csv|tab-separated-values)$/u,"table"],[/^text\//u,"description"],[/pdf$/u,"picture_as_pdf"],[/(zip|compressed|tar|rar|7z)/u,"folder_zip"],[/(sheet|excel|spreadsheet)/u,"table"],[/(word|document)$/u,"description"],[/(presentation|powerpoint)/u,"slideshow"]];function T(e){const t=String(e||"").toLowerCase(),n=_.find(([e])=>e.test(t));return n?n[1]:"attach_file"}function A(e,t){const n=Je(t);return n?i.html`
|
|
148
148
|
<sf-input-color size="1/2" appearance="plain" value=${String(n)}
|
|
149
149
|
label=${e.label||e.key||""} disabled></sf-input-color>
|
|
150
|
-
`:i.nothing}function
|
|
150
|
+
`:i.nothing}function z(e,t){const n=Je(t),r=e.inheritedValue??"";return n||r?i.html`
|
|
151
151
|
<sf-input-color
|
|
152
152
|
size="1"
|
|
153
153
|
appearance="plain"
|
|
@@ -156,24 +156,24 @@
|
|
|
156
156
|
label=${e.label||e.key||""}
|
|
157
157
|
disabled
|
|
158
158
|
></sf-input-color>
|
|
159
|
-
`:i.nothing}function
|
|
159
|
+
`:i.nothing}function q(e,t,n){const r=Je(t),a=e.inheritedValue??"";return i.html`
|
|
160
160
|
<sf-input-color
|
|
161
161
|
size=${H}
|
|
162
162
|
appearance="bordered"
|
|
163
|
-
name=${
|
|
163
|
+
name=${J(e)}
|
|
164
164
|
value=${r?String(r):i.nothing}
|
|
165
|
-
inherited-value=${
|
|
165
|
+
inherited-value=${a?String(a):i.nothing}
|
|
166
166
|
swatches=${e.swatches?String(e.swatches):i.nothing}
|
|
167
|
-
?clearable=${Boolean(
|
|
167
|
+
?clearable=${Boolean(a)||!0!==e.required}
|
|
168
168
|
?disabled=${!0===e.readonly}
|
|
169
169
|
label=${e.label||e.key||""}
|
|
170
170
|
@change=${t=>n.setFieldValue(e,t.detail?.value??"")}
|
|
171
171
|
></sf-input-color>
|
|
172
|
-
`}function O(e,t){return t&&"object"==typeof t&&t.label?
|
|
172
|
+
`}function O(e,t){return t&&"object"==typeof t&&t.label?ae(e)?j(t):{component:{type:"reference-link",props:{line:S,label:String(t.label),icon:T(t.mime),...t.href?{href:String(t.href)}:{}}}}:null}function j(e){const t=String(e.mime??e.mimeType??""),n=Boolean(e.href)&&/^image\//u.test(t);return{component:{type:"file-preview",props:{compact:!0,fileName:String(e.label),mimeType:t,icon:T(t),...e.href?{href:String(e.href)}:{},...n?{imageUrl:String(e.href),kind:"image"}:{kind:"icon"},actions:!1,downloadAction:!1,removeAction:!1}}}}function E(e,t){if(!Array.isArray(t)||!t.length)return null;if("badges"===String(e.variant??""))return N(e,t);const n=e.options||e.filter?.options||e.constraints?.options,r=e=>{const t=Array.isArray(n)?n.find(t=>String(t?.value)===String(e)):null;return String(t?.label??t?.text??e)};return t.map(e=>({component:{type:"tag",props:{line:S,kind:"default",text:r(e)}}}))}function N(e,t){const n=e.options||e.filter?.options||e.constraints?.options;return t.map(t=>{const r=t&&"object"==typeof t?t.value:t,i=Array.isArray(n)?n.find(e=>String(e?.value)===String(r)):null,a=i?(0,s.f)(i):null,l=t&&"object"==typeof t&&void 0!==t.text?String(t.text):String(i?.label??i?.text??r);return{component:{type:"badge",props:{line:S,text:l,appearance:e.badgeAppearance??F,...a?.scheme?{scheme:a.scheme}:{},...a?.rootStyle?{rootStyle:a.rootStyle}:{}}}}})}const P={string:ne,date:V,datetime:V,time:V,boolean:L,choices:E,file:O,color:A,include:oe,choice:M,integer:I,number:I,user:R,record:U,relation:U,lookup:D,html:W};function C(e,t){return{yes:e.trueText??e.labels?.true??Pe(t,"yes"),no:e.falseText??e.labels?.false??Pe(t,"no")}}function L(e,t,n){if("boolean"!=typeof t)return null;const r=C(e,n);return t?r.yes:r.no}function M(e,t){const n=e.options||e.filter?.options||e.constraints?.options;if(!Array.isArray(n))return null;const r=n.find(e=>String(e?.value)===String(t));if(!r)return null;const i=(0,s.f)(r);return{component:{type:"badge",props:{line:S,text:r.label??r.text??String(t),appearance:e.badgeAppearance??F,...i?.scheme?{scheme:i.scheme}:{},...i?.rootStyle?{rootStyle:i.rootStyle}:{}}}}}function V(e,t,n){const r=n?.formatFieldValue?.(e,t);return"string"==typeof r&&""!==r?r:null}function I(e,t,n){const r=e.variant||e.filter?.variant,i=Number(Je(t));return"scale"===r&&Number.isFinite(i)?i<0||i>100?null:{component:{type:"progress-scale",props:{line:S,value:String(i)}}}:V(e,t,n)}function B(e){return{component:{type:"reference-link",props:{line:S,appearance:"plain",icon:"",label:String(e.label),...e.href?{href:String(e.href)}:{}}}}}function R(e,t){return t&&"object"==typeof t&&t.label?[{component:{type:"avatar",props:{line:S,text:t.avatarText||""}}},t.href?B(t):String(t.label)]:null}function U(e,t){return t&&"object"==typeof t&&t.label?B(t):null}function D(e,t){const n=Le(e,t);return n.length?n.map(e=>e.label).join(", "):null}function W(e,t){return(0,d.j)(t)||null}function K(e={},t,n){const r=e.propertyType||e.type||e.dataType,i=P[r];if(!i)return null;const a=i(e,t,n);return a??null}let H="1";const G={record:Ce,relation:Ce,user:Ce,lookup:Me,string:ue,text:de,html:pe,integer:ge,number:ge,date:ve,datetime:we,time:xe,boolean:ke,choice:ze,choices:je,file:Re,color:q,include:le};function J(e){return`sf_field_${e.key||"value"}`}function Y(e,t,n){return i.html`
|
|
173
173
|
<sf-input-country
|
|
174
174
|
size=${H}
|
|
175
|
-
name=${
|
|
176
|
-
value=${
|
|
175
|
+
name=${J(e)}
|
|
176
|
+
value=${Je(t)??""}
|
|
177
177
|
aria-label=${e.label||e.key||""}
|
|
178
178
|
?required=${Boolean(e.required)}
|
|
179
179
|
?disabled=${!0===e.readonly}
|
|
@@ -181,7 +181,7 @@
|
|
|
181
181
|
show-code="true"
|
|
182
182
|
@change=${t=>n.setFieldValue(e,t.detail?.value??t.target?.value??"")}
|
|
183
183
|
></sf-input-country>
|
|
184
|
-
`}function
|
|
184
|
+
`}function Z(e){return"password"===String(e.variant??"")}function Q(e){return e&&"object"==typeof e&&!Array.isArray(e)?!0===e.set:"string"==typeof e&&""!==e}function X(e,t){return Pe(e,Q(t)?"passwordSet":"passwordUnset")}function ee(e){const t=e.currentTarget,n=t?.closest?.(".sf-field-password")?.querySelector?.("sf-input");if(!n)return;const r="false"===t.getAttribute("pressed");n.setAttribute("input-type",r?"text":"password"),t.setAttribute("pressed",r?"":"false"),t.setAttribute("icon",r?"visibility_off":"visibility")}function te(e,t,n){const r=Q(t),a=e.placeholder||(r?Pe(n,"passwordKeep"):""),s=t=>{const r=t.target?.value??"";n.setFieldValue(e,""===r?void 0:r)};return i.html`
|
|
185
185
|
<span class="sf-field-password flex items-cross-center gap-1/3 min-w-0" spellcheck="false">
|
|
186
186
|
<sf-input
|
|
187
187
|
size=${H}
|
|
@@ -189,12 +189,12 @@
|
|
|
189
189
|
root-class="flex-1 min-w-0"
|
|
190
190
|
input-type="password"
|
|
191
191
|
autocomplete="new-password"
|
|
192
|
-
name=${
|
|
193
|
-
placeholder=${
|
|
192
|
+
name=${J(e)}
|
|
193
|
+
placeholder=${a||i.nothing}
|
|
194
194
|
?required=${Boolean(e.required)&&!r}
|
|
195
195
|
aria-label=${e.label||e.key||""}
|
|
196
|
-
@input=${
|
|
197
|
-
@change=${
|
|
196
|
+
@input=${s}
|
|
197
|
+
@change=${s}
|
|
198
198
|
></sf-input>
|
|
199
199
|
<sf-button-icon
|
|
200
200
|
size=${H}
|
|
@@ -206,15 +206,15 @@
|
|
|
206
206
|
@click=${ee}
|
|
207
207
|
></sf-button-icon>
|
|
208
208
|
</span>
|
|
209
|
-
`}function ne(e,t,n){return
|
|
209
|
+
`}function ne(e,t,n){return Z(e)?X(n,t):null}function re(e,t,n){return Z(e)?i.html`<span class="sf-field-view">${X(n,t)}</span>`:Ze(e,t,n)}const ie=new Set(["image","image-card","image-list"]);function ae(e){return ie.has(String(e.variant??""))}function se(e,t){const n=Je(t);return n?i.html`
|
|
210
210
|
<pre class="sf-field-include" data-language=${e.language?String(e.language):i.nothing}><code>${String(n)}</code></pre>
|
|
211
|
-
`:i.nothing}function
|
|
211
|
+
`:i.nothing}function le(e,t,n){return i.html`
|
|
212
212
|
<sf-input-textarea
|
|
213
213
|
size=${H}
|
|
214
214
|
appearance="bordered"
|
|
215
215
|
class="sf-field-include-edit"
|
|
216
|
-
name=${
|
|
217
|
-
value=${
|
|
216
|
+
name=${J(e)}
|
|
217
|
+
value=${Je(t)??""}
|
|
218
218
|
rows="8"
|
|
219
219
|
spellcheck="false"
|
|
220
220
|
?required=${Boolean(e.required)}
|
|
@@ -223,11 +223,11 @@
|
|
|
223
223
|
@change=${t=>n.setFieldValue(e,t.target?.value??"")}
|
|
224
224
|
@input=${t=>n.setFieldValue(e,t.target?.value??"")}
|
|
225
225
|
></sf-input-textarea>
|
|
226
|
-
`}function oe(e,t){const n=
|
|
226
|
+
`}function oe(e,t){const n=Je(t);if(!n)return i.nothing;const r=String(n).split("\n")[0];return i.html`<code>${r.length>60?`${r.slice(0,60)}…`:r}</code>`}function ue(e,t,n){const r=(0,c.$)(e);return"phone"===String(e.variant??"")?Y(e,t,n):Z(e)?te(e,t,n):r?ce(e,t,n,r):(t=Je(t),i.html`
|
|
227
227
|
<sf-input
|
|
228
228
|
size=${H}
|
|
229
229
|
appearance="bordered"
|
|
230
|
-
name=${
|
|
230
|
+
name=${J(e)}
|
|
231
231
|
value=${t??""}
|
|
232
232
|
placeholder=${e.placeholder||i.nothing}
|
|
233
233
|
?required=${Boolean(e.required)}
|
|
@@ -235,11 +235,11 @@
|
|
|
235
235
|
@input=${t=>n.setFieldValue(e,t.target?.value??"")}
|
|
236
236
|
@change=${t=>n.setFieldValue(e,t.target?.value??"")}
|
|
237
237
|
></sf-input>
|
|
238
|
-
`)}function ce(e,t,n,r){t=
|
|
238
|
+
`)}function ce(e,t,n,r){t=Je(t);const a=!1===e.nullable?"":null,s=(t,i)=>{const s=t.currentTarget,l=String(s?.value??""),o=(0,c.C)(l,r);if("incomplete"===o){const t=Pe(n,"maskIncomplete");return i&&s&&(s.setAttribute("error-message",t),s.toggleAttribute("invalid",!0)),void("function"==typeof n.setFieldError?(n.setFieldError(e,t),n.setFieldValue(e,l)):n.setFieldValue(e,void 0))}s?.hasAttribute("invalid")&&(s.toggleAttribute("invalid",!1),s.removeAttribute("error-message")),n.setFieldError?.(e,null),n.setFieldValue(e,"empty"===o?a:l)};return i.html`
|
|
239
239
|
<sf-input
|
|
240
240
|
size=${H}
|
|
241
241
|
appearance="bordered"
|
|
242
|
-
name=${
|
|
242
|
+
name=${J(e)}
|
|
243
243
|
value=${t??""}
|
|
244
244
|
placeholder=${e.placeholder||i.nothing}
|
|
245
245
|
autocomplete="off"
|
|
@@ -247,14 +247,14 @@
|
|
|
247
247
|
mask-pattern=${r}
|
|
248
248
|
?required=${Boolean(e.required)}
|
|
249
249
|
aria-label=${e.label||e.key||""}
|
|
250
|
-
@input=${e=>
|
|
251
|
-
@change=${e=>
|
|
250
|
+
@input=${e=>s(e,!1)}
|
|
251
|
+
@change=${e=>s(e,!0)}
|
|
252
252
|
></sf-input>
|
|
253
|
-
`}function de(e,t,n){return t=
|
|
253
|
+
`}function de(e,t,n){return t=Je(t),i.html`
|
|
254
254
|
<sf-input-textarea
|
|
255
255
|
size=${H}
|
|
256
256
|
appearance="bordered"
|
|
257
|
-
name=${
|
|
257
|
+
name=${J(e)}
|
|
258
258
|
value=${t??""}
|
|
259
259
|
placeholder=${e.placeholder||i.nothing}
|
|
260
260
|
?required=${Boolean(e.required)}
|
|
@@ -262,11 +262,11 @@
|
|
|
262
262
|
@input=${t=>n.setFieldValue(e,t.target?.value??"")}
|
|
263
263
|
@change=${t=>n.setFieldValue(e,t.target?.value??"")}
|
|
264
264
|
></sf-input-textarea>
|
|
265
|
-
`}function pe(e,t,n){t=
|
|
265
|
+
`}function pe(e,t,n){t=Je(t);const r=t=>n.setFieldValue(e,t.currentTarget?.value??"");return i.html`
|
|
266
266
|
<sf-input-rich
|
|
267
267
|
size=${H}
|
|
268
268
|
appearance="bordered"
|
|
269
|
-
name=${
|
|
269
|
+
name=${J(e)}
|
|
270
270
|
value=${"string"==typeof t?t:""}
|
|
271
271
|
placeholder=${e.placeholder||i.nothing}
|
|
272
272
|
?required=${Boolean(e.required)}
|
|
@@ -275,26 +275,26 @@
|
|
|
275
275
|
@input=${r}
|
|
276
276
|
@change=${r}
|
|
277
277
|
></sf-input-rich>
|
|
278
|
-
`}function fe(e){return"stepper"===String(e.variant??"")}function he(e){if(null==e||""===e)return"";const t=Number(e);return Number.isFinite(t)?String(t):""}function me(e,t,n){const r="number"===(e.propertyType||e.type),
|
|
278
|
+
`}function fe(e){return"stepper"===String(e.variant??"")}function he(e){if(null==e||""===e)return"";const t=Number(e);return Number.isFinite(t)?String(t):""}function me(e,t,n){const r="number"===(e.propertyType||e.type),a=he(e.step),s=r?he(e.precision)||(a?"":"2"):"0",l=t=>n.setFieldValue(e,t.detail?.value??null);return i.html`
|
|
279
279
|
<sf-input-quantity
|
|
280
280
|
size=${H}
|
|
281
|
-
name=${
|
|
282
|
-
value=${he(
|
|
281
|
+
name=${J(e)}
|
|
282
|
+
value=${he(Je(t))}
|
|
283
283
|
min=${he(e.min)||i.nothing}
|
|
284
284
|
max=${he(e.max)||i.nothing}
|
|
285
|
-
step=${
|
|
286
|
-
precision=${
|
|
285
|
+
step=${a||i.nothing}
|
|
286
|
+
precision=${s||i.nothing}
|
|
287
287
|
aria-label=${e.label||e.key||""}
|
|
288
288
|
?required=${Boolean(e.required)}
|
|
289
289
|
?disabled=${!0===e.readonly}
|
|
290
|
-
@input=${
|
|
291
|
-
@change=${
|
|
290
|
+
@input=${l}
|
|
291
|
+
@change=${l}
|
|
292
292
|
></sf-input-quantity>
|
|
293
|
-
`}function ge(e,t,n){if(fe(e))return me(e,t,n);const r="number"===(e.propertyType||e.type);return t=
|
|
293
|
+
`}function ge(e,t,n){if(fe(e))return me(e,t,n);const r="number"===(e.propertyType||e.type);return t=Je(t),i.html`
|
|
294
294
|
<sf-input
|
|
295
295
|
size=${H}
|
|
296
296
|
appearance="bordered"
|
|
297
|
-
name=${
|
|
297
|
+
name=${J(e)}
|
|
298
298
|
value=${t??""}
|
|
299
299
|
inputmode=${r?"decimal":"numeric"}
|
|
300
300
|
?required=${Boolean(e.required)}
|
|
@@ -302,82 +302,82 @@
|
|
|
302
302
|
@input=${t=>{const r=t.target?.value??"";n.setFieldValue(e,""===r?null:Number(r))}}
|
|
303
303
|
@change=${t=>{const r=t.target?.value??"";n.setFieldValue(e,""===r?null:Number(r))}}
|
|
304
304
|
></sf-input>
|
|
305
|
-
`}const
|
|
305
|
+
`}const ye=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2}(?::\d{2})?(?:\.\d+)?)(Z|[+-]\d{2}:?\d{2})?$/;function be(e){const t="string"==typeof e?e.trim().match(ye):null;return t?{date:t[1],suffix:`T${t[2]}${t[3]||""}`}:{date:e,suffix:""}}function ve(e,t,n){t=Je(t);const{date:r,suffix:a}=be(t);return i.html`
|
|
306
306
|
<sf-input-date
|
|
307
307
|
size=${H}
|
|
308
|
-
name=${
|
|
308
|
+
name=${J(e)}
|
|
309
309
|
value=${r??""}
|
|
310
310
|
aria-label=${e.label||e.key||""}
|
|
311
311
|
?required=${Boolean(e.required)}
|
|
312
|
-
@change=${t=>{const r=t.detail?.value??t.target?.value??null;n.setFieldValue(e,r&&
|
|
312
|
+
@change=${t=>{const r=t.detail?.value??t.target?.value??null;n.setFieldValue(e,r&&a?`${r}${a}`:r)}}
|
|
313
313
|
></sf-input-date>
|
|
314
|
-
`}function $e(e){const t=Number(e.step);return Number.isInteger(t)&&t>=1&&t<=60?String(t):""}function we(e,t,n){const r=(0,u.AC)(t),
|
|
314
|
+
`}function $e(e){const t=Number(e.step);return Number.isInteger(t)&&t>=1&&t<=60?String(t):""}function we(e,t,n){const r=(0,u.AC)(t),a=r.date?`${r.date}${r.time?`T${r.time}`:""}`:"",s="string"==typeof e.min?e.min:"",l="string"==typeof e.max?e.max:"",o=$e(e);return i.html`
|
|
315
315
|
<sf-input-date
|
|
316
316
|
class="sf-field-datetime"
|
|
317
317
|
mode="datetime"
|
|
318
318
|
size=${H}
|
|
319
|
-
name=${
|
|
320
|
-
.value=${
|
|
321
|
-
min-date=${
|
|
322
|
-
max-date=${
|
|
319
|
+
name=${J(e)}
|
|
320
|
+
.value=${a}
|
|
321
|
+
min-date=${s||i.nothing}
|
|
322
|
+
max-date=${l||i.nothing}
|
|
323
323
|
minute-step=${o||i.nothing}
|
|
324
324
|
aria-label=${e.label||e.key||""}
|
|
325
325
|
?required=${Boolean(e.required)}
|
|
326
|
-
@change=${t=>{if(t.target!==t.currentTarget)return;const[i="",
|
|
326
|
+
@change=${t=>{if(t.target!==t.currentTarget)return;const[i="",a=""]=String(t.detail?.value??"").split("T"),s=(0,u.cy)(r,{date:i,time:a});if(s.error)return;const l=null===s.value?r.known&&!r.date:s.value===r.raw;n.setFieldValue(e,l?void 0:s.value)}}
|
|
327
327
|
></sf-input-date>
|
|
328
|
-
`}function xe(e,t,n){const r=(0,u.SB)(t),
|
|
328
|
+
`}function xe(e,t,n){const r=(0,u.SB)(t),a="string"==typeof e.min?e.min:"",s="string"==typeof e.max?e.max:"",l=$e(e);return i.html`
|
|
329
329
|
<sf-input-date
|
|
330
330
|
class="sf-field-time"
|
|
331
331
|
mode="time"
|
|
332
332
|
size=${H}
|
|
333
|
-
name=${
|
|
333
|
+
name=${J(e)}
|
|
334
334
|
.value=${r.time}
|
|
335
|
-
min-time=${
|
|
336
|
-
max-time=${
|
|
337
|
-
minute-step=${
|
|
335
|
+
min-time=${a||i.nothing}
|
|
336
|
+
max-time=${s||i.nothing}
|
|
337
|
+
minute-step=${l||i.nothing}
|
|
338
338
|
aria-label=${e.label||e.key||""}
|
|
339
339
|
?required=${Boolean(e.required)}
|
|
340
|
-
@change=${t=>{if(t.target!==t.currentTarget)return;const i=(0,u.MC)(r,String(t.detail?.value??""));if(i.error)return;const
|
|
340
|
+
@change=${t=>{if(t.target!==t.currentTarget)return;const i=(0,u.MC)(r,String(t.detail?.value??""));if(i.error)return;const a=null===i.value?r.known&&!r.time:i.value===r.raw;n.setFieldValue(e,a?void 0:i.value)}}
|
|
341
341
|
></sf-input-date>
|
|
342
342
|
`}function ke(e,t,n){if(!(!0!==e.required))return i.html`
|
|
343
343
|
<sf-switch
|
|
344
344
|
size=${H}
|
|
345
|
-
name=${
|
|
345
|
+
name=${J(e)}
|
|
346
346
|
?checked=${!0===t}
|
|
347
347
|
aria-label=${e.label||e.key||""}
|
|
348
348
|
@change=${t=>n.setFieldValue(e,Boolean(t.target?.checked))}
|
|
349
349
|
></sf-switch>
|
|
350
|
-
`;const r=
|
|
350
|
+
`;const r=C(e,n),a=JSON.stringify([{value:"yes",label:r.yes},{value:"no",label:r.no}]);return i.html`
|
|
351
351
|
<sf-button-group
|
|
352
352
|
size=${H}
|
|
353
|
-
items=${
|
|
353
|
+
items=${a}
|
|
354
354
|
value=${!0===t?"yes":!1===t?"no":i.nothing}
|
|
355
355
|
aria-label=${e.label||e.key||""}
|
|
356
356
|
@change=${t=>{const r=t.detail?.value;n.setFieldValue(e,"yes"===r||"no"!==r&&null)}}
|
|
357
357
|
></sf-button-group>
|
|
358
|
-
`}function Se(e,t,n){const r=e.options||e.filter?.options||e.constraints?.options||[],i=n?new Set((Array.isArray(t)?t:[]).map(e=>String(e))):new Set([String(t??"")]);return r.map(e=>({type:"text",size:"1",text:e.label??e.text??String(e.value),value:String(e.value),selected:i.has(String(e.value))}))}const
|
|
358
|
+
`}function Se(e,t,n){const r=e.options||e.filter?.options||e.constraints?.options||[],i=n?new Set((Array.isArray(t)?t:[]).map(e=>String(e))):new Set([String(t??"")]);return r.map(e=>({type:"text",size:"1",text:e.label??e.text??String(e.value),value:String(e.value),selected:i.has(String(e.value))}))}const Fe=new Set(["1/2","1","2"]),_e=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"," ","Enter"]);function Te(e){return"buttons"===String(e.variant??"")}function Ae(e,t,n){t=Je(t);const r=(e.options||e.filter?.options||e.constraints?.options||[]).filter(e=>e&&null!==e.value&&void 0!==e.value&&""!==String(e.value)),a=r.map(e=>({value:String(e.value),label:String(e.label??e.text??e.value),...e.icon?{icon:String(e.icon)}:{},...e.disabled?{disabled:!0}:{}})),s=String(e.size??""),l=Fe.has(s)?s:H,o=We,u=!o&&!0===e.readonly,c=!0!==e.required&&!u&&!o,d=null==t?"":String(t),p={capture:!0,handleEvent(e){const t=e.currentTarget,n=e.target?.closest?.("[data-sf-button-group-value]");if(t&&n&&t.contains(n))return u?(e.preventDefault(),void e.stopPropagation()):void(c&&!n.disabled&&n.getAttribute("data-sf-button-group-value")===t.value&&(e.preventDefault(),e.stopPropagation(),t.clear?.()))}},f={capture:!0,handleEvent(e){u&&_e.has(e.key)&&(e.preventDefault(),e.stopPropagation())}};return i.html`
|
|
359
359
|
<sf-button-group
|
|
360
360
|
class="sf-field-choice-buttons"
|
|
361
361
|
appearance="segmented"
|
|
362
|
-
size=${
|
|
362
|
+
size=${l}
|
|
363
363
|
root-class=${u?"flex-wrap pointer-event-none":"flex-wrap"}
|
|
364
|
-
name=${
|
|
365
|
-
items=${JSON.stringify(
|
|
364
|
+
name=${J(e)}
|
|
365
|
+
items=${JSON.stringify(a)}
|
|
366
366
|
value=${d||i.nothing}
|
|
367
367
|
?disabled=${o}
|
|
368
368
|
data-readonly=${u?"true":i.nothing}
|
|
369
369
|
aria-label=${e.label||e.key||""}
|
|
370
370
|
@click=${p}
|
|
371
371
|
@keydown=${f}
|
|
372
|
-
@change=${t=>{const i=String(t.detail?.value??"");var
|
|
372
|
+
@change=${t=>{const i=String(t.detail?.value??"");var a;n.setFieldValue(e,""===i?null:(a=i,r.find(e=>String(e.value)===a)?.value??a))}}
|
|
373
373
|
></sf-button-group>
|
|
374
|
-
`}function
|
|
374
|
+
`}function ze(e,t,n){return Te(e)?Ae(e,t,n):(t=Je(t),i.html`
|
|
375
375
|
<sf-dropdown
|
|
376
376
|
size=${H}
|
|
377
377
|
appearance="outlined"
|
|
378
378
|
mode="select"
|
|
379
379
|
search="false"
|
|
380
|
-
name=${
|
|
380
|
+
name=${J(e)}
|
|
381
381
|
?required=${Boolean(e.required)}
|
|
382
382
|
value=${t??""}
|
|
383
383
|
placeholder=${e.placeholder||i.nothing}
|
|
@@ -385,44 +385,44 @@
|
|
|
385
385
|
.options=${Se(e,t,!1)}
|
|
386
386
|
@change=${t=>n.setFieldValue(e,t.detail?.value??null)}
|
|
387
387
|
></sf-dropdown>
|
|
388
|
-
`)}const
|
|
388
|
+
`)}const qe=13;function Oe(e,t,n){const r=e.options||e.filter?.options||e.constraints?.options||[],a=new Set((Array.isArray(t)?t:[]).map(e=>String(e)));return i.html`
|
|
389
389
|
<div class="sf-field-checklist grid gap-1/3 w-full min-w-0" role="group" aria-label=${e.label||e.key||""}
|
|
390
390
|
style="grid-template-columns: repeat(auto-fill, minmax(min(100%, 14rem), 1fr))">
|
|
391
391
|
${r.map(t=>i.html`<sf-checkbox size=${H}
|
|
392
|
-
name=${
|
|
392
|
+
name=${J(e)} value=${String(t.value)}
|
|
393
393
|
label=${t.label??t.text??String(t.value)}
|
|
394
|
-
.checked=${
|
|
395
|
-
@change=${i=>((t,i)=>{const
|
|
394
|
+
.checked=${a.has(String(t.value))}
|
|
395
|
+
@change=${i=>((t,i)=>{const s=r.filter(e=>String(e.value)===String(t.value)?i:a.has(String(e.value))).map(e=>e.value);n.setFieldValue(e,s)})(t,Boolean(i.target?.checked??i.detail?.checked))}></sf-checkbox>`)}
|
|
396
396
|
</div>
|
|
397
|
-
`}function je(e,t,n){const r=e.options||e.filter?.options||e.constraints?.options||[],
|
|
397
|
+
`}function je(e,t,n){const r=e.options||e.filter?.options||e.constraints?.options||[],a=String(e.variant??"");return"checklist"===a||"select"!==a&&r.length>=qe?Oe(e,t,n):i.html`
|
|
398
398
|
<sf-dropdown
|
|
399
399
|
size=${H}
|
|
400
400
|
appearance="outlined"
|
|
401
401
|
mode="select"
|
|
402
402
|
multiple
|
|
403
403
|
search="false"
|
|
404
|
-
name=${
|
|
404
|
+
name=${J(e)}
|
|
405
405
|
?required=${Boolean(e.required)}
|
|
406
406
|
placeholder=${e.placeholder||i.nothing}
|
|
407
407
|
aria-label=${e.label||e.key||""}
|
|
408
408
|
.options=${Se(e,t,!0)}
|
|
409
409
|
@change=${t=>{const r=t.detail?.values??t.detail?.value;n.setFieldValue(e,Array.isArray(r)?r:r?[r]:[])}}
|
|
410
410
|
></sf-dropdown>
|
|
411
|
-
`}const Ee={en:{yes:"Yes",no:"No",searchInList:"Find in the list",containsText:"Contains…",fileKind_image:"Images",fileKind_document:"Documents",fileKind_archive:"Archives",fileKind_other:"Other files",operator:"Operator",rangeFrom:"From",rangeTo:"To",loadingOptions:"Loading the options",optionsError:"The options could not be loaded",pickRecord:"Choose a record",pickFromList:"Choose from the list",searchRecords:"Find a record",loadingRecords:"Loading records",recordsError:"The records could not be loaded",retry:"Try again",loadMore:"Load more",removeFile:"Remove",passwordSet:"Set",passwordUnset:"Not set",passwordKeep:"Set; type a new one to replace it",showPassword:"Show password",maskIncomplete:"Complete the field"},ru:{yes:"Да",no:"Нет",searchInList:"Найти в списке",containsText:"Содержит…",fileKind_image:"Изображения",fileKind_document:"Документы",fileKind_archive:"Архивы",fileKind_other:"Прочие файлы",operator:"Оператор",rangeFrom:"От",rangeTo:"До",loadingOptions:"Загрузка вариантов",optionsError:"Не удалось загрузить варианты",pickRecord:"Выберите запись",pickFromList:"Выберите из списка",searchRecords:"Найти запись",loadingRecords:"Загрузка записей",recordsError:"Не удалось загрузить записи",retry:"Повторить",loadMore:"Загрузить ещё",removeFile:"Удалить",passwordSet:"Задан",passwordUnset:"Не задан",passwordKeep:"Задан; введите новый, чтобы заменить",showPassword:"Показать пароль",maskIncomplete:"Заполните поле полностью"}},
|
|
411
|
+
`}const Ee={en:{yes:"Yes",no:"No",searchInList:"Find in the list",containsText:"Contains…",fileKind_image:"Images",fileKind_document:"Documents",fileKind_archive:"Archives",fileKind_other:"Other files",operator:"Operator",rangeFrom:"From",rangeTo:"To",loadingOptions:"Loading the options",optionsError:"The options could not be loaded",pickRecord:"Choose a record",pickFromList:"Choose from the list",searchRecords:"Find a record",loadingRecords:"Loading records",recordsError:"The records could not be loaded",retry:"Try again",loadMore:"Load more",removeFile:"Remove",passwordSet:"Set",passwordUnset:"Not set",passwordKeep:"Set; type a new one to replace it",showPassword:"Show password",maskIncomplete:"Complete the field"},ru:{yes:"Да",no:"Нет",searchInList:"Найти в списке",containsText:"Содержит…",fileKind_image:"Изображения",fileKind_document:"Документы",fileKind_archive:"Архивы",fileKind_other:"Прочие файлы",operator:"Оператор",rangeFrom:"От",rangeTo:"До",loadingOptions:"Загрузка вариантов",optionsError:"Не удалось загрузить варианты",pickRecord:"Выберите запись",pickFromList:"Выберите из списка",searchRecords:"Найти запись",loadingRecords:"Загрузка записей",recordsError:"Не удалось загрузить записи",retry:"Повторить",loadMore:"Загрузить ещё",removeFile:"Удалить",passwordSet:"Задан",passwordUnset:"Не задан",passwordKeep:"Задан; введите новый, чтобы заменить",showPassword:"Показать пароль",maskIncomplete:"Заполните поле полностью"}},Ne="sf-field-renderers";function Pe(e,t){return e?.getFieldText?.(t)??(0,l.pageText)(Ee,t,e??null,Ne)}function Ce(e,t,n){if(!n.loadFieldOptions||!n.getFieldOptionsPage)return null;const r=n.getFieldOptionsPage(e)||null;if("unsupported"===r?.status)return null;const a=n.getFieldOptionSearch?.(e)??"",s=t&&"object"==typeof t?t:null,l=Array.isArray(r?.items)?r.items:[],o=[...s&&!l.some(e=>String(e.value)===String(s.value))?[s]:[],...l].map(e=>({type:"text",size:"1",text:String(e.label??e.value),value:String(e.value),selected:Boolean(s&&String(s.value)===String(e.value))}));return i.html`
|
|
412
412
|
<div class="sf-field-picker flex flex-col gap-1/3" data-field-picker=${e.key||i.nothing}>
|
|
413
413
|
<sf-dropdown
|
|
414
414
|
size=${H}
|
|
415
415
|
appearance="outlined"
|
|
416
416
|
mode="select"
|
|
417
417
|
search="true"
|
|
418
|
-
name=${
|
|
418
|
+
name=${J(e)}
|
|
419
419
|
?required=${Boolean(e.required)}
|
|
420
|
-
value=${
|
|
420
|
+
value=${s?String(s.value):""}
|
|
421
421
|
placeholder=${e.placeholder||Pe(n,"pickRecord")}
|
|
422
422
|
search-placeholder=${e.searchPlaceholder||Pe(n,"searchRecords")}
|
|
423
423
|
aria-label=${e.label||e.key||""}
|
|
424
424
|
.options=${o}
|
|
425
|
-
@change=${t=>(t=>{if(!t)return void n.setFieldValue(e,null);const r=[
|
|
425
|
+
@change=${t=>(t=>{if(!t)return void n.setFieldValue(e,null);const r=[s,...l].find(e=>e&&String(e.value)===String(t));n.setFieldValue(e,r?{value:r.value,label:r.label}:{value:t})})(t.detail?.value??null)}
|
|
426
426
|
@input=${t=>{const r=t.target?.value??"";n.setFieldOptionSearch?.(e,r),n.loadFieldOptions(e,{cursor:null,search:r})}}
|
|
427
427
|
></sf-dropdown>
|
|
428
428
|
${r?i.html`
|
|
@@ -432,19 +432,19 @@
|
|
|
432
432
|
</div>
|
|
433
433
|
${"error"===r.status?i.html`
|
|
434
434
|
<sf-button appearance="outline" size="1" text=${Pe(n,"retry")}
|
|
435
|
-
@click=${()=>n.loadFieldOptions(e,{cursor:null,search:
|
|
435
|
+
@click=${()=>n.loadFieldOptions(e,{cursor:null,search:a})}
|
|
436
436
|
></sf-button>
|
|
437
437
|
`:i.nothing}
|
|
438
438
|
${r.nextCursor&&"error"!==r.status?i.html`
|
|
439
439
|
<sf-button appearance="outline" size="1" text=${Pe(n,"loadMore")}
|
|
440
440
|
?disabled=${"loading"===r.status}
|
|
441
|
-
@click=${()=>n.loadFieldOptions(e,{cursor:r.nextCursor,search:
|
|
441
|
+
@click=${()=>n.loadFieldOptions(e,{cursor:r.nextCursor,search:a})}
|
|
442
442
|
></sf-button>
|
|
443
443
|
`:i.nothing}
|
|
444
444
|
</div>
|
|
445
445
|
`:i.nothing}
|
|
446
446
|
</div>
|
|
447
|
-
`}function
|
|
447
|
+
`}function Le(e,t){const n=Array.isArray(t)?t:[t],r=Array.isArray(e.options)?e.options:[];return n.filter(e=>null!=e&&""!==e).map(e=>{if("object"==typeof e)return{value:e.value,label:String(e.label??e.value??"")};const t=r.find(t=>String(t?.value)===String(e));return{value:e,label:String(t?.label??t?.text??e)}})}function Me(e,t,n){const r=!0===e.multiple,a=Array.isArray(e.options)&&e.options.length>0;if(!(a||n.loadFieldOptions&&n.getFieldOptionsPage))return null;const s=a?null:n.getFieldOptionsPage(e)||null;if("unsupported"===s?.status)return null;const l=a?"":n.getFieldOptionSearch?.(e)??"",o=Le(e,t),u=(a?e.options:Array.isArray(s?.items)?s.items:[]).filter(e=>e&&"object"==typeof e).map(e=>({value:e.value,label:String(e.label??e.text??e.value)})),c=e=>o.some(t=>String(t.value)===String(e.value)),d=[...o.filter(e=>!u.some(t=>String(t.value)===String(e.value))),...u].map(e=>({type:"text",size:"1",text:e.label,value:String(e.value),selected:c(e)})),p=[...o,...u],f=e=>{const t=p.find(t=>String(t.value)===String(e));return t?{value:t.value,label:t.label}:{value:e,label:String(e)}};return i.html`
|
|
448
448
|
<div class="sf-field-picker flex flex-col gap-1/3" data-field-picker=${e.key||i.nothing}>
|
|
449
449
|
<sf-dropdown
|
|
450
450
|
size=${H}
|
|
@@ -452,7 +452,7 @@
|
|
|
452
452
|
mode="select"
|
|
453
453
|
?multiple=${r}
|
|
454
454
|
search="true"
|
|
455
|
-
name=${
|
|
455
|
+
name=${J(e)}
|
|
456
456
|
?required=${Boolean(e.required)}
|
|
457
457
|
value=${r?i.nothing:o[0]?String(o[0].value):""}
|
|
458
458
|
placeholder=${e.placeholder||Pe(n,"pickFromList")}
|
|
@@ -460,42 +460,42 @@
|
|
|
460
460
|
aria-label=${e.label||e.key||""}
|
|
461
461
|
.options=${d}
|
|
462
462
|
@change=${t=>{if(r){const r=t.detail?.values??t.detail?.value,i=(Array.isArray(r)?r:r?[r]:[]).filter(e=>""!==e);return void n.setFieldValue(e,i.map(f))}const i=t.detail?.value??null;n.setFieldValue(e,null===i||""===i?null:f(i))}}
|
|
463
|
-
@input=${
|
|
463
|
+
@input=${a?i.nothing:t=>{const r=t.target?.value??"";n.setFieldOptionSearch?.(e,r),n.loadFieldOptions(e,{cursor:null,search:r})}}
|
|
464
464
|
></sf-dropdown>
|
|
465
|
-
${
|
|
465
|
+
${s?i.html`
|
|
466
466
|
<div class="sf-field-picker-state flex items-cross-center gap-1/3">
|
|
467
467
|
<div role="status" aria-live="polite" class="sf-text-1">
|
|
468
|
-
${"loading"!==
|
|
468
|
+
${"loading"!==s.status||s.quiet?"error"===s.status?Pe(n,"optionsError"):"":Pe(n,"loadingOptions")}
|
|
469
469
|
</div>
|
|
470
|
-
${"error"===
|
|
470
|
+
${"error"===s.status?i.html`
|
|
471
471
|
<sf-button appearance="outline" size="1" text=${Pe(n,"retry")}
|
|
472
|
-
@click=${()=>n.loadFieldOptions(e,{cursor:null,search:
|
|
472
|
+
@click=${()=>n.loadFieldOptions(e,{cursor:null,search:l})}
|
|
473
473
|
></sf-button>
|
|
474
474
|
`:i.nothing}
|
|
475
|
-
${
|
|
475
|
+
${s.nextCursor&&"error"!==s.status?i.html`
|
|
476
476
|
<sf-button appearance="outline" size="1" text=${Pe(n,"loadMore")}
|
|
477
|
-
?disabled=${"loading"===
|
|
478
|
-
@click=${()=>n.loadFieldOptions(e,{cursor:
|
|
477
|
+
?disabled=${"loading"===s.status}
|
|
478
|
+
@click=${()=>n.loadFieldOptions(e,{cursor:s.nextCursor,search:l})}
|
|
479
479
|
></sf-button>
|
|
480
480
|
`:i.nothing}
|
|
481
481
|
</div>
|
|
482
482
|
`:i.nothing}
|
|
483
483
|
</div>
|
|
484
|
-
`}function
|
|
484
|
+
`}function Ve(e){return Array.isArray(e)?e.filter(e=>e&&"object"==typeof e):e&&"object"==typeof e?[e]:[]}function Ie(e,t){return"image"===String(e.variant??"")&&!0!==e.multiple&&Ve(t).length<=1}function Be(e,t,n){const r=Ve(t)[0]??null,a=Array.isArray(t);return i.html`
|
|
485
485
|
<sf-input-image
|
|
486
486
|
size=${H}
|
|
487
|
-
name=${
|
|
487
|
+
name=${J(e)}
|
|
488
488
|
accept=${e.accept?String(e.accept):i.nothing}
|
|
489
489
|
hint=${e.uploadSupportingText||i.nothing}
|
|
490
490
|
.value=${r}
|
|
491
491
|
aria-label=${e.label||e.key||""}
|
|
492
492
|
?required=${Boolean(e.required)}
|
|
493
493
|
?disabled=${!0===e.readonly}
|
|
494
|
-
@change=${t=>{const r=t.detail?.value??null;n.setFieldValue(e,
|
|
494
|
+
@change=${t=>{const r=t.detail?.value??null;n.setFieldValue(e,a?r?[r]:[]:r);const i=t.detail?.file;i&&n.startFieldUpload&&n.startFieldUpload(e,[{name:i.name,state:"process",progress:0,file:i}])}}
|
|
495
495
|
></sf-input-image>
|
|
496
|
-
`}function
|
|
496
|
+
`}function Re(e,t,n){if(Ie(e,t))return Be(e,t,n);const r=Ve(t),a=!0===e.multiple||Array.isArray(t),s=Boolean(n.startFieldUpload&&n.getFieldUploads),l=s?n.getFieldUploads(e):null,o=Array.isArray(l)?l:[];return i.html`
|
|
497
497
|
<div class="sf-field-file flex flex-col">
|
|
498
|
-
${r.map((t,
|
|
498
|
+
${r.map((t,s)=>i.html`
|
|
499
499
|
<sf-file-preview
|
|
500
500
|
file-name=${String(t.label??t.name??"File")}
|
|
501
501
|
file-size=${String(t.size??"")}
|
|
@@ -505,20 +505,20 @@
|
|
|
505
505
|
download-action=${t.href?"true":"false"}
|
|
506
506
|
remove-action="true"
|
|
507
507
|
remove-label=${`${Pe(n,"removeFile")} ${t.label??t.name??""}`.trim()}
|
|
508
|
-
@sf-file-preview-detach=${()=>(t=>{const i=r.filter((e,n)=>n!==t);n.setFieldValue(e,
|
|
508
|
+
@sf-file-preview-detach=${()=>(t=>{const i=r.filter((e,n)=>n!==t);n.setFieldValue(e,a?i:i[0]??null)})(s)}
|
|
509
509
|
></sf-file-preview>
|
|
510
510
|
`)}
|
|
511
511
|
|
|
512
|
-
${
|
|
512
|
+
${s?i.html`
|
|
513
513
|
<sf-file-upload
|
|
514
514
|
size=${H}
|
|
515
|
-
name=${
|
|
515
|
+
name=${J(e)}
|
|
516
516
|
accept=${String(e.accept??"")}
|
|
517
517
|
formats=${String(e.formats??"")}
|
|
518
518
|
link-text=${e.uploadText||i.nothing}
|
|
519
519
|
text=${e.uploadHint||i.nothing}
|
|
520
520
|
supporting-text=${e.uploadSupportingText||i.nothing}
|
|
521
|
-
?multiple=${
|
|
521
|
+
?multiple=${a}
|
|
522
522
|
?disabled=${!0===e.readonly}
|
|
523
523
|
aria-label=${e.label||e.key||""}
|
|
524
524
|
.items=${o}
|
|
@@ -527,12 +527,12 @@
|
|
|
527
527
|
></sf-file-upload>
|
|
528
528
|
`:i.nothing}
|
|
529
529
|
</div>
|
|
530
|
-
`}const
|
|
530
|
+
`}const Ue=e=>"1/2"===e?.size?"1/2":"1",De=(e,t)=>"choice"===e&&Te(t);let We=!1;function Ke(e={},t,n,r={}){const i=e.propertyType||e.type||e.dataType,a=!0===r?.disabled;if((!0===e.readonly||a)&&ot[i]&&!De(i,e))return ut(e,t,n,r);const s=G[i];if(!s||!n?.setFieldValue)return null;const l=H,o=We;H=Ue(r),We=a;try{return s(e,t,n)}finally{H=l,We=o}}let He="1";function Ge(e){return Boolean(e)&&"object"==typeof e&&!Array.isArray(e)&&"string"==typeof e.text}function Je(e){return Ge(e)?e.value:e}function Ye(e,t,n){const r=n?.formatFieldValue?.(e,t);if("string"==typeof r)return r;if(Ge(t))return t.text;const i=Je(t);return null==i?"":String(i)}function Ze(e,t,n){const r=Ye(e,t,n);return r?i.html`<span class="sf-field-view">${r}</span>`:i.nothing}function Qe(e,t){const n=(0,d.b)(t);return n?i.html`<div class="sf-field-view sf-field-html">${(0,a.unsafeHTML)(n)}</div>`:i.nothing}function Xe(e,t,n){if(null==t||""===t)return i.nothing;const r=e.variant||e.filter?.variant,a=Number(Je(t));if("scale"===r&&Number.isFinite(a)&&a>=0&&a<=100)return i.html`<sf-progress-scale size="1" value=${String(a)}></sf-progress-scale>`;const s=Ye(e,t,n);return i.html`<span class="sf-field-view">${e.unit?`${s} ${e.unit}`:s}</span>`}function et(e,t,n){const r=Ye(e,t,n);return r?i.html`<span class="sf-field-view">${r}</span>`:i.nothing}function tt(e,t,n){if("boolean"!=typeof t)return i.nothing;const r=C(e,n);return i.html`<span class="sf-field-view">${t?r.yes:r.no}</span>`}function nt(e,t){const n=e.options||e.filter?.options||e.constraints?.options,r=Array.isArray(n)?n.find(e=>String(e?.value)===String(t)):null;if(!r)return i.nothing;const a=(0,s.f)(r);return i.html`
|
|
531
531
|
<sf-badge
|
|
532
532
|
line=${He}
|
|
533
|
-
appearance=${e.badgeAppearance??
|
|
534
|
-
scheme=${
|
|
535
|
-
style=${
|
|
533
|
+
appearance=${e.badgeAppearance??F}
|
|
534
|
+
scheme=${a.scheme}
|
|
535
|
+
style=${a.rootStyle||i.nothing}
|
|
536
536
|
text=${String(r.label??r.text??t)}
|
|
537
537
|
></sf-badge>
|
|
538
538
|
`}function rt(e,t){if(!Array.isArray(t)||!t.length)return i.nothing;const n=e.options||e.filter?.options||e.constraints?.options;return i.html`
|
|
@@ -545,7 +545,7 @@
|
|
|
545
545
|
${t.href?i.html`<sf-reference-link appearance="plain" icon="" line=${He}
|
|
546
546
|
label=${String(t.label)} href=${String(t.href)}></sf-reference-link>`:i.html`<span>${String(t.label)}</span>`}
|
|
547
547
|
</span>
|
|
548
|
-
`:i.nothing}function
|
|
548
|
+
`:i.nothing}function at(e,t){return t&&"object"==typeof t&&t.label?i.html`
|
|
549
549
|
<sf-reference-link
|
|
550
550
|
appearance="plain"
|
|
551
551
|
icon=""
|
|
@@ -553,12 +553,12 @@
|
|
|
553
553
|
label=${String(t.label)}
|
|
554
554
|
href=${t.href?String(t.href):i.nothing}
|
|
555
555
|
></sf-reference-link>
|
|
556
|
-
`:i.nothing}function
|
|
556
|
+
`:i.nothing}function st(e,t){const n=Le(e,t);return n.length?1===n.length&&!0!==e.multiple?i.html`<span class="sf-field-view">${n[0].label}</span>`:i.html`
|
|
557
557
|
<span class="sf-field-view flex flex-wrap items-cross-center gap-1/3 min-w-0">
|
|
558
558
|
${n.map(e=>i.html`<sf-tag root-class="flex-none" line=${He} kind="default" text=${e.label}></sf-tag>`)}
|
|
559
559
|
</span>
|
|
560
|
-
`:i.nothing}function
|
|
561
|
-
<span class="sf-field-view flex ${
|
|
560
|
+
`:i.nothing}function lt(e,t){const n=Ve(t);if(!n.length)return i.nothing;const r=ae(e),a="image-card"===String(e.variant??"");return i.html`
|
|
561
|
+
<span class="sf-field-view flex ${a?"flex-row":"flex-col"} gap-1/3">
|
|
562
562
|
${n.map(e=>i.html`
|
|
563
563
|
<sf-file-preview
|
|
564
564
|
file-name=${String(e.label??e.name??"File")}
|
|
@@ -573,25 +573,25 @@
|
|
|
573
573
|
></sf-file-preview>
|
|
574
574
|
`)}
|
|
575
575
|
</span>
|
|
576
|
-
`}const ot={string:re,text:Qe,html:Xe,integer:Ze,number:Ze,date:et,datetime:et,time:et,boolean:tt,choice:nt,choices:rt,user:it,record:lt,relation:lt,lookup:at,file:st,color:q,include:ae};function ut(e={},t,n,r={}){const i=e.propertyType||e.type||e.dataType,l=ot[i];if(!l)return null;const a=He;He=Re(r);try{return l(e,t,n)}finally{He=a}}"undefined"!=typeof window&&(window.SF=window.SF||{},window.SF.fieldRenderers={...window.SF.fieldRenderers||{},renderCellField:K,renderEditField:Ke,renderFilterField:k,renderViewField:ut,FILTER_RENDERERS:x,dateTime:{split:u.AC,compose:u.cy,normalizeTime:u.d2,splitTime:u.SB,composeTime:u.MC},registry:o.u.map(e=>{return{...e,modes:(t=e.type,(0,o.U)(t,{view:ot,edit:Y,cell:P,filter:x}))};var t})},globalThis.document?.dispatchEvent?.(new CustomEvent("sf-field-renderers-ready"))),r()}catch(ct){r(ct)}})},dd6973f77245(e,t,n){n.d(t,{$:()=>s,C:()=>o});const r={0:"\\d",a:"\\p{L}","*":"[\\s\\S]"},i={0:e=>/\d/u.test(e),a:e=>/\p{L}/u.test(e),"*":()=>!0},l=e=>e.replace(/[\\^$.*+?()[\]{}|/]/gu,"\\$&");const a=new Map;function s(e){const t=e?.mask;return"string"==typeof t&&""!==t?t:null}function o(e,t,n="_"){const s=String(e??"");a.has(t)||a.set(t,function(e){let t="";const n=[];for(let a=0;a<e.length;a+=1){const s=e[a];"\\"===s?(a+=1,a<e.length&&(t+=l(e[a]),n.push({fixed:e[a]}))):"{"===s||"}"===s||"["===s||"]"===s||(r[s]?(t+=r[s],n.push({test:i[s]})):(t+=l(s),n.push({fixed:s})))}return{complete:new RegExp(`^${t}$`,"u"),tokens:n}}(t));const{complete:o,tokens:u}=a.get(t);return o.test(s)?"complete":0===function(e,t,n){let r=0,i=0;for(const l of e){for(;i<t.length&&void 0!==t[i].fixed&&t[i].fixed!==l;)i+=1;if(i>=t.length)break;const e=t[i];void 0!==e.fixed||l===n?i+=1:e.test(l)&&(r+=1,i+=1)}return r}(s,u,n)?"empty":"incomplete"}},fc654eb7fab0(e,t,n){n.d(t,{U:()=>i});const r=Object.freeze([{type:"string",label:{ru:"Строка",en:"String"},variants:[{id:"phone",label:{ru:"Телефон",en:"Phone"}},{id:"password",label:{ru:"Пароль",en:"Password"},writeOnly:!0}],params:["placeholder","mask","nullable","required","readonly"]},{type:"text",label:{ru:"Текст",en:"Text"},variants:[],params:["placeholder","required","readonly"]},{type:"html",label:{ru:"Форматированный текст",en:"Formatted text"},variants:[],params:["placeholder","required","readonly"]},{type:"integer",label:{ru:"Целое число",en:"Integer"},variants:[{id:"stepper",label:{ru:"Кнопками «−» и «+»",en:"With steppers"}}],params:["unit","min","max","step","required","readonly"]},{type:"number",label:{ru:"Число",en:"Number"},variants:[{id:"scale",label:{ru:"Шкала 0–100",en:"Scale 0–100"}},{id:"stepper",label:{ru:"Кнопками «−» и «+»",en:"With steppers"}}],params:["unit","min","max","step","precision","required","readonly"]},{type:"date",label:{ru:"Дата",en:"Date"},variants:[],params:["required","readonly"]},{type:"datetime",label:{ru:"Дата и время",en:"Date and time"},variants:[],params:["min","max","step","required","readonly"]},{type:"time",label:{ru:"Время",en:"Time"},variants:[],params:["min","max","step","required","readonly"]},{type:"boolean",label:{ru:"Да или нет",en:"Yes or no"},variants:[],params:["trueText","falseText","required","readonly"]},{type:"choice",label:{ru:"Одно из списка",en:"One of a list"},variants:[{id:"buttons",label:{ru:"Кнопками",en:"As buttons"}}],params:["options","badgeAppearance","size","required","readonly"]},{type:"choices",label:{ru:"Несколько из списка",en:"Several of a list"},variants:[{id:"badges",label:{ru:"Значками",en:"As badges"}},{id:"checklist",label:{ru:"Флажками",en:"As a checklist"}},{id:"select",label:{ru:"Выпадающим списком",en:"As a dropdown"}}],params:["options","badgeAppearance","required","readonly"]},{type:"user",label:{ru:"Пользователь",en:"User"},variants:[],params:["placeholder","searchPlaceholder","required","readonly"]},{type:"record",label:{ru:"Запись",en:"Record"},variants:[],params:["placeholder","searchPlaceholder","required","readonly"]},{type:"relation",label:{ru:"Связь",en:"Relation"},variants:[],params:["placeholder","searchPlaceholder","required","readonly"]},{type:"lookup",label:{ru:"Из справочника",en:"From a reference list"},variants:[],params:["options","multiple","placeholder","searchPlaceholder","required","readonly"]},{type:"file",label:{ru:"Файл",en:"File"},variants:[{id:"image",label:{ru:"Изображение",en:"Image"}},{id:"image-card",label:{ru:"Изображение карточкой",en:"Image card"}},{id:"image-list",label:{ru:"Изображения списком",en:"Image list"}}],params:["accept","multiple","formats","uploadText","uploadSupportingText","uploadHint","required","readonly"]},{type:"color",label:{ru:"Цвет",en:"Colour"},variants:[],params:["swatches","required","readonly"]},{type:"include",label:{ru:"Код",en:"Code"},variants:[],params:["language","required","readonly"]}]);function i(e,t){return{view:Boolean(t.view?.[e]),edit:Boolean(t.edit?.[e]),cell:t.cell?.[e]?"own":"text",filter:t.filter?.[e]?"own":"text"}}n.d(t,["u",0,r])},adbddb2f4d35(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{IY:()=>p});var i=n("2a080a730149"),l=n("5b7d7695b41b"),a=n("e92fd2d1a38c"),s=n("e577837dd70a"),o=e([i,l,a,s]);[i,l,a,s]=o.then?(await o)():o;const u=Object.freeze(["open","pending","accepted","declined","expired"]),c=864e5,d=Object.freeze({open:"schedule",pending:"schedule",accepted:"check_circle",declined:"cancel",expired:"timer_off"});function p(e,{kind:t,block:n,answerId:r="answerId"}={}){return class extends e{constructor(){super(),this._pressed=null,this._timer=null,this._expiredSaid=!1,this._asks=[]}get state(){const e=this.getAttribute("state");return u.includes(e)?e:"open"}set state(e){this.setAttribute("state",u.includes(e)?e:"open")}get expired(){if("expired"===this.state)return!0;if("open"!==this.state)return!1;const e=Date.parse(this.getAttribute("expires-at")||"");return Number.isFinite(e)&&Date.now()>=e}get shownState(){return this.expired?"expired":this.state}get headingId(){return(0,a.partId)((0,a.instancePath)(this,{kind:t}),"heading")}get questionKey(){return this[r]??""}formatTime(e){const t=0===(0,s.Yz)(e);return(0,s.Yq)(e,{node:this,intl:t?{hour:"2-digit",minute:"2-digit"}:{day:"numeric",month:"long",hour:"2-digit",minute:"2-digit"}})}statusText(e){if("pending"===e)return this.sfWord(!1===this._pressed?"declining-text":"accepting-text");if("accepted"===e)return this.sfWord("accepted-text");if("declined"===e)return this.sfWord("declined-text");if("expired"===e)return this.sfWord("expired-text");const t=this.getAttribute("expires-at"),n=t?this.formatTime(t):"";return n?this.sfWord("until-text",{vars:{time:n}}):""}confirmContext(){const e=this.shownState;return{component:this,state:e,headingId:this.headingId,heading:this.getProp("heading"),headingLevel:this.getProp("headingLevel"),hasDescription:this.hasSlotContent("description"),descriptionContent:this.hasSlotContent("description")?this.getSlotContent("description"):null,acceptText:this.getProp("acceptText")||this.sfWord("accept-text"),declineText:this.getProp("declineText")||this.sfWord("decline-text"),statusText:this.statusText(e),statusIcon:d[e]??"schedule",open:"open"===e,pending:"pending"===e,pressed:"pending"===e?this._pressed:null,answersLocked:this.getProp("disabled")||"open"!==e}}onConnected(){super.onConnected?.(),this.schedule()}onDisconnected(){clearTimeout(this._timer),this._timer=null,super.onDisconnected?.()}attributeChangedCallback(e,t,n){super.attributeChangedCallback?.(e,t,n),"state"===e&&"pending"!==n&&(this._pressed=null),"state"!==e&&"expires-at"!==e||("expires-at"!==e&&"open"!==n||(this._expiredSaid=!1),this.schedule())}schedule(){if(clearTimeout(this._timer),this._timer=null,!this.isConnected||"open"!==this.state)return;const e=Date.parse(this.getAttribute("expires-at")||"");if(!Number.isFinite(e))return;const t=e-Date.now();t<=0?this.expire():this._timer=setTimeout(()=>{this._timer=null,Date.now()>=e?this.expire():this.schedule()},Math.min(t+50,c))}expire(){this.requestComponentUpdate("expired"),this.settleAsks({accepted:!1,reason:"expired"}),this._expiredSaid||(this._expiredSaid=!0,this.sfEmit("expired",{id:this.questionKey}))}open(...e){const{signal:t}=e[1]??{};return"open"!==this.state&&(this.state="open"),t?this.waitForAnswer(t):(0,l.applied)()}answer(e={}){const t=this.readAnswer(e);if(null===t)return(0,l.refused)("unknown");if("open"!==this.shownState)return(0,l.refused)("closed");if(this.getProp("disabled"))return(0,l.refused)("disabled");const n=this.contains(this.ownerDocument.activeElement);this._pressed=t,this.setAttribute("state","pending");const r=this.sfEmit("answer",{id:this.questionKey,accepted:t});return r?this.settleAsks({accepted:t,reason:t?"close":"cancelled"}):(this._pressed=null,this.setAttribute("state","open")),n&&this.whenRendered(()=>this.focusStatus(),{next:!0}),r?(0,l.applied)():(0,l.refused)("prevented")}confirm(){return this.answer({accepted:!0})}cancel(){return this.answer({accepted:!1})}readAnswer(e){return e&&"object"==typeof e&&"boolean"==typeof e.accepted?e.accepted:null}waitForAnswer(e){return new Promise(t=>{const n={resolve:t};this._asks.push(n),e?.addEventListener?.("abort",()=>{this._asks=this._asks.filter(e=>e!==n),t({outcome:"cancelled"})},{once:!0})})}settleAsks({accepted:e,reason:t}){const n=this._asks;this._asks=[];for(const r of n)r.resolve({outcome:"applied",value:{accepted:e,reason:t,value:null}})}focusStatus(){const e=this.querySelector(`.${n}__status`);if(!e)return;const t=this.querySelector(`.${n}__actions:not([hidden])`);t&&"open"===this.state?t.querySelector("button")?.focus():e.focus({preventScroll:!0})}}}r()}catch(f){r(f)}})},"5961360f41f4"(e,t,n){n.d(t,{f:()=>u});const r=Object.freeze(["main","tonal","outline"]),i=Object.freeze(["neutral","primary","secondary","tertiary","info","success","warning","error","on-surface"]),l=Object.freeze({danger:"error"}),a=Object.freeze(["1/3","1/2","1"]);function s(e){const t=String(e??"").trim().toLowerCase(),n=l[t]??t;return i.includes(n)?n:""}Object.freeze(i.flatMap(e=>r.filter(t=>!("on-surface"===e&&"tonal"===t)).flatMap(t=>a.map(n=>Object.freeze({type:t,scheme:e,size:n})))));const o=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;function u(e={}){const t=e?.scheme??e?.color,n="string"==typeof t?t.trim():"",r=s(n);return r?{scheme:r,rootStyle:""}:o.test(n)?{scheme:"neutral",rootStyle:`--sf-badge--background-color: color-mix(in srgb, ${n} 24%, transparent); --sf-badge--color: var(--sf-on-surface)`}:{scheme:"neutral",rootStyle:""}}},"9b9c0908a676"(e,t,n){n.a(e,async(e,t)=>{try{var r=n("deb1a4d61565"),i=n("5b7d7695b41b"),l=n("adbddb2f4d35"),a=n("2f31b00ad99a"),s=n("e430f71c6bbc"),o=n("3062cb94471f"),u=n("e4c87bda9c30"),c=n("d69a23bed94c"),d=n("09c52c5644c7"),p=e([r,i,l,a,s]);[r,i,l,a,s]=p.then?(await p)():p;var f=n.n(r);const h=(0,i.elementFromManifest)(u,{base:f(),lang:{en:c,ru:d},source:"ru"}),m=(0,l.IY)(h,{kind:"sf-view-flow",block:"sf-view-flow",answerId:"blockId"}),g="input:not([type=hidden]):not([disabled]), textarea:not([disabled]), select:not([disabled]), [contenteditable=true], button:not([disabled]), [tabindex]:not([tabindex='-1'])",b=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);class y extends m{static get props(){return{...super.props,templateName:{attribute:"template",default:"default"},fields:{attribute:"fields",type:Array,default:[]},groups:{attribute:"groups",type:Array,default:[]}}}constructor(){super(),this._fields=null,this._groups=null,this._formatter=null,this._changed=new Map,this._errors=new Map,this._inputErrors=new Map,this._controlErrors=new Set,this._message="",this._toggled=new Map,this._sent=null,this._answered=null,this._answer=null;for(const e of["fields","groups","formatFieldValue"]){if(!b(this,e))continue;const t=this[e];delete this[e],this[e]=t}}get fields(){const e=this._fields??this.getProp("fields");return Array.isArray(e)?e:[]}set fields(e){this._fields=Array.isArray(e)?e.map(e=>({...e})):null,this.requestComponentUpdate("fields")}get groups(){const e=this._groups??this.getProp("groups");return Array.isArray(e)?e:[]}set groups(e){this._groups=Array.isArray(e)?e.map(e=>({...e})):null,this.requestComponentUpdate("groups")}get formatFieldValue(){return this._formatter}set formatFieldValue(e){this._formatter="function"==typeof e?e:null,this._viewHost=null,this.requestComponentUpdate("format")}get mode(){return"edit"===this.getAttribute("mode")?"edit":"view"}set mode(e){this.setAttribute("mode","edit"===e?"edit":"view")}get blockGroups(){return(0,o.c1)({fields:this.fields,groups:this.groups})}get values(){return(0,o.nd)(this.blockGroups,this._changed)}get viewHost(){return this._viewHost||(this._viewHost={formatFieldValue:(e,t)=>{const n=this._formatter?.(e,t);if("string"==typeof n)return n;const r=e?.propertyType??e?.property_type??e?.type??e?.dataType;return(0,a.x)(r,t,this)||void 0}}),this._viewHost}changeField(e,t){const n=String(e?.key??"");if(!n)return this;const r=Object.hasOwn(e??{},"value")&&void 0!==t&&JSON.stringify(t)===JSON.stringify(e.value??null);return void 0===t||r?this._changed.delete(n):this._changed.set(n,t),this._errors.delete(n),this._message="",this.requestComponentUpdate("changed"),this}reportFieldError(e,t){const n=String(e?.key??"");if(!n)return this;const r=this._inputErrors.get(n);return t?(this._inputErrors.set(n,String(t)),this._controlErrors.add(n)):this._controlErrors.has(n)&&(this._inputErrors.delete(n),this._controlErrors.delete(n)),this._inputErrors.get(n)!==r&&this.requestComponentUpdate("errors"),this}openReference(e,t){this.sfEmit("open",{id:this.questionKey,field:String(e?.key??""),value:t})}toggleGroup(e){const t=this.blockGroups.find(t=>t.key===e);t?.collapsible&&(this._toggled.set(e,!this.groupCollapsed(t)),this.requestComponentUpdate("groups"))}groupCollapsed(e){return!!e.collapsible&&(!e.fields.some(e=>this._errors.has(String(e.key))||this._inputErrors.has(String(e.key)))&&(this._toggled.has(e.key)?this._toggled.get(e.key):e.collapsed))}answer(e={}){const t=this.readAnswer(e);if(null!==t&&"edit"!==this.mode)return(0,i.refused)("view");if(!0===t&&"open"===this.shownState&&!this.getProp("disabled")){const e=this.blockGroups,t=(0,o.co)(e,this._changed);if(t.length||this._inputErrors.size){const e=this.getProp("requiredText")||this.sfWord("required-text");for(const n of t)this._errors.set(n,e);return this._message=this.getProp("invalidText")||this.sfWord("invalid-text"),this.requestComponentUpdate("errors"),this.whenRendered(()=>this.focusField(t[0]??[...this._inputErrors.keys()][0]),{next:!0}),(0,i.refused)("invalid")}this._sent=(0,o.nd)(e,this._changed),this._message=""}return null!==t&&(this._answer=t),super.answer(e)}sfEmit(e,t={},n){return"answer"===e&&!0===t?.accepted?super.sfEmit(e,{...t,values:{...this._sent??{}}},n):super.sfEmit(e,t,n)}settle(e={}){if("edit"!==this.mode)return(0,i.refused)("view");const t=e&&"object"==typeof e&&"result"in e&&1===Object.keys(e).length?e.result:e,n=(0,o.Qo)(t,{accepted:!1!==this._answer}),r=this.contains(this.ownerDocument.activeElement);this._errors=new Map(Object.entries(n.errors)),this._message=n.message,"accepted"===n.state&&(this._answered=n.values??this._sent??null),this.requestComponentUpdate("settled"),this.setAttribute("state",n.state);const l=Object.keys(n.errors)[0];return"open"===n.state&&l?this.whenRendered(()=>this.focusField(l),{next:!0}):r&&this.whenRendered(()=>this.focusStatus(),{next:!0}),"open"===n.state?(0,i.refused)(n.errors&&l?"invalid":"refused"):(0,i.applied)()}statusText(e){return"open"===e&&this._message?this._message:super.statusText(e)}focusField(e){if(null==e)return;const t=this.querySelector(`.sf-view-flow__field[data-field="${CSS.escape(String(e))}"]`);if(!t)return;const n=t.querySelector(g);(n??t).focus?.({preventScroll:!1})}shownValue(e){const t=String(e.key);return this._answered&&Object.hasOwn(this._answered,t)?this._answered[t]:this._changed.has(t)?this._changed.get(t):e.value}templateContext(){const e=this.confirmContext(),t=this.mode,n=e.state,r="edit"===t&&("open"===n||"pending"===n),i=this._inputErrors.size?new Map([...this._errors,...this._inputErrors]):this._errors;return{...e,mode:t,editing:r,fieldsShown:"view"===t||r||"accepted"===n,footShown:"edit"===t,fieldsLocked:r&&("pending"===n||Boolean(this.getProp("disabled"))),groups:this.blockGroups,changed:this._changed,errors:i,controlErrors:this._controlErrors,size:"1"===this.getProp("size")?"1":"1/2",viewHost:this.viewHost,emptyText:this.getProp("emptyText")||this.sfWord("empty-text"),blockLabel:this.sfWord("block-label"),submitText:this.getProp("submitText")||this.sfWord("submit-text"),cancelText:this.getProp("cancelText")||this.sfWord("cancel-text"),cancelable:!1!==this.getProp("cancelable"),statusIcon:"open"===n&&this._message?"error":e.statusIcon,statusError:"open"===n&&Boolean(this._message),canPickRecords:!1,canUploadFiles:!1}}template(){return(0,s.O)(this.templateContext())}}y.define("sf-view-flow"),t()}catch(e){t(e)}})},"3062cb94471f"(e,t,n){n.d(t,{Tz:()=>u,nd:()=>b,t4:()=>p,Vb:()=>f,c1:()=>o,co:()=>g,Qo:()=>v,b0:()=>d,qf:()=>c});const r=Object.freeze(["eq","ne","in","not_in","empty","not_empty"]),i=e=>e&&"object"==typeof e&&!Array.isArray(e)&&"value"in e?e.value:e;function l(e,t){if(!e||"object"!=typeof e||Array.isArray(e))return null;for(const n of["all","any"]){if(!(n in e))continue;const r=e[n];if(!Array.isArray(r)||!r.length)return null;const i=r.map(e=>l(e,t));return i.includes(null)?null:"all"===n?i.every(Boolean):i.some(Boolean)}if("not"in e){const n=l(e.not,t);return null===n?null:!n}if("string"!=typeof e.field||!r.includes(e.op))return null;const n=(a=t.get(e.field),(Array.isArray(a)?a:[a]).map(i).filter(e=>null!=e&&""!==e).map(e=>String(e)));var a;if("empty"===e.op)return 0===n.length;if("not_empty"===e.op)return n.length>0;if("eq"===e.op||"ne"===e.op){const t=n.includes(String(i(e.value)));return"eq"===e.op?t:!t}if(!Array.isArray(e.value))return null;const s=e.value.map(e=>String(i(e))),o=n.some(e=>s.includes(e));return"in"===e.op?o:!o}function a(e,t){const n=e?.when&&"object"==typeof e.when?e.when:null,r=e=>n&&e in n?l(n[e],t):null,i=r("visible"),a=r("required"),s=r("enabled");return{visible:i??!0,required:a??!0===e?.required,enabled:s??!0}}const s=e=>e&&void 0!==e.key&&null!==e.key?String(e.key):"";function o({fields:e=[],groups:t=[]}={}){return(Array.isArray(t)&&t.length?t:[{key:"",label:"",fields:Array.isArray(e)?e:[]}]).filter(e=>e&&"object"==typeof e).map((e,t)=>({key:void 0!==e.key&&null!==e.key&&""!==String(e.key)?String(e.key):`group-${t+1}`,label:e.label?String(e.label):"",collapsible:!0===e.collapsible&&Boolean(e.label),collapsed:!0===e.collapsible&&Boolean(e.label)&&!0===e.collapsed,fields:(Array.isArray(e.fields)?e.fields:[]).filter(e=>e&&"object"==typeof e&&s(e))}))}function u(e){return e.flatMap(e=>e.fields)}function c(e,t=new Map){const n=new Map;for(const r of u(e)){const e=s(r);n.set(e,t.has(e)?t.get(e):r.value)}return n}function d(e,t){return(e??[]).filter(e=>!0!==e.hidden&&(!e.when||a(e,t).visible))}function p(e,t){if(!e?.when)return e;const n=a(e,t);return{...e,required:n.required,readonly:!0===e.readonly||!n.enabled}}function f(e,t){return Boolean(e?.when)&&!a(e,t).enabled}function h(e){return null==e||("string"==typeof e?""===e.trim():Array.isArray(e)?0===e.length:"object"==typeof e&&"value"in e&&h(e.value))}function m(e,t){return e.flatMap(e=>d(e.fields,t)).map(e=>p(e,t)).filter(e=>!0!==e.readonly)}function g(e,t=new Map){const n=c(e,t);return m(e,n).filter(e=>!0===e.required&&h(n.get(s(e)))).map(s)}function b(e,t=new Map){const n=c(e,t);return Object.fromEntries(m(e,n).map(e=>{const t=n.get(s(e));return[s(e),void 0===t?null:t]}))}const y=new Set(["closed","expired"]);function v(e,{accepted:t=!0}={}){const n=e?.answer,r="string"==typeof e?.message&&e.message.trim()?e.message:"";if("applied"===n){return{state:t?"accepted":"declined",errors:{},message:"",values:e.values&&"object"==typeof e.values&&!Array.isArray(e.values)?{...e.values}:null}}if("refused"===n&&y.has(e?.reason))return{state:"expired",errors:{},message:r,values:null};return{state:"open",errors:e?.errors&&"object"==typeof e.errors&&!Array.isArray(e.errors)?Object.fromEntries(Object.entries(e.errors).filter(([,e])=>"string"==typeof e&&e.trim())):{},message:r,values:null}}},e430f71c6bbc(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{O:()=>d});var i=n("2a080a730149"),l=n("62c5c417c97d"),a=n("3062cb94471f"),s=e([i,l]);[i,l]=s.then?(await s)():s;function o(e,t){const n=String(t.key),r=e.values,s=e.editing,o=s&&(0,a.Vb)(t,r),u=s?(0,a.t4)(t,r):{...t,value:e.component.shownValue(t)},c=e.controlErrors.has(n)?null:e.errors.get(n),d="full"===t.width?"full":"half";return i.html`
|
|
576
|
+
`}const ot={string:re,text:Ze,html:Qe,integer:Xe,number:Xe,date:et,datetime:et,time:et,boolean:tt,choice:nt,choices:rt,user:it,record:at,relation:at,lookup:st,file:lt,color:z,include:se};function ut(e={},t,n,r={}){const i=e.propertyType||e.type||e.dataType,a=ot[i];if(!a)return null;const s=He;He=Ue(r);try{return a(e,t,n)}finally{He=s}}"undefined"!=typeof window&&(window.SF=window.SF||{},window.SF.fieldRenderers={...window.SF.fieldRenderers||{},renderCellField:K,renderEditField:Ke,renderFilterField:k,renderViewField:ut,FILTER_RENDERERS:x,dateTime:{split:u.AC,compose:u.cy,normalizeTime:u.d2,splitTime:u.SB,composeTime:u.MC},registry:o.u.map(e=>{return{...e,modes:(t=e.type,(0,o.U)(t,{view:ot,edit:G,cell:P,filter:x}))};var t})},globalThis.document?.dispatchEvent?.(new CustomEvent("sf-field-renderers-ready"))),r()}catch(ct){r(ct)}})},dd6973f77245(e,t,n){n.d(t,{$:()=>l,C:()=>o});const r={0:"\\d",a:"\\p{L}","*":"[\\s\\S]"},i={0:e=>/\d/u.test(e),a:e=>/\p{L}/u.test(e),"*":()=>!0},a=e=>e.replace(/[\\^$.*+?()[\]{}|/]/gu,"\\$&");const s=new Map;function l(e){const t=e?.mask;return"string"==typeof t&&""!==t?t:null}function o(e,t,n="_"){const l=String(e??"");s.has(t)||s.set(t,function(e){let t="";const n=[];for(let s=0;s<e.length;s+=1){const l=e[s];"\\"===l?(s+=1,s<e.length&&(t+=a(e[s]),n.push({fixed:e[s]}))):"{"===l||"}"===l||"["===l||"]"===l||(r[l]?(t+=r[l],n.push({test:i[l]})):(t+=a(l),n.push({fixed:l})))}return{complete:new RegExp(`^${t}$`,"u"),tokens:n}}(t));const{complete:o,tokens:u}=s.get(t);return o.test(l)?"complete":0===function(e,t,n){let r=0,i=0;for(const a of e){for(;i<t.length&&void 0!==t[i].fixed&&t[i].fixed!==a;)i+=1;if(i>=t.length)break;const e=t[i];void 0!==e.fixed||a===n?i+=1:e.test(a)&&(r+=1,i+=1)}return r}(l,u,n)?"empty":"incomplete"}},fc654eb7fab0(e,t,n){n.d(t,{U:()=>i});const r=Object.freeze([{type:"string",label:{ru:"Строка",en:"String"},variants:[{id:"phone",label:{ru:"Телефон",en:"Phone"}},{id:"password",label:{ru:"Пароль",en:"Password"},writeOnly:!0}],params:["placeholder","mask","nullable","required","readonly"]},{type:"text",label:{ru:"Текст",en:"Text"},variants:[],params:["placeholder","required","readonly"]},{type:"html",label:{ru:"Форматированный текст",en:"Formatted text"},variants:[],params:["placeholder","required","readonly"]},{type:"integer",label:{ru:"Целое число",en:"Integer"},variants:[{id:"stepper",label:{ru:"Кнопками «−» и «+»",en:"With steppers"}}],params:["unit","min","max","step","required","readonly"]},{type:"number",label:{ru:"Число",en:"Number"},variants:[{id:"scale",label:{ru:"Шкала 0–100",en:"Scale 0–100"}},{id:"stepper",label:{ru:"Кнопками «−» и «+»",en:"With steppers"}}],params:["unit","min","max","step","precision","required","readonly"]},{type:"date",label:{ru:"Дата",en:"Date"},variants:[],params:["required","readonly"]},{type:"datetime",label:{ru:"Дата и время",en:"Date and time"},variants:[],params:["min","max","step","required","readonly"]},{type:"time",label:{ru:"Время",en:"Time"},variants:[],params:["min","max","step","required","readonly"]},{type:"boolean",label:{ru:"Да или нет",en:"Yes or no"},variants:[],params:["trueText","falseText","required","readonly"]},{type:"choice",label:{ru:"Одно из списка",en:"One of a list"},variants:[{id:"buttons",label:{ru:"Кнопками",en:"As buttons"}}],params:["options","badgeAppearance","size","required","readonly"]},{type:"choices",label:{ru:"Несколько из списка",en:"Several of a list"},variants:[{id:"badges",label:{ru:"Значками",en:"As badges"}},{id:"checklist",label:{ru:"Флажками",en:"As a checklist"}},{id:"select",label:{ru:"Выпадающим списком",en:"As a dropdown"}}],params:["options","badgeAppearance","required","readonly"]},{type:"user",label:{ru:"Пользователь",en:"User"},variants:[],params:["placeholder","searchPlaceholder","required","readonly"]},{type:"record",label:{ru:"Запись",en:"Record"},variants:[],params:["placeholder","searchPlaceholder","required","readonly"]},{type:"relation",label:{ru:"Связь",en:"Relation"},variants:[],params:["placeholder","searchPlaceholder","required","readonly"]},{type:"lookup",label:{ru:"Из справочника",en:"From a reference list"},variants:[],params:["options","multiple","placeholder","searchPlaceholder","required","readonly"]},{type:"file",label:{ru:"Файл",en:"File"},variants:[{id:"image",label:{ru:"Изображение",en:"Image"}},{id:"image-card",label:{ru:"Изображение карточкой",en:"Image card"}},{id:"image-list",label:{ru:"Изображения списком",en:"Image list"}}],params:["accept","multiple","formats","uploadText","uploadSupportingText","uploadHint","required","readonly"]},{type:"color",label:{ru:"Цвет",en:"Colour"},variants:[],params:["swatches","required","readonly"]},{type:"include",label:{ru:"Код",en:"Code"},variants:[],params:["language","required","readonly"]}]);function i(e,t){return{view:Boolean(t.view?.[e]),edit:Boolean(t.edit?.[e]),cell:t.cell?.[e]?"own":"text",filter:t.filter?.[e]?"own":"text"}}n.d(t,["u",0,r])},adbddb2f4d35(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{IY:()=>p});var i=n("2a080a730149"),a=n("5b7d7695b41b"),s=n("e92fd2d1a38c"),l=n("e577837dd70a"),o=e([i,a,s,l]);[i,a,s,l]=o.then?(await o)():o;const u=Object.freeze(["open","pending","accepted","declined","expired"]),c=864e5,d=Object.freeze({open:"schedule",pending:"schedule",accepted:"check_circle",declined:"cancel",expired:"timer_off"});function p(e,{kind:t,block:n,answerId:r="answerId"}={}){return class extends e{constructor(){super(),this._pressed=null,this._timer=null,this._expiredSaid=!1,this._asks=[]}get state(){const e=this.getAttribute("state");return u.includes(e)?e:"open"}set state(e){this.setAttribute("state",u.includes(e)?e:"open")}get expired(){if("expired"===this.state)return!0;if("open"!==this.state)return!1;const e=Date.parse(this.getAttribute("expires-at")||"");return Number.isFinite(e)&&Date.now()>=e}get shownState(){return this.expired?"expired":this.state}get headingId(){return(0,s.partId)((0,s.instancePath)(this,{kind:t}),"heading")}get questionKey(){return this[r]??""}formatTime(e){const t=0===(0,l.Yz)(e);return(0,l.Yq)(e,{node:this,intl:t?{hour:"2-digit",minute:"2-digit"}:{day:"numeric",month:"long",hour:"2-digit",minute:"2-digit"}})}statusText(e){if("pending"===e)return this.sfWord(!1===this._pressed?"declining-text":"accepting-text");if("accepted"===e)return this.sfWord("accepted-text");if("declined"===e)return this.sfWord("declined-text");if("expired"===e)return this.sfWord("expired-text");const t=this.getAttribute("expires-at"),n=t?this.formatTime(t):"";return n?this.sfWord("until-text",{vars:{time:n}}):""}confirmContext(){const e=this.shownState;return{component:this,state:e,headingId:this.headingId,heading:this.getProp("heading"),headingLevel:this.getProp("headingLevel"),hasDescription:this.hasSlotContent("description"),descriptionContent:this.hasSlotContent("description")?this.getSlotContent("description"):null,acceptText:this.getProp("acceptText")||this.sfWord("accept-text"),declineText:this.getProp("declineText")||this.sfWord("decline-text"),statusText:this.statusText(e),statusIcon:d[e]??"schedule",open:"open"===e,pending:"pending"===e,pressed:"pending"===e?this._pressed:null,answersLocked:this.getProp("disabled")||"open"!==e}}onConnected(){super.onConnected?.(),this.schedule()}onDisconnected(){clearTimeout(this._timer),this._timer=null,super.onDisconnected?.()}attributeChangedCallback(e,t,n){super.attributeChangedCallback?.(e,t,n),"state"===e&&"pending"!==n&&(this._pressed=null),"state"!==e&&"expires-at"!==e||("expires-at"!==e&&"open"!==n||(this._expiredSaid=!1),this.schedule())}schedule(){if(clearTimeout(this._timer),this._timer=null,!this.isConnected||"open"!==this.state)return;const e=Date.parse(this.getAttribute("expires-at")||"");if(!Number.isFinite(e))return;const t=e-Date.now();t<=0?this.expire():this._timer=setTimeout(()=>{this._timer=null,Date.now()>=e?this.expire():this.schedule()},Math.min(t+50,c))}expire(){this.requestComponentUpdate("expired"),this.settleAsks({accepted:!1,reason:"expired"}),this._expiredSaid||(this._expiredSaid=!0,this.sfEmit("expired",{id:this.questionKey}))}open(...e){const{signal:t}=e[1]??{};return"open"!==this.state&&(this.state="open"),t?this.waitForAnswer(t):(0,a.applied)()}answer(e={}){const t=this.readAnswer(e);if(null===t)return(0,a.refused)("unknown");if("open"!==this.shownState)return(0,a.refused)("closed");if(this.getProp("disabled"))return(0,a.refused)("disabled");const n=this.contains(this.ownerDocument.activeElement);this._pressed=t,this.setAttribute("state","pending");const r=this.sfEmit("answer",{id:this.questionKey,accepted:t});return r?this.settleAsks({accepted:t,reason:t?"close":"cancelled"}):(this._pressed=null,this.setAttribute("state","open")),n&&this.whenRendered(()=>this.focusStatus(),{next:!0}),r?(0,a.applied)():(0,a.refused)("prevented")}confirm(){return this.answer({accepted:!0})}cancel(){return this.answer({accepted:!1})}readAnswer(e){return e&&"object"==typeof e&&"boolean"==typeof e.accepted?e.accepted:null}waitForAnswer(e){return new Promise(t=>{const n={resolve:t};this._asks.push(n),e?.addEventListener?.("abort",()=>{this._asks=this._asks.filter(e=>e!==n),t({outcome:"cancelled"})},{once:!0})})}settleAsks({accepted:e,reason:t}){const n=this._asks;this._asks=[];for(const r of n)r.resolve({outcome:"applied",value:{accepted:e,reason:t,value:null}})}focusStatus(){const e=this.querySelector(`.${n}__status`);if(!e)return;const t=this.querySelector(`.${n}__actions:not([hidden])`);t&&"open"===this.state?t.querySelector("button")?.focus():e.focus({preventScroll:!0})}}}r()}catch(f){r(f)}})},"5961360f41f4"(e,t,n){n.d(t,{f:()=>u});const r=Object.freeze(["main","tonal","outline"]),i=Object.freeze(["neutral","primary","secondary","tertiary","info","success","warning","error","on-surface"]),a=Object.freeze({danger:"error"}),s=Object.freeze(["1/3","1/2","1"]);function l(e){const t=String(e??"").trim().toLowerCase(),n=a[t]??t;return i.includes(n)?n:""}Object.freeze(i.flatMap(e=>r.filter(t=>!("on-surface"===e&&"tonal"===t)).flatMap(t=>s.map(n=>Object.freeze({type:t,scheme:e,size:n})))));const o=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;function u(e={}){const t=e?.scheme??e?.color,n="string"==typeof t?t.trim():"",r=l(n);return r?{scheme:r,rootStyle:""}:o.test(n)?{scheme:"neutral",rootStyle:`--sf-badge--background-color: color-mix(in srgb, ${n} 24%, transparent); --sf-badge--color: var(--sf-on-surface)`}:{scheme:"neutral",rootStyle:""}}},"9b9c0908a676"(e,t,n){n.a(e,async(e,t)=>{try{var r=n("deb1a4d61565"),i=n("5b7d7695b41b"),a=n("adbddb2f4d35"),s=n("2f31b00ad99a"),l=n("e430f71c6bbc"),o=n("3062cb94471f"),u=n("e4c87bda9c30"),c=n("d69a23bed94c"),d=n("09c52c5644c7"),p=e([r,i,a,s,l]);[r,i,a,s,l]=p.then?(await p)():p;var f=n.n(r);const h=(0,i.elementFromManifest)(u,{base:f(),lang:{en:c,ru:d},source:"ru"}),m=(0,a.IY)(h,{kind:"sf-view-flow",block:"sf-view-flow",answerId:"blockId"}),g="input:not([type=hidden]):not([disabled]), textarea:not([disabled]), select:not([disabled]), [contenteditable=true], button:not([disabled]), [tabindex]:not([tabindex='-1'])",y=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);class b extends m{static get props(){return{...super.props,templateName:{attribute:"template",default:"default"},fields:{attribute:"fields",type:Array,default:[]},groups:{attribute:"groups",type:Array,default:[]}}}constructor(){super(),this._fields=null,this._groups=null,this._formatter=null,this._changed=new Map,this._errors=new Map,this._inputErrors=new Map,this._controlErrors=new Set,this._message="",this._toggled=new Map,this._sent=null,this._answered=null,this._answer=null;for(const e of["fields","groups","formatFieldValue"]){if(!y(this,e))continue;const t=this[e];delete this[e],this[e]=t}}get fields(){const e=this._fields??this.getProp("fields");return Array.isArray(e)?e:[]}set fields(e){this._fields=Array.isArray(e)?e.map(e=>({...e})):null,this.requestComponentUpdate("fields")}get groups(){const e=this._groups??this.getProp("groups");return Array.isArray(e)?e:[]}set groups(e){this._groups=Array.isArray(e)?e.map(e=>({...e})):null,this.requestComponentUpdate("groups")}get formatFieldValue(){return this._formatter}set formatFieldValue(e){this._formatter="function"==typeof e?e:null,this._viewHost=null,this.requestComponentUpdate("format")}get mode(){return"edit"===this.getAttribute("mode")?"edit":"view"}set mode(e){this.setAttribute("mode","edit"===e?"edit":"view")}get blockGroups(){return(0,o.c1)({fields:this.fields,groups:this.groups})}get values(){return(0,o.nd)(this.blockGroups,this._changed)}get viewHost(){return this._viewHost||(this._viewHost={formatFieldValue:(e,t)=>{const n=this._formatter?.(e,t);if("string"==typeof n)return n;const r=e?.propertyType??e?.property_type??e?.type??e?.dataType;return(0,s.x)(r,t,this)||void 0}}),this._viewHost}changeField(e,t){const n=String(e?.key??"");if(!n)return this;const r=Object.hasOwn(e??{},"value")&&void 0!==t&&JSON.stringify(t)===JSON.stringify(e.value??null);return void 0===t||r?this._changed.delete(n):this._changed.set(n,t),this._errors.delete(n),this._message="",this.requestComponentUpdate("changed"),this}reportFieldError(e,t){const n=String(e?.key??"");if(!n)return this;const r=this._inputErrors.get(n);return t?(this._inputErrors.set(n,String(t)),this._controlErrors.add(n)):this._controlErrors.has(n)&&(this._inputErrors.delete(n),this._controlErrors.delete(n)),this._inputErrors.get(n)!==r&&this.requestComponentUpdate("errors"),this}openReference(e,t){this.sfEmit("open",{id:this.questionKey,field:String(e?.key??""),value:t})}toggleGroup(e){const t=this.blockGroups.find(t=>t.key===e);t?.collapsible&&(this._toggled.set(e,!this.groupCollapsed(t)),this.requestComponentUpdate("groups"))}groupCollapsed(e){return!!e.collapsible&&(!e.fields.some(e=>this._errors.has(String(e.key))||this._inputErrors.has(String(e.key)))&&(this._toggled.has(e.key)?this._toggled.get(e.key):e.collapsed))}answer(e={}){const t=this.readAnswer(e);if(null!==t&&"edit"!==this.mode)return(0,i.refused)("view");if(!0===t&&"open"===this.shownState&&!this.getProp("disabled")){const e=this.blockGroups,t=(0,o.co)(e,this._changed);if(t.length||this._inputErrors.size){const e=this.getProp("requiredText")||this.sfWord("required-text");for(const n of t)this._errors.set(n,e);return this._message=this.getProp("invalidText")||this.sfWord("invalid-text"),this.requestComponentUpdate("errors"),this.whenRendered(()=>this.focusField(t[0]??[...this._inputErrors.keys()][0]),{next:!0}),(0,i.refused)("invalid")}this._sent=(0,o.nd)(e,this._changed),this._message=""}return null!==t&&(this._answer=t),super.answer(e)}sfEmit(e,t={},n){return"answer"===e&&!0===t?.accepted?super.sfEmit(e,{...t,values:{...this._sent??{}}},n):super.sfEmit(e,t,n)}settle(e={}){if("edit"!==this.mode)return(0,i.refused)("view");const t=e&&"object"==typeof e&&"result"in e&&1===Object.keys(e).length?e.result:e,n=(0,o.Qo)(t,{accepted:!1!==this._answer}),r=this.contains(this.ownerDocument.activeElement);this._errors=new Map(Object.entries(n.errors)),this._message=n.message,"accepted"===n.state&&(this._answered=n.values??this._sent??null),this.requestComponentUpdate("settled"),this.setAttribute("state",n.state);const a=Object.keys(n.errors)[0];return"open"===n.state&&a?this.whenRendered(()=>this.focusField(a),{next:!0}):r&&this.whenRendered(()=>this.focusStatus(),{next:!0}),"open"===n.state?(0,i.refused)(n.errors&&a?"invalid":"refused"):(0,i.applied)()}statusText(e){return"open"===e&&this._message?this._message:super.statusText(e)}focusField(e){if(null==e)return;const t=this.querySelector(`.sf-view-flow__field[data-field="${CSS.escape(String(e))}"]`);if(!t)return;const n=t.querySelector(g);(n??t).focus?.({preventScroll:!1})}shownValue(e){const t=String(e.key);return this._answered&&Object.hasOwn(this._answered,t)?this._answered[t]:this._changed.has(t)?this._changed.get(t):e.value}templateContext(){const e=this.confirmContext(),t=this.mode,n=e.state,r="edit"===t&&("open"===n||"pending"===n),i=this._inputErrors.size?new Map([...this._errors,...this._inputErrors]):this._errors;return{...e,mode:t,editing:r,fieldsShown:"view"===t||r||"accepted"===n,footShown:"edit"===t,fieldsLocked:r&&("pending"===n||Boolean(this.getProp("disabled"))),groups:this.blockGroups,changed:this._changed,errors:i,controlErrors:this._controlErrors,size:"1"===this.getProp("size")?"1":"1/2",viewHost:this.viewHost,emptyText:this.getProp("emptyText")||this.sfWord("empty-text"),blockLabel:this.sfWord("block-label"),submitText:this.getProp("submitText")||this.sfWord("submit-text"),cancelText:this.getProp("cancelText")||this.sfWord("cancel-text"),cancelable:!1!==this.getProp("cancelable"),statusIcon:"open"===n&&this._message?"error":e.statusIcon,statusError:"open"===n&&Boolean(this._message),canPickRecords:!1,canUploadFiles:!1}}template(){return(0,l.O)(this.templateContext())}}b.define("sf-view-flow"),t()}catch(e){t(e)}})},"3062cb94471f"(e,t,n){n.d(t,{Tz:()=>u,nd:()=>y,t4:()=>p,Vb:()=>f,c1:()=>o,co:()=>g,Qo:()=>v,b0:()=>d,qf:()=>c});const r=Object.freeze(["eq","ne","in","not_in","empty","not_empty"]),i=e=>e&&"object"==typeof e&&!Array.isArray(e)&&"value"in e?e.value:e;function a(e,t){if(!e||"object"!=typeof e||Array.isArray(e))return null;for(const n of["all","any"]){if(!(n in e))continue;const r=e[n];if(!Array.isArray(r)||!r.length)return null;const i=r.map(e=>a(e,t));return i.includes(null)?null:"all"===n?i.every(Boolean):i.some(Boolean)}if("not"in e){const n=a(e.not,t);return null===n?null:!n}if("string"!=typeof e.field||!r.includes(e.op))return null;const n=(s=t.get(e.field),(Array.isArray(s)?s:[s]).map(i).filter(e=>null!=e&&""!==e).map(e=>String(e)));var s;if("empty"===e.op)return 0===n.length;if("not_empty"===e.op)return n.length>0;if("eq"===e.op||"ne"===e.op){const t=n.includes(String(i(e.value)));return"eq"===e.op?t:!t}if(!Array.isArray(e.value))return null;const l=e.value.map(e=>String(i(e))),o=n.some(e=>l.includes(e));return"in"===e.op?o:!o}function s(e,t){const n=e?.when&&"object"==typeof e.when?e.when:null,r=e=>n&&e in n?a(n[e],t):null,i=r("visible"),s=r("required"),l=r("enabled");return{visible:i??!0,required:s??!0===e?.required,enabled:l??!0}}const l=e=>e&&void 0!==e.key&&null!==e.key?String(e.key):"";function o({fields:e=[],groups:t=[]}={}){return(Array.isArray(t)&&t.length?t:[{key:"",label:"",fields:Array.isArray(e)?e:[]}]).filter(e=>e&&"object"==typeof e).map((e,t)=>({key:void 0!==e.key&&null!==e.key&&""!==String(e.key)?String(e.key):`group-${t+1}`,label:e.label?String(e.label):"",collapsible:!0===e.collapsible&&Boolean(e.label),collapsed:!0===e.collapsible&&Boolean(e.label)&&!0===e.collapsed,fields:(Array.isArray(e.fields)?e.fields:[]).filter(e=>e&&"object"==typeof e&&l(e))}))}function u(e){return e.flatMap(e=>e.fields)}function c(e,t=new Map){const n=new Map;for(const r of u(e)){const e=l(r);n.set(e,t.has(e)?t.get(e):r.value)}return n}function d(e,t){return(e??[]).filter(e=>!0!==e.hidden&&(!e.when||s(e,t).visible))}function p(e,t){if(!e?.when)return e;const n=s(e,t);return{...e,required:n.required,readonly:!0===e.readonly||!n.enabled}}function f(e,t){return Boolean(e?.when)&&!s(e,t).enabled}function h(e){return null==e||("string"==typeof e?""===e.trim():Array.isArray(e)?0===e.length:"object"==typeof e&&"value"in e&&h(e.value))}function m(e,t){return e.flatMap(e=>d(e.fields,t)).map(e=>p(e,t)).filter(e=>!0!==e.readonly)}function g(e,t=new Map){const n=c(e,t);return m(e,n).filter(e=>!0===e.required&&h(n.get(l(e)))).map(l)}function y(e,t=new Map){const n=c(e,t);return Object.fromEntries(m(e,n).map(e=>{const t=n.get(l(e));return[l(e),void 0===t?null:t]}))}const b=new Set(["closed","expired"]);function v(e,{accepted:t=!0}={}){const n=e?.answer,r="string"==typeof e?.message&&e.message.trim()?e.message:"";if("applied"===n){return{state:t?"accepted":"declined",errors:{},message:"",values:e.values&&"object"==typeof e.values&&!Array.isArray(e.values)?{...e.values}:null}}if("refused"===n&&b.has(e?.reason))return{state:"expired",errors:{},message:r,values:null};return{state:"open",errors:e?.errors&&"object"==typeof e.errors&&!Array.isArray(e.errors)?Object.fromEntries(Object.entries(e.errors).filter(([,e])=>"string"==typeof e&&e.trim())):{},message:r,values:null}}},e430f71c6bbc(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{O:()=>d});var i=n("2a080a730149"),a=n("62c5c417c97d"),s=n("3062cb94471f"),l=e([i,a]);[i,a]=l.then?(await l)():l;function o(e,t){const n=String(t.key),r=e.values,l=e.editing,o=l&&(0,s.Vb)(t,r),u=l?(0,s.t4)(t,r):{...t,value:e.component.shownValue(t)},c=e.controlErrors.has(n)?null:e.errors.get(n),d="full"===t.width?"full":"half";return i.html`
|
|
577
577
|
<div class="sf-view-flow__field sf-view-flow__field--${d} flex flex-col gap-1/4 min-w-0"
|
|
578
578
|
data-field=${n}
|
|
579
579
|
data-invalid=${e.errors.has(n)?"true":i.nothing}>
|
|
580
580
|
<div class="sf-view-flow__label flex items-cross-center gap-1/3 color-on-surface-variant">
|
|
581
581
|
<span>${String(t.label??n)}</span>
|
|
582
|
-
${u.required&&
|
|
582
|
+
${u.required&&l?i.html`<span class="sf-view-flow__required color-error" aria-hidden="true">*</span>`:i.nothing}
|
|
583
583
|
${t.hint?i.html`<sf-help-mark class="sf-view-flow__hint" label=${String(t.hint)} text=${String(t.hint)}></sf-help-mark>`:i.nothing}
|
|
584
584
|
</div>
|
|
585
|
-
<div class="sf-view-flow__value min-w-0 flex items-cross-center gap-1 flex-wrap">${(0,
|
|
585
|
+
<div class="sf-view-flow__value min-w-0 flex items-cross-center gap-1 flex-wrap">${(0,a.G)(e,u,l,{disabled:o})}</div>
|
|
586
586
|
${c?i.html`<div class="sf-view-flow__error color-error" role="alert">${c}</div>`:i.nothing}
|
|
587
|
-
</div>`}function u(e,t,n){const r=(0,
|
|
588
|
-
<div class="sf-view-flow__fields" id=${u} ?hidden=${
|
|
587
|
+
</div>`}function u(e,t,n){const r=(0,s.b0)(t.fields,e.values);if(!r.length)return i.nothing;const a=e.component,l=a.groupCollapsed(t),u=`${e.headingId.replace(/--heading$/u,"")}--group-${n+1}`,c=i.html`
|
|
588
|
+
<div class="sf-view-flow__fields" id=${u} ?hidden=${l}>
|
|
589
589
|
${r.map(t=>o(e,t))}
|
|
590
590
|
</div>`;return t.label?i.html`
|
|
591
|
-
<div class="sf-view-flow__group" data-group=${t.key} data-collapsed=${
|
|
591
|
+
<div class="sf-view-flow__group" data-group=${t.key} data-collapsed=${l?"true":i.nothing}>
|
|
592
592
|
${t.collapsible?i.html`<button type="button" class="sf-view-flow__group-label sf-view-flow__toggle flex items-cross-center gap-1/4"
|
|
593
|
-
aria-expanded=${
|
|
594
|
-
@click=${()=>
|
|
593
|
+
aria-expanded=${l?"false":"true"} aria-controls=${u}
|
|
594
|
+
@click=${()=>a.toggleGroup(t.key)}>
|
|
595
595
|
<sf-icon icon="expand_more" size="1/2" aria-hidden="true"></sf-icon>
|
|
596
596
|
<span>${t.label}</span>
|
|
597
597
|
</button>`:i.html`<div class="sf-view-flow__group-label">${t.label}</div>`}
|
|
@@ -616,7 +616,7 @@
|
|
|
616
616
|
?disabled=${e.answersLocked&&!0!==e.pressed}
|
|
617
617
|
@click=${()=>t.confirm()}></sf-button>
|
|
618
618
|
</div>
|
|
619
|
-
</footer>`}function d(e){const t=e.editing?(0,
|
|
619
|
+
</footer>`}function d(e){const t=e.editing?(0,s.qf)(e.groups,e.changed):new Map((0,s.Tz)(e.groups).map(t=>[String(t.key),e.component.shownValue(t)])),n={...e,values:t};return i.html`
|
|
620
620
|
<section
|
|
621
621
|
class="sf-view-flow sf-view-flow--${e.mode}${e.editing?" sf-view-flow--editing":""} sf-view-flow--${e.state} sf-view-flow--size-${"1"===e.size?"1":"1-2"}"
|
|
622
622
|
aria-labelledby=${e.heading?e.headingId:i.nothing}
|
|
@@ -632,7 +632,118 @@
|
|
|
632
632
|
</div>`:i.nothing}
|
|
633
633
|
${c(e)}
|
|
634
634
|
</section>
|
|
635
|
-
`}r()}catch(p){r(p)}})},"62c5c417c97d"(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{G:()=>
|
|
635
|
+
`}r()}catch(p){r(p)}})},f44b979883f0(e,t,n){n.d(t,{Iv:()=>$,LI:()=>h,PD:()=>l,UD:()=>m,WQ:()=>p,dw:()=>g,e4:()=>a,lw:()=>d,nI:()=>s,uM:()=>f,zJ:()=>v});const r=/^([+-]?)(\d*)(?:[.,](\d*))?$/u,i=/[\s ']/gu;function a(e){if(null==e)return{ok:!0,value:null};if("number"==typeof e)return Number.isSafeInteger(e)?{ok:!0,value:String(e)}:{ok:!1};const t=String(e).replace(i,"");if(""===t)return{ok:!0,value:null};const n=r.exec(t);if(!n)return{ok:!1};const[,a,s,l]=n;if(""===s&&""===(l??""))return{ok:!1};const o=s.replace(/^0+(?=\d)/u,"")||"0",u=l??"",c=/^0*$/u.test(o+u);return{ok:!0,value:`${"-"!==a||c?"":"-"}${o}${u?`.${u}`:""}`}}function s(e){if(e&&"object"==typeof e&&"bigint"==typeof e.units)return e;const t=a(e);if(!t.ok||null===t.value)return null;const n=t.value.startsWith("-"),[r,i=""]=t.value.replace("-","").split(".");return{units:BigInt(r+i)*(n?-1n:1n),scale:i.length}}function l(e){const t=a(e);if(!t.ok||null===t.value)return 0;const n=t.value.indexOf(".");return-1===n?0:t.value.length-n-1}const o=new Map,u=e=>(o.has(e)||o.set(e,10n**BigInt(e)),o.get(e));function c(e,t){return e.scale===t?e:{units:e.units*u(t-e.scale),scale:t}}function d(e,t){return{units:e.units*t.units,scale:e.scale+t.scale}}function p(e,t){const n=Math.max(e.scale,t.scale);return{units:c(e,n).units+c(t,n).units,scale:n}}function f(e){return{units:e.units,scale:e.scale+2}}function h(e,t){if(e.scale<=t)return c(e,t);const n=u(e.scale-t),r=e.units<0n,i=r?-e.units:e.units;let a=i/n;return i%n*2n>=n&&(a+=1n),{units:r?-a:a,scale:t}}function m(e,t){const n=Math.max(e.scale,t.scale),r=c(e,n).units,i=c(t,n).units;return r===i?0:r<i?-1:1}function g(e){const t=e.units<0n,n=(t?-e.units:e.units).toString().padStart(e.scale+1,"0"),r=e.scale?n.slice(0,-e.scale):n,i=e.scale?n.slice(-e.scale):"",a=0n===e.units;return`${t&&!a?"-":""}${r}${i?`.${i}`:""}`}const y=new Map;function b(e){if(!y.has(e)){let t=" ",n=".";try{for(const r of new Intl.NumberFormat(e).formatToParts(12345.6))"group"===r.type&&(t=r.value),"decimal"===r.type&&(n=r.value)}catch{}y.set(e,{group:t,point:n})}return y.get(e)}function v(e,t,{minFraction:n=0}={}){const r=s(e);if(!r)return"";const i=g(r.scale<n?c(r,n):r),a=i.startsWith("-"),[l,o]=i.replace("-","").split("."),{group:u,point:d}=b(t);return`${a?"−":""}${l.replace(/\B(?=(\d{3})+(?!\d))/gu,u)}${o?`${d}${o}`:""}`}function $(e,t){const n=a(e);return n.ok&&null!==n.value?n.value.replace(".",b(t).point):""}},"62c5c417c97d"(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{G:()=>o});var i=n("2a080a730149"),a=n("e5483002f3ea"),s=n("db94c32f22be"),l=e([i,a,s]);[i,a,s]=l.then?(await l)():l;function o(e,t,n,{disabled:r=!1}={}){const l=String(t.key??""),o={setFieldValue:(t,n)=>e.component.changeField(t,n),setFieldError:(t,n)=>e.component.reportFieldError(t,n),...e.canUploadFiles?{getFieldUploads:t=>e.component.getFieldUploads(t),startFieldUpload:(t,n)=>e.component.startFieldUpload(t,n),retryFieldUpload:(t,n)=>e.component.retryFieldUpload(t,n)}:{},...e.canPickRecords?{getFieldOptionsPage:t=>e.component.getFieldOptionsPage(t),getFieldOptionSearch:t=>e.component.getFieldOptionSearch(t),setFieldOptionSearch:(t,n)=>e.component.setFieldOptionSearch(t,n),loadFieldOptions:(t,n)=>e.component.loadFieldOptions(t,n)}:{}},u=(0,s.BE)(t,e.changed.has(l)&&n?e.changed.get(l):t.value,n,o,{node:e.component,size:e.size,viewHost:e.viewHost,disabled:r});if(null!==u)return u===i.nothing?i.html`<span class="sf-property-view-empty color-on-surface-variant">${e.emptyText}</span>`:u;const c=n?(0,a.z4)(t,e.changed.has(l)?e.changed.get(l):t.value,o,{size:e.size,...r?{disabled:!0}:{}}):(0,a.oX)(t,t.value,e.viewHost,{size:e.size}),d=["record","relation","user"].includes(t.propertyType||t.type)&&t.value&&"object"==typeof t.value;if(!n&&d&&c)return i.html`<span
|
|
636
636
|
class="sf-property-view-reference"
|
|
637
637
|
@click=${n=>{n.preventDefault(),n.stopPropagation(),e.component.openReference(t,t.value)}}
|
|
638
|
-
>${
|
|
638
|
+
>${c}</span>`;if(n&&(null==c||c===i.nothing)){const n=(0,a.oX)(t,t.value,e.viewHost,{size:e.size});if(null!=n&&n!==i.nothing)return i.html`<span class="sf-property-view-readonly color-on-surface-variant" data-readonly="true">${n}</span>`}return null==c||c===i.nothing?i.html`<span class="sf-property-view-empty color-on-surface-variant">${e.emptyText}</span>`:c}r()}catch(u){r(u)}})},d69ebe7e288e(e,t,n){n.d(t,{Fr:()=>a,fL:()=>o,up:()=>s,xl:()=>l});var r=n("f44b979883f0");const i=new Map;function a(e,t){const n=`${e}|${t}`;if(!i.has(n)){let r=e,a=!1,s=2;try{const n=new Intl.NumberFormat(t,{style:"currency",currency:e,currencyDisplay:"narrowSymbol"}),i=n.formatToParts(1),l=i.findIndex(e=>"currency"===e.type);r=i[l]?.value??e,a=l<i.findIndex(e=>"integer"===e.type),s=n.resolvedOptions().maximumFractionDigits}catch{}i.set(n,{sign:r,before:a,minor:s})}return i.get(n)}function s(e,t,n){if(!t)return(0,r.zJ)(e,n);const{sign:i,before:s,minor:l}=a(t,n),o=(0,r.zJ)(e,n,{minFraction:l});return o?s?`${i}${o}`:`${o} ${i}`:""}function l(e,t){return e&&"object"==typeof e&&!Array.isArray(e)?{amount:e.amount??null,currency:t||(e.currency??null)}:null==e||""===e?{amount:null,currency:t||null}:{amount:e,currency:t||null}}function o(e,t){const n=(0,r.zJ)(e,t);if(!n)return"";let i=!1;try{i=new Intl.NumberFormat(t,{style:"percent"}).formatToParts(.5).some(e=>"literal"===e.type&&/\s/u.test(e.value))}catch{i=!1}return`${n}${i?" ":""}%`}},"06dfc7b3b9d9"(e,t,n){n.d(t,{r5:()=>l});const r=Object.freeze(["inn","kpp","ogrn","bik","account","corr_account"]),i=e=>[...e].map(Number),a=(e,t)=>t.reduce((t,n,r)=>t+n*e[r],0);function s(e,t){return i(e+t).reduce((e,t,n)=>e+t*[7,1,3][n%3],0)%10==0}function l(e,t=r){const n={},l=e=>t.includes(e),o=t=>String(e?.[t]??""),u=o("inn"),c=o("kpp"),d=o("ogrn"),p=o("bik"),f=o("account"),h=o("corr_account");l("inn")&&(u?/^\d{10}$|^\d{12}$/u.test(u)?function(e){if(!/^\d{10}$|^\d{12}$/u.test(e))return!1;const t=i(e);if(10===e.length)return a(t,[2,4,10,3,5,9,4,6,8])%11%10===t[9];const n=a(t,[7,2,4,10,3,5,9,4,6,8])%11%10,r=a(t,[3,7,2,4,10,3,5,9,4,6,8])%11%10;return n===t[10]&&r===t[11]}(u)||(n.inn="innWrong"):n.inn="innLength":n.inn="innRequired");const m=12===u.length,g=10===u.length;l("kpp")&&c&&(/^\d{4}[\dA-Z]{2}\d{3}$/u.test(c)?m&&(n.kpp="kppPerson"):n.kpp="kppWrong"),l("ogrn")&&d&&(/^\d{13}$|^\d{15}$/u.test(d)?!function(e){if(!/^\d{13}$|^\d{15}$/u.test(e))return!1;const t=BigInt(e.slice(0,-1)),n=13===e.length?11n:13n;return Number(t%n%10n)===Number(e.at(-1))}(d)?n.ogrn="ogrnWrong":g&&13!==d.length?n.ogrn="ogrnOrganization":m&&15!==d.length&&(n.ogrn="ogrnPerson"):n.ogrn="ogrnLength");const y=/^04\d{7}$/u.test(p);return l("bik")&&p&&!y&&(n.bik="bikWrong"),l("account")&&f&&(/^\d{20}$/u.test(f)?y&&!s(p.slice(-3),f)&&(n.account="accountKey"):n.account="accountLength"),l("corr_account")&&h&&(/^\d{20}$/u.test(h)?h.startsWith("301")?y&&!s(`0${p.slice(4,6)}`,h)&&(n.corr_account="accountKey"):n.corr_account="corrStart":n.corr_account="accountLength"),n}n.d(t,["rS",0,r])},ebc72103d8b6(e,t,n){n.d(t,{GZ:()=>d,PL:()=>l,RO:()=>o,SK:()=>c,y4:()=>p});var r=n("f44b979883f0"),i=n("d69ebe7e288e");const a=new Set(["integer","number","percent","money"]);function s(e){const{settings:t,...n}=e??{},r=n.propertyType||n.type;return{...t&&"object"==typeof t?t:{},...n,propertyType:r,type:r}}function l(e){return(Array.isArray(e.columns)?e.columns:[]).map(s).filter(e=>e.key)}function o(e){return Array.isArray(e)?e.map(e=>e&&"object"==typeof e?e:{}):[]}function u(e,t){return null==t||""===t?null:"money"===e.propertyType?(0,r.nI)((0,i.xl)(t,e.currency).amount):(0,r.nI)(t)}function c(e,t){if(e.currency)return e.currency;if(e.compute?.of){const n=t.find(t=>e.compute.of.includes(t.key)&&"money"===t.propertyType);return n?.currency??null}return null}function d(e,t,n="en"){const a={},s={};for(const n of t)n.compute||Object.hasOwn(e,n.key)&&null!==e[n.key]&&""!==e[n.key]&&(a[n.key]=e[n.key]);for(const e of t){if(!e.compute||"multiply"!==e.compute.op||!Array.isArray(e.compute.of))continue;let l=null,o=null;for(const n of e.compute.of){const e=t.find(e=>e.key===n),s=e?u(e,a[n]):null;if(!s){l=null;break}"money"===e.propertyType&&(o=(0,i.xl)(a[n],e.currency).currency);const c="percent"===e.propertyType?(0,r.uM)(s):s;l=l?(0,r.lw)(l,c):c}if(l)if("money"===e.propertyType){const t=e.currency||o,a=t?(0,i.Fr)(t,n).minor:2;s[e.key]={amount:(0,r.dw)((0,r.LI)(l,a)),currency:t}}else{const t="integer"===e.propertyType?0:Number.isInteger(e.scale)?e.scale:2;s[e.key]=(0,r.dw)((0,r.LI)(l,t))}}return{...a,...s}}function p(e,t){const n={};for(const i of t){if("sum"!==i.total||!a.has(i.propertyType))continue;let t={units:0n,scale:0};for(const n of e){const e=u(i,n[i.key]);e&&(t=(0,r.WQ)(t,e))}n[i.key]=t}return n}n.d(t,["mk",0,a])},db94c32f22be(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{BE:()=>X});var i=n("2a080a730149"),a=n("e5483002f3ea"),s=n("43090d1c8307"),l=n("f44b979883f0"),o=n("d69ebe7e288e"),u=n("ebc72103d8b6"),c=n("06dfc7b3b9d9"),d=e([i,a,s]);[i,a,s]=d.then?(await d)():d;const p={en:{currency:"Currency",notNumber:"Enter a number",fractionMax:"At most {n} digits after the point",fractionNone:"A whole amount, no digits after the point",chooseCurrency:"Choose a currency",range:"From {min} to {max}",atLeast:"At least {min}",atMost:"At most {max}",addRow:"Add a row",removeRow:"Remove the row",rowUp:"Move the row up",rowDown:"Move the row down",row:"Row {n}",total:"Total",cellsWrong:"Some cells are not filled in correctly",rows:"{n} rows",row1:"1 row",inn:"INN",kpp:"KPP",ogrn:"OGRN",bik:"BIK",account:"Account",corr_account:"Correspondent account",innRequired:"The INN is required",innLength:"10 digits for an organisation, 12 for a person",innWrong:"The INN control digits do not match",kppWrong:"Nine characters: four digits, two digits or letters, three digits",kppPerson:"A person's INN has no KPP",ogrnLength:"13 digits (OGRN) or 15 (OGRNIP)",ogrnWrong:"The control digit does not match",ogrnOrganization:"An organisation has a 13-digit OGRN",ogrnPerson:"A person has a 15-digit OGRNIP",bikWrong:"Nine digits starting with 04",accountLength:"20 digits",accountKey:"The account does not match the BIK",corrStart:"A correspondent account starts with 301"},ru:{currency:"Валюта",notNumber:"Введите число",fractionMax:"Не больше {n} знаков после запятой",fractionNone:"Целая сумма, без знаков после запятой",chooseCurrency:"Выберите валюту",range:"От {min} до {max}",atLeast:"Не меньше {min}",atMost:"Не больше {max}",addRow:"Добавить строку",removeRow:"Удалить строку",rowUp:"Поднять строку",rowDown:"Опустить строку",row:"Строка {n}",total:"Итого",cellsWrong:"Не все ячейки заполнены верно",rows:"{n} строк",row1:"1 строка",inn:"ИНН",kpp:"КПП",ogrn:"ОГРН",bik:"БИК",account:"Расчётный счёт",corr_account:"Корр. счёт",innRequired:"ИНН обязателен",innLength:"10 цифр у организации, 12 у физлица",innWrong:"Не сходятся контрольные цифры ИНН",kppWrong:"Девять знаков: четыре цифры, две цифры или буквы, три цифры",kppPerson:"У ИНН физлица нет КПП",ogrnLength:"13 цифр (ОГРН) или 15 (ОГРНИП)",ogrnWrong:"Не сходится контрольная цифра",ogrnOrganization:"У организации ОГРН из 13 цифр",ogrnPerson:"У физлица ОГРНИП из 15 цифр",bikWrong:"Девять цифр, начиная с 04",accountLength:"20 цифр",accountKey:"Счёт не сходится с БИК",corrStart:"Корр. счёт начинается с 301"}},f="sf-view-properties";function h(e,t,n={}){let r=(0,s.pageText)(p,t,e,f);for(const[e,t]of Object.entries(n))r=r.replaceAll(`{${e}}`,String(t));return r}function m(e,t){const n=(0,s.pageLocale)(e);if(1===t)return h(e,"row1");if(n.startsWith("ru")){const e=t%100,n=t%10;if(n>=2&&n<=4&&(e<12||e>14))return`${t} строки`}return h(e,"rows",{n:t})}Object.freeze(["money","percent","items","compound","ru.requisites"]);const g=["RUB","USD","EUR","CNY","KZT","BYN","AED","TRY","GBP","JPY"],y=new WeakMap,b=e=>(y.has(e)||y.set(e,new Map),y.get(e)),v=new WeakMap,$=e=>(v.has(e)||v.set(e,new Set),v.get(e)),w=e=>e?.requestComponentUpdate?.("changed");function x(e,t,n,r){const i=b(e).get(t),a=(0,l.e4)(n);if(!a.ok)return String(n??"");if("string"==typeof i){const e=(0,l.e4)(i);if(e.ok&&e.value===a.value)return i}return(0,l.Iv)(a.value,r)}function k(e,t,{maxFraction:n=null,min:r=null,max:i=null}={}){const a=(0,l.e4)(t);if(!a.ok)return h(e,"notNumber");if(null===a.value)return null;if(null!==n&&(0,l.PD)(a.value)>n)return 0===n?h(e,"fractionNone"):h(e,"fractionMax",{n});const o=(0,l.nI)(a.value),u=(0,l.nI)(r),c=(0,l.nI)(i),d=(0,s.pageLocale)(e);return u&&(0,l.UD)(o,u)<0||c&&(0,l.UD)(o,c)>0?u&&c?h(e,"range",{min:(0,l.zJ)(r,d),max:(0,l.zJ)(i,d)}):u?h(e,"atLeast",{min:(0,l.zJ)(r,d)}):h(e,"atMost",{max:(0,l.zJ)(i,d)}):null}function S(e,{path:t,value:n,size:r,label:a,required:o,textEnd:u,placeholder:c,check:d,write:p}){const f=(0,s.pageLocale)(e),h=x(e,t,n,f),m=d(h),g=m&&$(e).has(t)?m:"",y=n=>{const r=n.target?.value??"";b(e).set(t,r);const i=(0,l.e4)(r);p(i.ok?i.value:r,d(r))};return i.html`
|
|
639
|
+
<sf-input
|
|
640
|
+
class="sf-view-fields-decimal"
|
|
641
|
+
size=${r}
|
|
642
|
+
appearance="bordered"
|
|
643
|
+
inputmode="decimal"
|
|
644
|
+
value=${h}
|
|
645
|
+
text-end=${u||i.nothing}
|
|
646
|
+
placeholder=${c||i.nothing}
|
|
647
|
+
?required=${Boolean(o)}
|
|
648
|
+
?invalid=${Boolean(g)}
|
|
649
|
+
error-message=${g||i.nothing}
|
|
650
|
+
aria-label=${a||""}
|
|
651
|
+
data-path=${t}
|
|
652
|
+
@input=${y}
|
|
653
|
+
@change=${y}
|
|
654
|
+
@focusout=${()=>{b(e).delete(t),$(e).add(t),w(e)}}
|
|
655
|
+
></sf-input>
|
|
656
|
+
`}function F(e){return{min:e.min??"0",max:e.max??"100"}}function _(e,t,n,r){const{min:i,max:a}=F(e);return S(r.node,{path:r.path??String(e.key??""),value:t,size:r.size,label:e.label||e.key,required:e.required,textEnd:"%",placeholder:e.placeholder,check:e=>k(r.node,e,{min:i,max:a}),write:(t,r)=>{n.setFieldValue(e,t),n.setFieldError?.(e,r)}})}function T(e,t,n){const r=(0,o.fL)(t,(0,s.pageLocale)(n.node));return r?i.html`<span class="sf-field-view">${r}</span>`:i.nothing}function A(e,t,n,r){const a=r.node,u=(0,s.pageLocale)(a),c=r.path??String(e.key??""),d="string"==typeof e.currency&&e.currency?e.currency:null,p=(0,o.xl)(t,d),f=`${c}#currency`,m=p.currency||b(a).get(f)||null,y=m?(0,o.Fr)(m,u).minor:null,v=(t,r,i=m)=>{n.setFieldValue(e,null===t?null:{amount:t,currency:i}),n.setFieldError?.(e,r)},$=S(a,{path:c,value:p.amount,size:r.size,label:e.label||e.key,required:e.required,textEnd:d?(0,o.Fr)(d,u).sign:"",placeholder:e.placeholder,check:t=>{const n=k(a,t,{maxFraction:y,min:e.min??null,max:e.max??null});return n||(null===(0,l.e4)(t).value||m?null:h(a,"chooseCurrency"))},write:v});if(d)return $;const x=[...new Set([...m?[m]:[],...g])];return i.html`
|
|
657
|
+
<span class="sf-view-fields-money flex gap-1/3 min-w-0">
|
|
658
|
+
${$}
|
|
659
|
+
<sf-dropdown
|
|
660
|
+
class="sf-view-fields-currency"
|
|
661
|
+
size=${r.size}
|
|
662
|
+
appearance="outlined"
|
|
663
|
+
mode="select"
|
|
664
|
+
search="false"
|
|
665
|
+
value=${m??""}
|
|
666
|
+
placeholder=${h(a,"currency")}
|
|
667
|
+
aria-label=${h(a,"currency")}
|
|
668
|
+
.options=${x.map(e=>({type:"text",size:"1",value:e,text:`${e} ${(0,o.Fr)(e,u).sign===e?"":(0,o.Fr)(e,u).sign}`.trim(),selected:e===m}))}
|
|
669
|
+
@change=${t=>{const n=t.detail?.value||null;b(a).set(f,n);const r=p.amount;if(null!==r&&""!==r){const t=n?(0,o.Fr)(n,u).minor:null,i=k(a,r,{maxFraction:t,min:e.min??null,max:e.max??null})||(n?null:h(a,"chooseCurrency"));v((0,l.e4)(r).ok?(0,l.e4)(r).value:r,i,n)}else w(a)}}
|
|
670
|
+
></sf-dropdown>
|
|
671
|
+
</span>
|
|
672
|
+
`}function z(e,t,n){const r="string"==typeof e.currency&&e.currency?e.currency:null,{amount:i,currency:a}=(0,o.xl)(t,r);return null===i?"":(0,o.up)(i,a,n)}function q(e,t,n){const r=z(e,t,(0,s.pageLocale)(n.node));return r?i.html`<span class="sf-field-view sf-view-fields-amount">${r}</span>`:i.nothing}function O(e,t,n,r){return S(r.node,{path:r.path??String(e.key??""),value:t,size:r.size,label:e.label||e.key,required:e.required,textEnd:e.unit||"",placeholder:e.placeholder,check:t=>k(r.node,t,{min:e.min??null,max:e.max??null}),write:(t,r)=>{n.setFieldValue(e,t),n.setFieldError?.(e,r)}})}function j(e,t,n){const r=(0,l.zJ)(t,n);return r&&e.unit?`${r} ${e.unit}`:r}function E(e,t,n,r,s){if(null==t||""===t)return null;switch(e.propertyType){case"money":{const{amount:i,currency:a}=(0,o.xl)(t,(0,u.SK)(e,n));return null===i?null:(0,o.up)(i,a,r)}case"percent":return(0,o.fL)(t,r);case"number":return j(e,t,r);default:{const n=(0,a.oX)({...e,value:t},t,s,{size:"1"});return null===n||n===i.nothing?null:n}}}function N(e,t,n,r){if("money"===e.propertyType){const i=(0,u.SK)(e,n);return(0,o.up)((0,l.dw)(t),i,r)}return"percent"===e.propertyType?(0,o.fL)((0,l.dw)(t),r):j(e,(0,l.dw)(t),r)}function P(e){switch(e.propertyType){case"boolean":return"minmax(4rem, auto)";case"integer":return"minmax(5.5rem, 0.6fr)";case"percent":return"minmax(6.5rem, 0.6fr)";case"number":return"minmax(6.5rem, 0.7fr)";case"money":return e.currency?"minmax(9rem, 0.9fr)":"minmax(13rem, 1.2fr)";case"date":return"minmax(9rem, 0.8fr)";case"choice":return"minmax(8rem, 1fr)";default:return"minmax(10rem, 2fr)"}}function C(e,t,n,r){const i=(0,s.pageLocale)(r.node),a=(0,u.y4)(t,n),l=n.find(e=>Object.hasOwn(a,e.key)&&"money"===e.propertyType)??n.find(e=>Object.hasOwn(a,e.key)),o=m(r.node,t.length);return l?`${o}, ${h(r.node,"total").toLowerCase()} ${N(l,a[l.key],n,i)}`:o}function L(e,t,n,r,{editing:l,host:o}){const c=r.node,d=(0,s.pageLocale)(c),p=String(e.key??""),f=Number.isInteger(e.minRows)?e.minRows:0,m=Number.isInteger(e.maxRows)?e.maxRows:1e3,g=l?[...t,...Array.from({length:Math.max(0,f-t.length)},()=>({}))]:t,y=(0,u.y4)(t,n),v=Object.keys(y).length>0,w=`${n.map(P).join(" ")}${l?" auto":""}`,x=V(c,p),k=()=>{const t=[...x.values()].some(Boolean);o.setFieldError?.(e,t?h(c,"cellsWrong"):null)},S=t=>{const r=t.map(e=>(0,u.GZ)(e,n,d));o.setFieldValue(e,r.length?r:null)},F=e=>{for(const e of[...b(c).keys()])e.startsWith(`${p}[`)&&b(c).delete(e);for(const e of[...$(c)])e.startsWith(`${p}[`)&&$(c).delete(e);x.clear(),k(),S(e)},T=(s,o,c)=>{const f=`${p}[${o}].${c.key}`,h=s[c.key];if(!l||c.compute||!0===e.readonly||!0===c.readonly){const e=E(c,c.compute&&l?(0,u.GZ)(s,n,d)[c.key]:h,n,d,r.viewHost);return i.html`<span class="sf-view-items-text ${c.compute?"color-on-surface-variant":""}" data-computed=${c.compute?"true":i.nothing}>${e??i.html`<span class="color-on-surface-variant">—</span>`}</span>`}const m={...c,key:f,label:c.label||c.key,value:h},y={setFieldValue:(e,n)=>((e,n,r)=>{const i=g.map(e=>({...e}));null==r||""===r?delete i[e][n.key]:i[e][n.key]=r,S(i.slice(0,Math.max(t.length,e+1)))})(o,c,n),setFieldError:(e,t)=>{x.set(f,t||null),k()}},b={...r,path:f};switch(c.propertyType){case"money":return A({...m,currency:c.currency},h,y,b);case"percent":return _(m,h,y,b);case"number":return O(m,h,y,b);default:return(0,a.z4)(m,h,y,{size:r.size})??i.html`<span class="sf-view-items-text">${E(c,h,n,d,r.viewHost)??"—"}</span>`}};return i.html`
|
|
673
|
+
<span class="sf-view-items-box">
|
|
674
|
+
<span class="sf-view-items ${l?"sf-view-items--edit":""}" data-items=${p} role="table"
|
|
675
|
+
aria-label=${e.label||p} style=${`--sf-view-items-columns: ${w}`}>
|
|
676
|
+
<span class="sf-view-items-head" role="row">
|
|
677
|
+
${n.map(e=>i.html`<span class="sf-view-items-heading ${u.mk.has(e.propertyType)?"sf-view-items-numeric":""}" role="columnheader">${e.label||e.key}${l&&e.required&&!e.compute?i.html`<span class="color-error" aria-hidden="true"> *</span>`:i.nothing}</span>`)}
|
|
678
|
+
${l?i.html`<span class="sf-view-items-heading" role="columnheader"></span>`:i.nothing}
|
|
679
|
+
</span>
|
|
680
|
+
${g.map((e,r)=>i.html`
|
|
681
|
+
<span class="sf-view-items-row" role="row" data-row=${r} aria-label=${h(c,"row",{n:r+1})}>
|
|
682
|
+
${n.map(t=>i.html`
|
|
683
|
+
<span class="sf-view-items-cell ${u.mk.has(t.propertyType)?"sf-view-items-numeric":""}" role="cell" data-column=${t.key}>
|
|
684
|
+
<span class="sf-view-items-cell-label color-on-surface-variant" aria-hidden="true">${t.label||t.key}</span>
|
|
685
|
+
${T(e,r,t)}
|
|
686
|
+
</span>`)}
|
|
687
|
+
${l?(e=>i.html`
|
|
688
|
+
<span class="sf-view-items-actions flex items-cross-center gap-1/4" role="cell">
|
|
689
|
+
<sf-button-icon size="1/2" appearance="link" scheme="secondary" icon="keyboard_arrow_up"
|
|
690
|
+
data-action="row-up" ?disabled=${0===e||e>=t.length}
|
|
691
|
+
title=${h(c,"rowUp")} aria-label=${h(c,"rowUp")}
|
|
692
|
+
@click=${()=>{const n=t.slice();[n[e-1],n[e]]=[n[e],n[e-1]],F(n)}}></sf-button-icon>
|
|
693
|
+
<sf-button-icon size="1/2" appearance="link" scheme="secondary" icon="keyboard_arrow_down"
|
|
694
|
+
data-action="row-down" ?disabled=${e>=t.length-1}
|
|
695
|
+
title=${h(c,"rowDown")} aria-label=${h(c,"rowDown")}
|
|
696
|
+
@click=${()=>{const n=t.slice();[n[e+1],n[e]]=[n[e],n[e+1]],F(n)}}></sf-button-icon>
|
|
697
|
+
<sf-button-icon size="1/2" appearance="link" scheme="secondary" icon="delete"
|
|
698
|
+
data-action="row-remove" ?disabled=${g.length<=f||e>=t.length}
|
|
699
|
+
title=${h(c,"removeRow")} aria-label=${h(c,"removeRow")}
|
|
700
|
+
@click=${()=>F(t.filter((t,n)=>n!==e))}></sf-button-icon>
|
|
701
|
+
</span>
|
|
702
|
+
`)(r):i.nothing}
|
|
703
|
+
</span>`)}
|
|
704
|
+
${v&&t.length?i.html`
|
|
705
|
+
<span class="sf-view-items-row sf-view-items-totals" role="row" data-totals="true">
|
|
706
|
+
${n.map((e,t)=>i.html`
|
|
707
|
+
<span class="sf-view-items-cell ${u.mk.has(e.propertyType)?"sf-view-items-numeric":""} ${Object.hasOwn(y,e.key)?"":"sf-view-items-cell--blank"}" role="cell" data-column=${e.key}>
|
|
708
|
+
${Object.hasOwn(y,e.key)?i.html`<span class="sf-view-items-cell-label color-on-surface-variant" aria-hidden="true">${h(c,"total")}: ${e.label||e.key}</span><span class="sf-view-items-text sf-view-items-total">${N(e,y[e.key],n,d)}</span>`:0===t?i.html`<span class="sf-view-items-text sf-view-items-total-word">${h(c,"total")}</span>`:i.nothing}
|
|
709
|
+
</span>`)}
|
|
710
|
+
${l?i.html`<span role="cell"></span>`:i.nothing}
|
|
711
|
+
</span>`:i.nothing}
|
|
712
|
+
${l?i.html`
|
|
713
|
+
<span class="sf-view-items-foot flex items-cross-center gap-1">
|
|
714
|
+
<sf-button appearance="outline" size=${r.size} icon="add" text=${h(c,"addRow")}
|
|
715
|
+
data-action="row-add" ?disabled=${g.length>=m}
|
|
716
|
+
@click=${()=>F([...g,{}])}></sf-button>
|
|
717
|
+
</span>`:i.nothing}
|
|
718
|
+
</span>
|
|
719
|
+
</span>
|
|
720
|
+
`}const M=new WeakMap;function V(e,t){M.has(e)||M.set(e,new Map);const n=M.get(e);return n.has(t)||n.set(t,new Map),n.get(t)}function I(e,t,n,r){return L(e,(0,u.RO)(t),(0,u.PL)(e),r,{editing:!0,host:n})}function B(e,t,n){const r=(0,u.RO)(t);return r.length?n.summary?i.html`<span class="sf-field-view">${C(0,r,(0,u.PL)(e),n)}</span>`:L(e,r,(0,u.PL)(e),n,{editing:!1,host:null}):i.nothing}const R={inn:12,kpp:9,ogrn:15,bik:9,account:20,corr_account:20};function U(e){const t=Array.isArray(e.parts)?e.parts.map(String):c.rS;return c.rS.filter(e=>t.includes(e))}function D(e){return(Array.isArray(e.parts)?e.parts:[]).map(e=>e&&"object"==typeof e?{...e,propertyType:e.propertyType||e.type}:null).filter(e=>e?.key)}function W(e){return e&&"object"==typeof e&&!Array.isArray(e)?e:{}}function K(e,t){const n={};for(const r of e){const e=t[r];null!=e&&""!==e&&(n[r]=e)}return Object.keys(n).length?n:null}function H(e,t,n,r){const a=r.node,s=String(e.key??""),l=U(e),o=W(t),u=(0,c.r5)(o,l),d=(t,r)=>{const i="kpp"===t?r.replace(/\s/gu,"").toUpperCase():r.replace(/\D/gu,""),s=K(l,{...o,[t]:i}),u=(0,c.r5)(s??{},l),d=null===s&&!0!==e.required;n.setFieldValue(e,s),n.setFieldError?.(e,!d&&Object.keys(u).length?h(a,u[Object.keys(u)[0]]):null)};return i.html`
|
|
721
|
+
<span class="sf-view-fields-compound grid gap-1 w-full min-w-0" data-compound=${s}>
|
|
722
|
+
${l.map(t=>{const n=`${s}.${t}`,l=$(a).has(n),c=0===Object.keys(o).length&&!0!==e.required,p=l&&!c&&u[t]?h(a,u[t]):"";return i.html`
|
|
723
|
+
<span class="sf-view-fields-part flex flex-col gap-1/4 min-w-0 ${"account"===t||"corr_account"===t?"sf-view-fields-part--wide":""}" data-part=${t}>
|
|
724
|
+
<span class="sf-view-fields-part-label color-on-surface-variant">${h(a,t)}${"inn"===t&&e.required?i.html`<span class="color-error" aria-hidden="true"> *</span>`:i.nothing}</span>
|
|
725
|
+
<sf-input
|
|
726
|
+
size=${r.size}
|
|
727
|
+
appearance="bordered"
|
|
728
|
+
inputmode=${"kpp"===t?"text":"numeric"}
|
|
729
|
+
maxlength=${String(R[t])}
|
|
730
|
+
value=${String(o[t]??"")}
|
|
731
|
+
?required=${"inn"===t&&!0===e.required}
|
|
732
|
+
?invalid=${Boolean(p)}
|
|
733
|
+
error-message=${p||i.nothing}
|
|
734
|
+
aria-label=${`${e.label||s}: ${h(a,t)}`}
|
|
735
|
+
@input=${e=>d(t,String(e.target?.value??""))}
|
|
736
|
+
@change=${e=>d(t,String(e.target?.value??""))}
|
|
737
|
+
@focusout=${()=>{$(a).add(n),w(a)}}
|
|
738
|
+
></sf-input>
|
|
739
|
+
</span>`})}
|
|
740
|
+
</span>
|
|
741
|
+
`}function G(e,t,n){const r=W(t);return U(e).filter(e=>r[e]).map(e=>`${h(n,e)} ${r[e]}`).join(", ")}function J(e,t,n){const r=G(e,t,n.node);return r?i.html`<span class="sf-field-view">${r}</span>`:i.nothing}function Y(e,t,n,r){const s=r.node,l=String(e.key??""),o=D(e),u=o.map(e=>e.key),c=W(t),d=V(s,l);return i.html`
|
|
742
|
+
<span class="sf-view-fields-compound grid gap-1 w-full min-w-0" data-compound=${l}>
|
|
743
|
+
${o.map(t=>{const s=`${l}.${t.key}`,o={...t,key:s,label:t.label||t.key,readonly:!0===e.readonly||!0===t.readonly},p={setFieldValue:(r,i)=>n.setFieldValue(e,K(u,{...c,[t.key]:i})),setFieldError:(t,r)=>{d.set(s,r||null);const i=[...d.values()].find(Boolean);n.setFieldError?.(e,i??null)}},f={...r,path:s},h=Q[t.propertyType]?.edit(o,c[t.key],p,f)??(0,a.z4)(o,c[t.key],p,{size:r.size});return i.html`
|
|
744
|
+
<span class="sf-view-fields-part flex flex-col gap-1/4 min-w-0 ${"full"===t.width?"sf-view-fields-part--wide":""}" data-part=${t.key}>
|
|
745
|
+
<span class="sf-view-fields-part-label color-on-surface-variant">${o.label}${t.required?i.html`<span class="color-error" aria-hidden="true"> *</span>`:i.nothing}</span>
|
|
746
|
+
${h??i.nothing}
|
|
747
|
+
</span>`})}
|
|
748
|
+
</span>
|
|
749
|
+
`}function Z(e,t,n){const r=W(t),s=D(e).filter(e=>null!==r[e.key]&&void 0!==r[e.key]&&""!==r[e.key]);return s.length?i.html`<span class="sf-field-view sf-view-fields-compound-view">${s.map((e,t)=>{const s=Q[e.propertyType]?.view({...e},r[e.key],n),l=s??(0,a.oX)({...e},r[e.key],n.viewHost,{size:n.size})??String(r[e.key]);return i.html`${t?", ":""}<span class="color-on-surface-variant">${e.label||e.key}</span> ${l}`})}</span>`:i.nothing}const Q={money:{edit:A,view:q},percent:{edit:_,view:T},items:{edit:I,view:B},compound:{edit:Y,view:Z},"ru.requisites":{edit:H,view:J}};function X(e,t,n,r,a){const s=Q[String(e.propertyType||e.type)];if(!s)return null;const l=n?null:a.viewHost?.formatFieldValue?.(e,t);return"string"==typeof l&&""!==l?i.html`<span class="sf-field-view">${l}</span>`:n&&!0!==e.readonly&&!0!==a.disabled&&r?.setFieldValue?s.edit(e,t,r,a):s.view(e,t,a)}r()}catch(ee){r(ee)}})},"2f31b00ad99a"(e,t,n){n.a(e,async(e,r)=>{try{n.d(t,{x:()=>p});var i=n("e577837dd70a"),a=e([i]),s=a.then?(await a)():a;i=s[0];const l=/^(\d{4})-(\d{2})-(\d{2})$/u,o=/^(\d{2}):(\d{2})(?::(\d{2})(?:\.\d+)?)?$/u,u=/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.\d+)?)?(Z|[+-]\d{2}:?\d{2})?$/u,c=new Set(["date","datetime","time"]);function d(e,t){const n=l.exec(t);if(n)return new Date(Number(n[1]),Number(n[2])-1,Number(n[3]));const r=o.exec(t);if(r)return"time"===e?new Date(2e3,0,1,Number(r[1]),Number(r[2]),Number(r[3]??0)):null;const i=u.exec(t);if(!i)return null;if(i[7]){const e=new Date(t.replace(" ","T"));return Number.isNaN(e.getTime())?null:e}return new Date(Number(i[1]),Number(i[2])-1,Number(i[3]),Number(i[4]),Number(i[5]),Number(i[6]??0))}function p(e,t,n){if(!c.has(e)||"string"!=typeof t||!t.trim())return"";const r=t.trim(),a=d(e,r);if(!a)return"";const s="date"!==e&&!l.test(r);return"time"===e?(0,i.Yq)(a,{date:null,time:"short",node:n}):(0,i.Yq)(a,{date:"medium",time:s?"short":null,node:n})}r()}catch(f){r(f)}})},"5b7d7695b41b"(e){e.exports=globalThis.SF&&globalThis.SF.runtimeModule?globalThis.SF.runtimeModule("element-manifest",1):new Promise((e,t)=>globalThis.addEventListener("sf-runtime-ready",()=>globalThis.SF.runtimeModule("element-manifest",1).then(e,t),{once:!0}))},e92fd2d1a38c(e){e.exports=globalThis.SF&&globalThis.SF.runtimeModule?globalThis.SF.runtimeModule("instance-path",1):new Promise((e,t)=>globalThis.addEventListener("sf-runtime-ready",()=>globalThis.SF.runtimeModule("instance-path",1).then(e,t),{once:!0}))},"073f05ff1a81"(e){e.exports=globalThis.SF&&globalThis.SF.runtimeModule?globalThis.SF.runtimeModule("lit/directives/unsafe-html.js",1):new Promise((e,t)=>globalThis.addEventListener("sf-runtime-ready",()=>globalThis.SF.runtimeModule("lit/directives/unsafe-html.js",1).then(e,t),{once:!0}))},"2a080a730149"(e){e.exports=globalThis.SF&&globalThis.SF.runtimeModule?globalThis.SF.runtimeModule("lit",1):new Promise((e,t)=>globalThis.addEventListener("sf-runtime-ready",()=>globalThis.SF.runtimeModule("lit",1).then(e,t),{once:!0}))},"43090d1c8307"(e){e.exports=globalThis.SF&&globalThis.SF.runtimeModule?globalThis.SF.runtimeModule("page-language",1):new Promise((e,t)=>globalThis.addEventListener("sf-runtime-ready",()=>globalThis.SF.runtimeModule("page-language",1).then(e,t),{once:!0}))},deb1a4d61565(e){e.exports=globalThis.SF&&globalThis.SF.runtimeModule?globalThis.SF.runtimeModule("smart-base",1):new Promise((e,t)=>globalThis.addEventListener("sf-runtime-ready",()=>globalThis.SF.runtimeModule("smart-base",1).then(e,t),{once:!0}))},e4c87bda9c30(e){e.exports=JSON.parse('{"id":"smart.view-flow","tag":"sf-view-flow","version":"1.1.0","kind":"leaf","settings":{"mode":{"type":"enum","values":["view","edit"],"default":"view"},"heading":{"type":"string","default":""},"heading-level":{"type":"enum","values":["2","3","4","5","6"],"default":"3"},"fields":{"type":"list","default":[],"of":{"key":"string","label":{"type":"string","optional":true},"propertyType":"string","value":{"type":"any","nullable":true,"optional":true},"required":{"type":"boolean","optional":true},"readonly":{"type":"boolean","optional":true},"width":{"type":"string","optional":true},"hint":{"type":"string","optional":true},"when":{"type":"object","optional":true}}},"groups":{"type":"list","default":[],"of":{"key":"string","label":{"type":"string","optional":true},"collapsible":{"type":"boolean","optional":true},"collapsed":{"type":"boolean","optional":true},"fields":"list"}},"state":{"type":"enum","values":["open","pending","accepted","declined","expired"],"default":"open"},"expires-at":{"type":"date","optional":true},"block-id":{"type":"id","default":""},"disabled":{"type":"boolean","default":false},"size":{"type":"enum","values":["1","1/2"],"default":"1/2"},"cancelable":{"type":"boolean","default":true},"submit-text":{"type":"string","default-from":"runtime.submit-text"},"cancel-text":{"type":"string","default-from":"runtime.cancel-text"},"empty-text":{"type":"string","default-from":"runtime.empty-text"},"required-text":{"type":"string","default-from":"runtime.required-text"},"invalid-text":{"type":"string","default-from":"runtime.invalid-text"}},"values":{},"events":{"answer":{"carries":{"id":{"type":"id"},"accepted":"boolean","values":{"type":"object","optional":true}},"cancelable":true},"expired":{"carries":{"id":{"type":"id"}},"own-verb":true},"open":{"carries":{"id":{"type":"id"},"field":"string","value":"object"}}},"actions":{"open":{},"answer":{"with":{"accepted":"boolean"},"emits":"answer"},"confirm":{},"cancel":{},"settle":{"with":{"result":"object"}}},"layer":{"kind":"surface","locks-page":false,"traps-focus":false},"host-states":{"data-state":"string"},"css-variables":{"--sf-view-flow-radius":{"type":"length","state":"default"},"--sf-view-flow-inset":{"type":"length","state":"default"},"--sf-view-flow-gap":{"type":"length","state":"default"},"--sf-view-flow-background-color":{"type":"color","state":"default"},"--sf-view-flow-border-color":{"type":"color","state":"default"}}}')},d69a23bed94c(e){e.exports=JSON.parse('{"title":"Flow block","runtime":{"accept-text":"Send","accepted-text":"Sent","accepting-text":"Sending…","block-label":"Properties","cancel-text":"Cancel","decline-text":"Cancel","declined-text":"Cancelled","declining-text":"Cancelling…","empty-text":"not filled in","expired-text":"The time to answer has passed","invalid-text":"Fill in the marked fields","required-text":"Fill in this field","submit-text":"Send","until-text":"Answer by {time}"},"events":{"expired":{"label":"Expired"}}}')},"09c52c5644c7"(e){e.exports=JSON.parse('{"title":"Блок в потоке","runtime":{"accept-text":"Отправить","accepted-text":"Отправлено","accepting-text":"Отправляем…","block-label":"Данные","cancel-text":"Отмена","decline-text":"Отмена","declined-text":"Отменено","declining-text":"Отменяем…","empty-text":"не заполнено","expired-text":"Время ответа истекло","invalid-text":"Заполните отмеченные поля","required-text":"Заполните поле","submit-text":"Отправить","until-text":"Ответить до {time}"},"events":{"expired":{"label":"Время истекло"}}}')}};const t={};function n(r){const i=t[r];if(void 0!==i)return i.exports;const a=t[r]={exports:{}};return e[r](a,a.exports,n),a.exports}(()=>{const e="function"==typeof Symbol,t=e?Symbol("webpack queues"):"__webpack_queues__",r=e?Symbol("webpack exports"):"__webpack_exports__",i=e?Symbol("webpack error"):"__webpack_error__",a=e=>{e?.d<1&&(e.d=1,e.forEach(e=>e.r--),e.forEach(e=>e.r--?e.r++:e()))};n.a=(e,n,s)=>{let l;s&&((l=[]).d=-1);const o=new Set,u=e.exports;let c,d,p;const f=new Promise((e,t)=>{p=t,d=e});f[r]=u,f[t]=e=>(l&&e(l),o.forEach(e),f.catch(e=>{})),e.exports=f;n(e=>{let n;c=(e=>e.map(e=>{if(null!==e&&"object"==typeof e){if(e[t])return e;if(e.then){const n=[];n.d=0,e.then(e=>{s[r]=e,a(n)},e=>{s[i]=e,a(n)});const s={};return s[t]=e=>e(n),s}}const n={};return n[t]=e=>{},n[r]=e,n}))(e);const s=()=>c.map(e=>{if(e[i])throw e[i];return e[r]}),u=new Promise(e=>{n=()=>e(s),n.r=0;const r=e=>e!==l&&!o.has(e)&&(o.add(e),e&&!e.d&&(n.r++,e.push(n)));c.map(e=>e[t](r))});return n.r?u:s()},e=>(e?p(f[i]=e):d(u),a(l))),l?.d<0&&(l.d=0)}})(),n.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{if(Array.isArray(t))for(var r=0;r<t.length;){var i=t[r++],a=t[r++];n.o(e,i)?0===a&&r++:0===a?Object.defineProperty(e,i,{enumerable:!0,value:t[r++]}):Object.defineProperty(e,i,{enumerable:!0,get:a})}else for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);n("9b9c0908a676")})();
|