@next-bricks/form 0.6.0 → 0.8.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.
Files changed (127) hide show
  1. package/dist/bricks.json +9 -3
  2. package/dist/chunks/1970.d03acec3.js +3 -0
  3. package/dist/chunks/{1970.1bf0f5c1.js.map → 1970.d03acec3.js.map} +1 -1
  4. package/dist/chunks/3494.46a2a943.js +2 -0
  5. package/dist/chunks/{3494.81238413.js.map → 3494.46a2a943.js.map} +1 -1
  6. package/dist/chunks/3914.8c8cac45.js +2 -0
  7. package/dist/chunks/3914.8c8cac45.js.map +1 -0
  8. package/dist/chunks/4131.2e43de8e.js +2 -0
  9. package/dist/chunks/4131.2e43de8e.js.map +1 -0
  10. package/dist/chunks/5202.8f6dfe2d.js +2 -0
  11. package/dist/chunks/{5202.e887583f.js.map → 5202.8f6dfe2d.js.map} +1 -1
  12. package/dist/chunks/7325.90c2d158.js +2 -0
  13. package/dist/chunks/7325.90c2d158.js.map +1 -0
  14. package/dist/chunks/737.1aa717c1.js +2 -0
  15. package/dist/chunks/737.1aa717c1.js.map +1 -0
  16. package/dist/chunks/7822.71579dbc.js +2 -0
  17. package/dist/chunks/{7822.8c36398f.js.map → 7822.71579dbc.js.map} +1 -1
  18. package/dist/chunks/873.2b11a4db.js +2 -0
  19. package/dist/chunks/{873.cc3010b0.js.map → 873.2b11a4db.js.map} +1 -1
  20. package/dist/chunks/{8826.4444fb49.js → 9223.c35f1d9a.js} +2 -2
  21. package/dist/chunks/9223.c35f1d9a.js.map +1 -0
  22. package/dist/chunks/9351.e05442c4.js +2 -0
  23. package/dist/chunks/9351.e05442c4.js.map +1 -0
  24. package/dist/chunks/9549.35485e5a.js +2 -0
  25. package/dist/chunks/{9549.530da202.js.map → 9549.35485e5a.js.map} +1 -1
  26. package/dist/chunks/{code-editor.c7e4ccfa.js → code-editor.85b3ad33.js} +2 -2
  27. package/dist/chunks/code-editor.85b3ad33.js.map +1 -0
  28. package/dist/chunks/dynamic-form-item.92484a7f.js +2 -0
  29. package/dist/chunks/dynamic-form-item.92484a7f.js.map +1 -0
  30. package/dist/chunks/general-checkbox.997a7827.js +3 -0
  31. package/dist/chunks/general-checkbox.997a7827.js.map +1 -0
  32. package/dist/chunks/general-form-item.9a3d11f7.js +3 -0
  33. package/dist/chunks/general-form-item.9a3d11f7.js.map +1 -0
  34. package/dist/chunks/general-form.4d14b937.js +2 -0
  35. package/dist/chunks/general-form.4d14b937.js.map +1 -0
  36. package/dist/chunks/general-input.b61b949e.js +3 -0
  37. package/dist/chunks/general-input.b61b949e.js.map +1 -0
  38. package/dist/chunks/general-radio.c0e646e6.js +3 -0
  39. package/dist/chunks/general-radio.c0e646e6.js.map +1 -0
  40. package/dist/chunks/general-select.73da9dc8.js +3 -0
  41. package/dist/chunks/general-select.73da9dc8.js.map +1 -0
  42. package/dist/chunks/general-textarea.82fcd5ff.js +3 -0
  43. package/dist/chunks/general-textarea.82fcd5ff.js.map +1 -0
  44. package/dist/chunks/icon-select.4a1e136f.js +3 -0
  45. package/dist/chunks/icon-select.4a1e136f.js.map +1 -0
  46. package/dist/chunks/main.92315fdf.js +2 -0
  47. package/dist/chunks/main.92315fdf.js.map +1 -0
  48. package/dist/chunks/submit-buttons.95d58206.js +2 -0
  49. package/dist/chunks/submit-buttons.95d58206.js.map +1 -0
  50. package/dist/chunks/upload-image.4cb5e7d4.js +3 -0
  51. package/dist/chunks/upload-image.4cb5e7d4.js.LICENSE.txt +5 -0
  52. package/dist/chunks/upload-image.4cb5e7d4.js.map +1 -0
  53. package/dist/index.5dee6e52.js +2 -0
  54. package/dist/index.5dee6e52.js.map +1 -0
  55. package/dist/manifest.json +147 -93
  56. package/dist-types/bootstrap.d.ts +1 -0
  57. package/dist-types/checkbox/index.d.ts +2 -2
  58. package/dist-types/code-editor/index.d.ts +2 -2
  59. package/dist-types/dynamic-form-item/index.d.ts +2 -2
  60. package/dist-types/form/index.d.ts +3 -3
  61. package/dist-types/form-item/index.d.ts +3 -4
  62. package/dist-types/icon-select/index.d.ts +2 -2
  63. package/dist-types/input/index.d.ts +2 -2
  64. package/dist-types/radio/index.d.ts +2 -2
  65. package/dist-types/select/index.d.ts +2 -2
  66. package/dist-types/submit-buttons/index.d.ts +2 -2
  67. package/dist-types/textarea/calculateAutoSizeStyle.d.ts +1 -0
  68. package/dist-types/textarea/index.d.ts +2 -2
  69. package/dist-types/upload/Upload.d.ts +22 -0
  70. package/dist-types/upload/Upload.spec.d.ts +1 -0
  71. package/dist-types/upload/upload-image/i18n.d.ts +13 -0
  72. package/dist-types/upload/upload-image/index.d.ts +55 -0
  73. package/dist-types/upload/upload-image/index.spec.d.ts +1 -0
  74. package/dist-types/upload/utils.d.ts +27 -0
  75. package/docs/upload-image.md +14 -0
  76. package/package.json +2 -2
  77. package/dist/chunks/1970.1bf0f5c1.js +0 -3
  78. package/dist/chunks/3494.81238413.js +0 -2
  79. package/dist/chunks/3914.2e2d5e08.js +0 -2
  80. package/dist/chunks/3914.2e2d5e08.js.map +0 -1
  81. package/dist/chunks/4131.cd33579d.js +0 -2
  82. package/dist/chunks/4131.cd33579d.js.map +0 -1
  83. package/dist/chunks/4795.90b6991e.js +0 -2
  84. package/dist/chunks/4795.90b6991e.js.map +0 -1
  85. package/dist/chunks/5202.e887583f.js +0 -2
  86. package/dist/chunks/7822.8c36398f.js +0 -2
  87. package/dist/chunks/873.cc3010b0.js +0 -2
  88. package/dist/chunks/8826.4444fb49.js.map +0 -1
  89. package/dist/chunks/8971.3c456032.js +0 -2
  90. package/dist/chunks/8971.3c456032.js.map +0 -1
  91. package/dist/chunks/9549.530da202.js +0 -2
  92. package/dist/chunks/code-editor.c7e4ccfa.js.map +0 -1
  93. package/dist/chunks/dynamic-form-item.3422b9a9.js +0 -2
  94. package/dist/chunks/dynamic-form-item.3422b9a9.js.map +0 -1
  95. package/dist/chunks/general-checkbox.6e66bf0c.js +0 -3
  96. package/dist/chunks/general-checkbox.6e66bf0c.js.map +0 -1
  97. package/dist/chunks/general-form-item.c64f3d47.js +0 -3
  98. package/dist/chunks/general-form-item.c64f3d47.js.map +0 -1
  99. package/dist/chunks/general-form.c99d1966.js +0 -2
  100. package/dist/chunks/general-form.c99d1966.js.map +0 -1
  101. package/dist/chunks/general-input.75439cfd.js +0 -3
  102. package/dist/chunks/general-input.75439cfd.js.map +0 -1
  103. package/dist/chunks/general-radio.d3d10247.js +0 -3
  104. package/dist/chunks/general-radio.d3d10247.js.map +0 -1
  105. package/dist/chunks/general-select.9b116d99.js +0 -3
  106. package/dist/chunks/general-select.9b116d99.js.map +0 -1
  107. package/dist/chunks/general-textarea.cd20b779.js +0 -3
  108. package/dist/chunks/general-textarea.cd20b779.js.map +0 -1
  109. package/dist/chunks/icon-select.17e7993f.js +0 -3
  110. package/dist/chunks/icon-select.17e7993f.js.map +0 -1
  111. package/dist/chunks/main.3078c5a8.js +0 -2
  112. package/dist/chunks/main.3078c5a8.js.map +0 -1
  113. package/dist/chunks/submit-buttons.c0d01f4c.js +0 -2
  114. package/dist/chunks/submit-buttons.c0d01f4c.js.map +0 -1
  115. package/dist/index.2550b502.js +0 -2
  116. package/dist/index.2550b502.js.map +0 -1
  117. package/dist-types/form/formStore.d.ts +0 -53
  118. package/dist-types/form-item/FormItemElement.d.ts +0 -22
  119. package/dist-types/utils/PubSub.d.ts +0 -6
  120. /package/dist/chunks/{1970.1bf0f5c1.js.LICENSE.txt → 1970.d03acec3.js.LICENSE.txt} +0 -0
  121. /package/dist/chunks/{general-checkbox.6e66bf0c.js.LICENSE.txt → general-checkbox.997a7827.js.LICENSE.txt} +0 -0
  122. /package/dist/chunks/{general-form-item.c64f3d47.js.LICENSE.txt → general-form-item.9a3d11f7.js.LICENSE.txt} +0 -0
  123. /package/dist/chunks/{general-input.75439cfd.js.LICENSE.txt → general-input.b61b949e.js.LICENSE.txt} +0 -0
  124. /package/dist/chunks/{general-radio.d3d10247.js.LICENSE.txt → general-radio.c0e646e6.js.LICENSE.txt} +0 -0
  125. /package/dist/chunks/{general-select.9b116d99.js.LICENSE.txt → general-select.73da9dc8.js.LICENSE.txt} +0 -0
  126. /package/dist/chunks/{general-textarea.cd20b779.js.LICENSE.txt → general-textarea.82fcd5ff.js.LICENSE.txt} +0 -0
  127. /package/dist/chunks/{icon-select.17e7993f.js.LICENSE.txt → icon-select.4a1e136f.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunk_next_bricks_form=self.webpackChunk_next_bricks_form||[]).push([[8826],{3831:(e,t,r)=>{r.d(t,{a:()=>$});var n=r(8657),a=r.n(n),o=r(1291),i=r(5178),s=r(4778),l=r.n(s),c=r(2779),u=r.n(c),d=r(2308),g=r.n(d),p=r(6023),m=r(3028),h=e=>{var t={};return(0,i.forEach)((e=>({placeholder:[{token:"support.class.builtin.js",regex:"\\b(?:EVENT|DATA|PIPES|PARAMS|PATH|QUERY(?:_ARRAY)?|APP|HASH|ANCHOR|SYS|FLAGS|I18N|CTX|SEGUE|ALIAS|PROCESSORS|IMG|PERMISSIONS|LOCAL_STORAGE|SESSION_STORAGE|MISC|TAG_URL|SAFE_TAG_URL|FN|BASE_URL|PATH_NAME|STATE|DS|TPL)\\b"},{token:"placeholder.end",regex:"\\s%>",next:"placeholderEnd"}],placeholderEnd:[{token:"string",regex:"['|\"]*",next:"start"},{defaultToken:"string"}],transform:[{token:"paren.rparen",regex:"\\}",next:"placeholderEnd"},{include:["field"]},{token:"expression.assign-default.placeholder",regex:"=",next:"assignDefault"},{token:"keyword.operator.expression.pipe.placeholder",regex:"\\|",next:"pipe"}],field:[{token:"support.variable.field",regex:"(?:[a-zA-Z_\\-0-9\\.\\*\\[\\]]+)"}],assignDefault:[{include:["value","literal"]},{token:"expression.assign-default.placeholder",regex:"(?=[\\|\\}])",next:"transform"}],literal:[{token:"literal.string",regex:"[a-zA-Z_\\-0-9]+"}],pipe:[{token:"expression.pipe.placeholder",regex:"(?=\\})",next:"transform"},{token:"expression.pipe-parameter.placeholder",regex:":",next:"pipeParameter"},{include:["identifier"]},{token:"keyword.operator.expression.pipe.placeholder",regex:"\\|",next:"pipe"}],pipeParameter:[{token:"expression.pipe-parameter.placeholder",regex:"(?=[\\|\\}])",next:"pipe"},{include:["value"]}],identifier:[{token:"support.function",regex:"[a-zA-Z]\\w*",next:"pipe"}],value:[{include:["constant","number"]},{token:"string.quoted.double.json",regex:"Double"===e?'\\\\"':'"',next:"stringValue"},{token:"meta.structure.array.json",regex:"\\[",next:"arrayValue"},{token:"meta.structure.dictionary.json",regex:"\\{",next:"objectValue"}],constant:[{token:"constant.language.json",regex:"\\b(?:true|false|null)\\b"}],number:[{token:"constant.numeric.json",regex:"-?(?:0|[1-9]\\d*)(?:(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)?"}],stringValue:[{token:"constant.character.escape.json",regex:"Double"===e?'\\\\\\\\(?:["/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\)':"Single"===e?"\\\\\\\\(?:['/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\)":"\\\\\\\\(?:['|\"/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\)"},{token:"invalid.illegal.unrecognized-string-escape.json",regex:"\\\\\\\\."},{token:"string.quoted.double.json",regex:"Double"===e?'\\\\"':'"',next:"value"}],arrayValue:[{include:["value"]},{token:"punctuation.separator.array.json",regex:","},{token:"invalid.illegal.expected-array-separator.json",regex:"[^\\s\\]]"},{token:"meta.structure.array.json",regex:"(,)?[\\s]*(\\])",next:"value"}],objectValue:[{include:["stringValue"]},{token:"meta.structure.dictionary.value.json",regex:":",next:"dictionaryValue"},{token:"invalid.illegal.expected-dictionary-separator.json",regex:"[^\\s\\}]"},{token:"meta.structure.dictionary.json",regex:"\\}",next:"value"}],dictionaryValue:[{token:"meta.structure.dictionary.value.json",regex:"(,)(?=[\\s]*\\})|(,)|(?=\\})",next:"objectValue"},{include:["value"]},{token:"invalid.illegal.expected-dictionary-separator.json",regex:"[^\\s,]"}]}))(e),((r,n)=>{t["brickNext".concat(e,"-").concat(n)]=(0,i.map)(r,(t=>(null!=t&&t.next&&"start"!==(null==t?void 0:t.next)&&(t.next="brickNext".concat(e,"-").concat(t.next)),null!=t&&t.include&&(t.include=(0,i.map)(t.include,(t=>"brickNext".concat(e,"-").concat(t)))),t)))})),t},x=e=>[{token:"placeholder.start",regex:"(<%)(~?)(\\s|$)",push:"brickNext".concat(e,"-jscode-start")},{token:"paren.lparen",regex:"(@)(\\{)",next:"brickNext".concat(e,"-transform")}],v=(0,m.Z)((0,m.Z)((0,m.Z)({},h("Single")),h("Double")),h("Unquoted")),f=r(5095),k=r.n(f);r(9910),r(8170),r(3298),r(1850),r(6854),r(21),r(669),r(8995),r(900),r(5898),r(8398),r(7216),r(3486),r(1323),r(6110),r(6775);var b,y=[{label:"${}",caption:"${}",snippet:"${${0}}",meta:"placeholder"},{label:"<% %>",caption:"<% %>",snippet:"<% ${0} %>",meta:"placeholder"},{label:"@{}",caption:"@{}",snippet:"@{${0}}",meta:"transform"}],w=["EVENT","DATA","PIPES","PARAMS","PATH","QUERY","QUERY_ARRAY","APP","HASH","ANCHOR","SYS","FLAGS","I18N","CTX","SEGUE","ALIAS","PROCESSORS","IMG","PERMISSIONS","LOCAL_STORAGE","SESSION_STORAGE","MISC","TAG_URL","SAFE_TAG_URL","FN","BASE_URL","PATH_NAME","STATE","action","target","method","targetRef"],E=[{identifierRegexps:[/[a-zA-Z_0-9@<$\-\u00A2-\u2000\u2070-\uFFFF]/],getCompletions(e,t,r,n,a){a(null,y)}},{getCompletions(e,t,r,n,a){a(null,w.map((e=>({caption:e,value:e,meta:"variable",score:20}))))}},{getCompletions(e,t,r,n,a){var o,s=t.getLine(r.row).substr(0,r.column);/action(["']?)([\s]*):/.test(s)?a(null,(null!==(o=(0,i.get)(null!=p?p:{},"definitions.BuiltinBrickEventHandler.properties.action.enum"))&&void 0!==o?o:[]).map((e=>({caption:e,value:e,meta:"event action",score:10})))):a(null,[])}}],S=r(2159),A=["keyword"],C={keyword:"in|as|break|const|continue|else|for|function|if|import|let|loop|package|namespace|return|var|void|while","constant.language":"null","constant.language.boolean":"true|false","support.function":"bytes|double|duration|dyn|int|bool|matches|size|string|timestamp|type|uint|round|base64|has|printf|isEmpty|repeatArray|mergeList|fieldNotEmpty|hasOrDefault|trinocular|traceId|SHA1|random|random_string|now"},_={"support.variable":"variable|variable_noload|request|body|query|uri|header|step|config|output|input","support.function":"contains|endsWith|matches|startsWith|getDate|getDayOfMonth|getDayOfWeek|getDayOfYear|getFullYear|getHours|getMilliseconds|getMinutes|getMonth|getSeconds|charAt|indexOf|lastIndexOf|lowerAscii|replace|split|join|substring|trim|upperAscii|all|exists|exists_one|map|filter|decodeb64|truncate|parseJSON|parseYAML|parseURL|isBlank|marshalJSON|marshalYAML|merge|repeat|match|canonical|convertMap|fuse|remove|setAttr|parseDate|format"},R=[{label:"<% %>",caption:"<% %>",snippet:"<% ${0} %>",meta:"placeholder"}],T=[{getCompletions(e,t,r,n,a){a(null,function(){if(!b){var{keyword:e}=C,t=(0,S.Z)(C,A);b=Object.values(t).concat(Object.values(_)).flatMap((e=>e.split("|")))}return b}().map((e=>"string"==typeof e?{caption:e,value:e}:e)))}},{identifierRegexps:[/[a-zA-Z_0-9@<$\-\u00A2-\u2000\u2070-\uFFFF]/],getCompletions(e,t,r,n,a){a(null,R)}}];function M(){var{yamlContext:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=q(C,"identifier"),r=q(_,"identifier"),n="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8}|[0-3][0-7]{0,2}|.)",a="[_a-zA-Z]\\w*",o=e?"cel-".concat(e,"-"):"";return{["".concat(o,"start")]:[..."multi-line"===e?[{token:"indent",regex:/^\s*$/},{token:"indent",regex:/^\s*/,onMatch:function(e,t,r){return r[1]>=e.length?(this.next="start",r.splice(0)):this.next="".concat(o,"start"),this.token},next:"".concat(o,"start")}]:[],{token:"comment",regex:"//.*$"},..."single-quoted"===e?[{token:"string",regex:"'",next:"start"}]:[{token:"string",regex:"'''",next:"".concat(o,"tqstring")},{token:["keyword.other","string"],regex:"([bB]?[rR])(')(?=.)",next:"".concat(o,"rawqstring")},{token:["keyword.other","string"],regex:"([bB]?)(')(?=.)",next:"".concat(o,"qstring")}],..."double-quoted"===e?[{token:"string",regex:'"',next:"start"}]:[{token:"string",regex:'"""',next:"".concat(o,"tqqstring")},{token:["keyword.other","string"],regex:'([bB]?[rR])(")(?=.)',next:"".concat(o,"rawqqstring")},{token:["keyword.other","string"],regex:'([bB]?)(")(?=.)',next:"".concat(o,"qqstring")}],{token:"constant.numeric",regex:"-?(?:\\d+|0x[0-9a-fA-F]+)[uU]?\\b"},{token:"constant.numeric",regex:"-?\\d*(?:\\.\\d+(?:[eE][+-]?\\d+)?|\\d[eE][+-]?\\d+)\\b"},{token:t,regex:a},{token:"punctuation.operator",regex:"\\.(?!\\.)",next:"".concat(o,"property")},{token:"keyword.operator",regex:"==|!=|<=?|>=?|!|&&|\\|\\||\\?:|[-!%*+/]"},{token:"punctuation.operator",regex:"[?:,.]"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"}],["".concat(o,"property")]:[{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:"\\.(?!\\.)"},{token:r,regex:a},{token:"empty",regex:"",next:"".concat(o,"start")}],["".concat(o,"qqstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:'"|$',next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"qstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:"'|$",next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"rawqqstring")]:[{token:"string",regex:'"|$',next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"rawqstring")]:[{token:"string",regex:"'|$",next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"tqqstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:'"""',next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"tqstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:"'''",next:"".concat(o,"start")},{defaultToken:"string"}]}}function q(e,t){var r=new Map;for(var[n,a]of Object.entries(e))for(var o of a.split("|"))r.set(o,n);return e=>{var n;return null!==(n=r.get(e))&&void 0!==n?n:t}}var F=/^[-\w]+(\\\.[-\w]+)*$/;function j(e,t,r,n,a,o,i){var s="";if("action"===e)switch(a){case"context.assign":case"context.replace":case"context.load":case"context.refresh":s="storyboard-context-action";break;case"state.update":case"state.load":case"state.refresh":s="storyboard-state-action"}else"_self"!==a&&"null"!==a&&F.test(a)&&(s="storyboard-tag-name-as-target");var l=s?o.find((e=>e.type===s)):null;l&&i.push([l,a,t,r,t,n])}var O=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl";function N(e,t,r){if(n=e.domEvent,a=O,o=Array.isArray(a)?a:[a],!D.some((e=>Number(o.includes(e))^Number(!!n["".concat(e,"Key")])))){var n,a,o,{row:i,column:s}=e.getDocumentPosition(),l=null==r?void 0:r.find((e=>i===e.startRow&&s>=e.startCol&&s<=e.endCol));return l&&t.includes(l.highlightType)?l:void 0}}var D=["ctrl","alt","shift","meta"],Z=r(7209);function L(e,t){var[r,s]=(0,n.useState)(),[c,d]=(0,n.useState)(),[f,b]=(0,n.useState)(e.jsonSchema),y=(0,n.useRef)([]),w=(0,n.useRef)(!1),S=(0,n.useRef)(null),[A,C]=(0,n.useState)();(0,n.useEffect)((()=>{var t=e.jsonSchema;["brick_next","brick_next_yaml"].includes(e.mode)&&!e.jsonSchema&&(t=p),(0,i.isEqual)(t,f)||b(t)}),[e.jsonSchema,e.mode]);var _=t=>{var n=[];try{var a,o,s;if(null!=w&&w.current||(c.compile(f),w.current=!0),c.validate(null!==(a=e.schemaRef)&&void 0!==a?a:f,t))y.current=[];else if((0,i.isEqual)(null===(o=y.current)||void 0===o||null===(s=o[0])||void 0===s?void 0:s.raw,c.errors)){var l;n=null!==(l=y.current)&&void 0!==l?l:[]}else{var u,d=r.getCursorPosition(),g=null===(u=(0,i.uniqWith)(c.errors,((e,t)=>t.dataPtah===e.dataPtah&&t.message===e.message)))||void 0===u?void 0:u.map((e=>{var t="."===e.dataPath[0]?e.dataPath.slice(1):e.dataPath;return"".concat(t?t+": ":"").concat(e.message)})).join("\n");n=[{row:d.row,column:d.column,type:e.validateJsonSchemaMode,text:g,raw:c.errors}],y.current=n}}catch(e){}return n},R=(0,n.useMemo)((()=>({getCompletions(t,r,n,a,o){o(null,(0,i.map)(e.customCompleters,(e=>(0,i.isString)(e)?{caption:e,value:e}:e)))}})),[e.customCompleters]);(0,n.useEffect)((()=>{var t;return r&&r.completers&&null!==(t=e.customCompleters)&&void 0!==t&&t.length&&r.completers.push(R),()=>{if(r&&r.completers){var e=r.completers.indexOf(R);-1!==e&&r.completers.splice(e,1)}}}),[r,R,e.customCompleters]),(0,n.useEffect)((()=>{if(("yaml"===e.mode||"brick_next_yaml"===e.mode||"cel_yaml"===e.mode)&&r){var t,n,a=(()=>{var t=[],n=[];if(e.value)try{var a=g().safeLoad(e.value,{schema:g().JSON_SCHEMA,json:!0});f&&(n=_(a))}catch(e){var o,i,s,l=r.getLastVisibleRow();t=[{row:(null===(o=e.mark)||void 0===o?void 0:o.line)>l?l:null===(i=e.mark)||void 0===i?void 0:i.line,column:null===(s=e.mark)||void 0===s?void 0:s.column,type:"error",text:e.reason,raw:e}]}return[...t,...n]})(),o=null==r||null===(t=r.getSession())||void 0===t?void 0:t.getAnnotations();(0,i.isEqual)(o,a)||null===(n=r.getSession())||void 0===n||n.setAnnotations(a)}}),[e.value,e.mode]),(0,n.useEffect)((()=>{if(e.mode&&["brick_next","brick_next_yaml","cel_yaml","json","yaml"].includes(e.mode)&&f){var t=new(l())({schemaId:"auto",$data:!0});d(t)}}),[e.mode,f]),(0,n.useEffect)((()=>{r&&"json"===e.mode&&C("text")}),[f]),(0,n.useEffect)((()=>{A&&C(void 0)}),[A]);(0,n.useEffect)((()=>{if(r)if(r.completers&&(r.completers=[...r.completers]),"brick_next_yaml"===e.mode){var t,n,a,o=new(function(){var e=k().require("ace/mode/javascript_highlight_rules").JavaScriptHighlightRules;class t extends k().require("ace/mode/yaml_highlight_rules").YamlHighlightRules{constructor(){super();var t=this.$rules;t.start.unshift(...x("Unquoted"));var r=(0,i.findIndex)(t.start,["token","string"]);t.start.splice(r,0,{token:"string.start",regex:'"',next:"doubleQuotedToBrickNextEntry"},{token:"string.start",regex:"'",next:"singleQuotedToBrickNextEntry"}),t.mlString.unshift(...x("Unquoted")),t=(0,m.Z)((0,m.Z)((0,m.Z)({},t),v),{},{doubleQuotedToBrickNextEntry:[...x("Double"),{token:"string",regex:'"',next:"start"},{defaultToken:"string"}],singleQuotedToBrickNextEntry:[...x("Single"),{token:"string",regex:"'",next:"start"},{defaultToken:"string"}]}),this.$rules=(0,m.Z)({},t),this.embedRules(e,"brickNextSingle-jscode-",[{include:["brickNextSingle-placeholder"]}]),this.embedRules(e,"brickNextDouble-jscode-",[{include:["brickNextDouble-placeholder"]}]),this.embedRules(e,"brickNextUnquoted-jscode-",[{include:["brickNextUnquoted-placeholder"]}]),this.normalizeRules()}}return class extends k().require("ace/mode/yaml").Mode{constructor(){super(),this.HighlightRules=t}}}());null===(t=r.getSession())||void 0===t||t.setMode(o),null!==(n=r.completers)&&void 0!==n&&n.includes(E[0])||null===(a=r.completers)||void 0===a||a.push(...E)}else if("brick_next"===e.mode){var s,l,c,u=new(function(){var e=k().require("ace/mode/javascript_highlight_rules").JavaScriptHighlightRules;class t extends k().require("ace/mode/json_highlight_rules").JsonHighlightRules{constructor(){super();var t=this.$rules;t.string.unshift(...x("Double")),t=(0,m.Z)((0,m.Z)({},t),h("Double")),this.$rules=(0,m.Z)({},t),this.embedRules(e,"brickNextDouble-jscode-",[{include:["brickNextDouble-placeholder"]}]),this.normalizeRules()}}return class extends k().require("ace/mode/json").Mode{constructor(){super(),this.HighlightRules=t}}}());null===(s=r.getSession())||void 0===s||s.setMode(u),null!==(l=r.completers)&&void 0!==l&&l.includes(E[0])||null===(c=r.completers)||void 0===c||c.push(...E)}else if("terraform"===e.mode){var d,g=new(function(){var e=k().require("ace/mode/behaviour/cstyle").CstyleBehaviour,t=k().require("ace/mode/folding/cstyle").FoldMode,r=k().require("ace/mode/matching_brace_outdent").MatchingBraceOutdent;class n extends k().require("ace/mode/text_highlight_rules").TextHighlightRules{constructor(){super(),this.$rules={start:[{token:["storage.function.terraform"],regex:"\\b(output|resource|data|variable|module|export)\\b"},{token:"variable.terraform",regex:"\\$\\s",push:[{token:"keyword.terraform",regex:"(-var-file|-var)"},{token:"variable.terraform",regex:"\\n|$",next:"pop"},{include:"strings"},{include:"variables"},{include:"operators"},{defaultToken:"text"}]},{token:"language.support.class",regex:"\\b(timeouts|provider|connection|provisioner|lifecycleprovider|atlas)\\b"},{token:"singleline.comment.terraform",regex:"#(.)*$"},{token:"multiline.comment.begin.terraform",regex:"^\\s*\\/\\*",push:"blockComment"},{token:"storage.function.terraform",regex:"^\\s*(locals|terraform)\\s*{"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{include:"constants"},{include:"strings"},{include:"operators"},{include:"variables"}],blockComment:[{regex:"^\\s*\\/\\*",token:"multiline.comment.begin.terraform",push:"blockComment"},{regex:"\\*\\/\\s*$",token:"multiline.comment.end.terraform",next:"pop"},{defaultToken:"comment"}],constants:[{token:"constant.language.terraform",regex:"\\b(true|false|yes|no|on|off|EOF)\\b"},{token:"constant.numeric.terraform",regex:"(\\b([0-9]+)([kKmMgG]b?)?\\b)|(\\b(0x[0-9A-Fa-f]+)([kKmMgG]b?)?\\b)"}],variables:[{token:["variable.assignment.terraform","keyword.operator"],regex:"\\b([a-zA-Z_]+)(\\s*=)"}],interpolated_variables:[{token:"variable.terraform",regex:"\\b(var|self|count|path|local)\\b(?:\\.*[a-zA-Z_-]*)?"}],strings:[{token:"punctuation.quote.terraform",regex:"'",push:[{token:"punctuation.quote.terraform",regex:"'",next:"pop"},{include:"escaped_chars"},{defaultToken:"string"}]},{token:"punctuation.quote.terraform",regex:'"',push:[{token:"punctuation.quote.terraform",regex:'"',next:"pop"},{include:"interpolation"},{include:"escaped_chars"},{defaultToken:"string"}]}],escaped_chars:[{token:"constant.escaped_char.terraform",regex:"\\\\."}],operators:[{token:"keyword.operator",regex:"\\?|:|==|!=|>|<|>=|<=|&&|\\|\\||!|%|&|\\*|\\+|\\-|/|="}],interpolation:[{token:"punctuation.interpolated.begin.terraform",regex:"\\$?\\$\\{",push:[{token:"punctuation.interpolated.end.terraform",regex:"\\}",next:"pop"},{include:"interpolated_variables"},{include:"operators"},{include:"constants"},{include:"strings"},{include:"functions"},{include:"parenthesis"},{defaultToken:"punctuation"}]}],functions:[{token:"keyword.function.terraform",regex:"\\b(abs|basename|base64decode|base64encode|base64gzip|base64sha256|base64sha512|bcrypt|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|coalesce|coalescelist|compact|concat|contains|dirname|distinct|element|file|floor|flatten|format|formatlist|indent|index|join|jsonencode|keys|length|list|log|lookup|lower|map|matchkeys|max|merge|min|md5|pathexpand|pow|replace|rsadecrypt|sha1|sha256|sha512|signum|slice|sort|split|substr|timestamp|timeadd|title|transpose|trimspace|upper|urlencode|uuid|values|zipmap)\\b"}],parenthesis:[{token:"paren.lparen",regex:"\\["},{token:"paren.rparen",regex:"\\]"}]},this.normalizeRules()}}return class extends k().require("ace/mode/text").Mode{constructor(){super(),this.HighlightRules=n,this.$outdent=new r,this.$behaviour=new e,this.foldingRules=new t}}}());null===(d=r.getSession())||void 0===d||d.setMode(g)}else if("cel_yaml"===e.mode){var p,f,b,y=new(function(){class e extends k().require("ace/mode/yaml_highlight_rules").YamlHighlightRules{constructor(){super();var e=this.$rules;this.$rules=Object.fromEntries(Object.entries(e).filter((e=>"mlString"!==e[0])).map((e=>{var[t,r]=e;if("start"===t){var n=r.findIndex((e=>"string"===e.token));return[t,[...r.slice(0,n).filter((e=>"string"!==e.token)),{token:"string",regex:'"',next:"cel-double-quoted-start"},{token:"string",regex:"'",next:"cel-single-quoted-start"},{token:"string",regex:/[|>][-+\d\s]*$/,onMatch:function(e,t,r,n){var a,o,i=null!==(a=null===(o=/^\s*/.exec(n))||void 0===o?void 0:o[0])&&void 0!==a?a:"";return r.length<1?r.push(this.next):r[0]="cel-multi-line-start",r.length<2?r.push(i.length):r[1]=i.length,this.token},next:"cel-multi-line-start"},...r.slice(n+1).filter((e=>"string"!==e.token))]]}return[t,r]})).concat(Object.entries(M({yamlContext:"multi-line"})),Object.entries(M({yamlContext:"double-quoted"})),Object.entries(M({yamlContext:"single-quoted"})))),this.normalizeRules()}}return class extends k().require("ace/mode/yaml").Mode{constructor(){super(),this.HighlightRules=e}}}());null===(p=r.getSession())||void 0===p||p.setMode(y),null!==(f=r.completers)&&void 0!==f&&f.includes(T[0])||null===(b=r.completers)||void 0===b||b.push(...T)}else if("cel"===e.mode){var w,S,A,C=new(function(){class e extends k().require("ace/mode/text_highlight_rules").TextHighlightRules{constructor(){super(),this.$rules=M(),this.normalizeRules()}}return class extends k().require("ace/mode/text").Mode{constructor(){super(),this.HighlightRules=e}}}());null===(w=r.getSession())||void 0===w||w.setMode(C),null!==(S=r.completers)&&void 0!==S&&S.includes(T[0])||null===(A=r.completers)||void 0===A||A.push(...T)}}),[r,e.mode]);var[q,F]=(0,n.useState)(),O=(0,n.useCallback)((()=>{F(function(e){var{editor:t,markerClassMap:r,highlightTokens:n}=e;if(!t||null==n||!n.length)return[];for(var a=t.session.getLength(),o="initial",i=[],s=0,l={},c="",u="",d=0;d<a;d++){var g=t.session.getTokens(d),p=0,m=0,h=function(){switch(x.type){case"identifier":"dot"===o&&i.push([l,x.value,d,s===d?m:p,d,p+x.value.length]),o="initial";break;case"punctuation.operator":o="namespace"===o&&"."===x.value?"dot":"initial";break;case"support.class.builtin.js":if("initial"===o){var e="FN"===x.value?"storyboard-function":"CTX"===x.value?"storyboard-context":"STATE"===x.value?"storyboard-state":"TPL"===x.value?"storyboard-tpl-var":"PATH"===x.value||"PATH_NAME"===x.value||"QUERY"===x.value||"QUERY_ARRAY"===x.value||"PARAMS"===x.value||"HASH"===x.value||"ANCHOR"===x.value?"storyboard-route-var":"DS"===x.value?"dashboard-DS":null;(l=e?n.find((t=>t.type===e)):null)&&(o="namespace",m=p,s=d)}else o="initial";break;case"meta.tag":o="meta-tag",c=x.value.replace(/^\s+/,"");break;case"keyword":o="meta-tag"===o&&":"===x.value?"colon":"initial";break;case"text":if(!/^\s+$/.test(x.value)){if("colon"===o&&("action"===c||"target"===c)){var[,t,r,a]=x.value.match(/^(\s*)(.+?)(\s*)$/);j(c,d,p+t.length,p+x.value.length-a.length,r,n,i)}o="initial"}break;case"string.start":"colon"===o?(o="string-start",u=x.value):o="initial";break;case"string":if("string-start"===o&&("action"===c||"target"===c)&&x.value.endsWith(u)){var g=x.value.substring(0,x.value.length-u.length);j(c,d,p,p+g.length,g,n,i)}o="initial";break;default:o="initial"}p+=x.value.length};for(var x of g)h()}return i.map((e=>{var t,[n,a,o,i,s,l]=e;return{startRow:o,startCol:i,endRow:s,endCol:l,highlightType:n.type,identifier:a,className:r[null!==(t=n.level)&&void 0!==t?t:"default"],type:"text",inFront:!0}}))}({editor:r,markerClassMap:{default:"aceMarkerOfHighlight",warn:"aceMarkerOfWarn",error:"aceMarkerOfError"},highlightTokens:e.highlightTokens}))}),[r,e.highlightTokens]),D=(0,n.useCallback)((t=>{var r;null===(r=e.onChange)||void 0===r||r.call(e,t),_(t),O()}),[e.onChange,O]);(0,n.useEffect)((()=>{O()}),[e.value,O]);var L=(0,n.useRef)();(0,n.useEffect)((()=>{L.current=q}),[q]),(0,n.useEffect)((()=>{var t,n=null===(t=e.highlightTokens)||void 0===t?void 0:t.filter((e=>e.clickable)).map((e=>e.type));if(r&&null!=n&&n.length){var a=e=>{r.renderer.setCursorStyle(N(e,n,L.current)?"pointer":"")},o=()=>{r.renderer.setCursorStyle("")},i=t=>{var a,o=N(t,n,L.current);o&&(r.session.selection.toSingleRange(),null===(a=e.onClickHighlightToken)||void 0===a||a.call(e,{type:o.highlightType,value:o.identifier}))};return r.on("mousemove",a),r.on("mouseout",o),r.on("click",i),()=>{r.off("mousemove",a),r.off("mouseout",o),r.off("click",i)}}}),[r,e.highlightTokens,e.onClickHighlightToken]),(0,n.useEffect)((()=>{var e=new Z.Z((()=>{null==r||r.resize()}));return e.observe(S.current),()=>{e.disconnect()}}),[r]);var $,P,H,[I,U]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{if(I){var e=t=>{"Escape"!==t.key&&"Esc"!==t.key||(window.removeEventListener("keydown",e),U(!1))};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}}}),[I]),a().createElement("div",{className:u()("wrapper",{expanded:I}),ref:S},a().createElement(o.ZP,{ref:t,onLoad:e=>{s(e)},className:u()("aceContainer",{error:"error"===e.curElement.validateState}),name:null!==($=e.name)&&void 0!==$?$:"commands-editor",placeholder:e.placeholder,style:{width:"100%"},theme:e.theme||"monokai",mode:null!==(P=A||("brick_next"===e.mode||"brick_next_yaml"===e.mode||"cel_yaml"===e.mode||"cel"===e.mode||"terraform"===e.mode?"text":e.mode))&&void 0!==P?P:"text",value:e.value,setOptions:{readOnly:e.readOnly,showLineNumbers:e.showLineNumbers,tabSize:e.tabSize,printMargin:e.printMargin,highlightActiveLine:e.highlightActiveLine,enableLiveAutocompletion:e.enableLiveAutocompletion,showGutter:e.showGutter},minLines:e.minLines,maxLines:null!==(H=e.maxLines)&&void 0!==H?H:10,editorProps:{$blockScrolling:1/0},showPrintMargin:e.showPrintMargin,markers:q,onChange:D,onValidate:t=>{var n,a=t;if(c&&["brick_next","json"].includes(A||e.mode)&&f){var o,s=[],l=e.value;try{l=JSON.parse(e.value),s=_(l)}catch(e){}(0,i.isEmpty)(s)||null!=t&&t.includes(s[0])||(a=[...t,...s],null===(o=r.getSession())||void 0===o||o.setAnnotations(a))}null===(n=e.onValidate)||void 0===n||n.call(e,a)},onBlur:()=>{e.onBlur&&e.onBlur()}}))}var $=(0,n.forwardRef)(L)},3838:(e,t,r)=>{r.d(t,{_:()=>k});var n,a,o=r(3395),i=r(381),s=r(687),l=r(5303),c=r(18),u=r(196),{method:d}=(0,c.createDecorators)();n=d();var g=new WeakMap,p=new WeakMap,m=new WeakMap,h=new WeakMap,x=new WeakMap,v=new WeakMap,f=new WeakMap;class k extends u.ReactNextElement{constructor(){super(...arguments),(0,o.Z)(this,f,{get:S,set:A}),(0,o.Z)(this,x,{get:w,set:E}),(0,o.Z)(this,m,{get:b,set:y}),(0,o.Z)(this,g,{writable:!0,value:!0}),(0,o.Z)(this,p,{writable:!0,value:!1}),(0,o.Z)(this,h,{writable:!0,value:"normal"}),(0,o.Z)(this,v,{writable:!0,value:!1}),a(this)}get isFormItemElement(){return(0,s.Z)(this,g)}set isFormItemElement(e){(0,i.Z)(this,g,e)}set validateState(e){(0,i.Z)(this,x,e),this._render()}get validateState(){return(0,s.Z)(this,x)}set notRender(e){this.hidden=e,(0,i.Z)(this,m,e),this._render()}get notRender(){return(0,s.Z)(this,m)}get $bindFormItem(){return(0,s.Z)(this,f)}set $bindFormItem(e){(0,i.Z)(this,f,e),this._render()}getFormElement(){for(var e=this;(e=e.parentNode)&&e&&!e.isFormElement;);return e}}function b(){return(0,s.Z)(this,p)}function y(e){(0,i.Z)(this,p,e)}function w(){return(0,s.Z)(this,h)}function E(e){(0,i.Z)(this,h,e)}function S(){return(0,s.Z)(this,v)}function A(e){(0,i.Z)(this,v,e)}[a]=(0,l.Z)(k,[[n,2,"getFormElement"]],[]).e},8307:(e,t,r)=>{r.d(t,{Z:()=>m});var n=r(9601),a=r.n(n),o=r(2609),i=r.n(o),s=r(8991),l=r.n(s),c=new URL(r(7157),r.b),u=new URL(r(6249),r.b),d=i()(a()),g=l()(c),p=l()(u);d.push([e.id,".aceContainer{border:1px solid var(--color-border-divider-line);border-radius:var(--larger-border-radius)}.aceContainer.error{border-color:var(--antd-error-color)}.wrapper{position:relative}.themeTomorrow,\n.themeGithub{color:#cccccc}.wrapper:hover .aceToolbar{display:block}.aceMarkerOfHighlight,\n.aceMarkerOfError,\n.aceMarkerOfWarn{position:absolute;border-radius:0}.aceMarkerOfHighlight{border-bottom-color:cyan}.aceMarkerOfError{background:url("+g+") repeat-x bottom left}.aceMarkerOfWarn{background:url("+p+") repeat-x bottom left}.expanded{position:fixed;z-index:1000;top:0;left:0;right:0;bottom:0;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.expanded .aceToolbar{top:28px;right:30px}.ace_start, .ace_end{margin:0}.ace_print-margin-layer{display:none}",""]);const m=d.toString()},6249:e=>{e.exports="data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%206%203%27%20enable-background%3D%27new%200%200%206%203%27%20height%3D%273%27%20width%3D%276%27%3E%3Cg%20fill%3D%27%23cca700%27%3E%3Cpolygon%20points%3D%275.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0%27%2F%3E%3Cpolygon%20points%3D%274%2C0%206%2C2%206%2C0.6%205.4%2C0%27%2F%3E%3Cpolygon%20points%3D%270%2C2%201%2C3%202.4%2C3%200%2C0.6%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"},7157:e=>{e.exports="data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%206%203%27%20enable-background%3D%27new%200%200%206%203%27%20height%3D%273%27%20width%3D%276%27%3E%3Cg%20fill%3D%27%23f14c4c%27%3E%3Cpolygon%20points%3D%275.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0%27%2F%3E%3Cpolygon%20points%3D%274%2C0%206%2C2%206%2C0.6%205.4%2C0%27%2F%3E%3Cpolygon%20points%3D%270%2C2%201%2C3%202.4%2C3%200%2C0.6%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"}}]);
2
- //# sourceMappingURL=8826.4444fb49.js.map
1
+ "use strict";(self.webpackChunk_next_bricks_form=self.webpackChunk_next_bricks_form||[]).push([[9223],{3831:(e,t,r)=>{r.d(t,{a:()=>$});var n=r(8657),a=r.n(n),o=r(1291),i=r(5178),s=r(4778),l=r.n(s),c=r(2779),u=r.n(c),d=r(2308),g=r.n(d),p=r(6023),m=r(3028),h=e=>{var t={};return(0,i.forEach)((e=>({placeholder:[{token:"support.class.builtin.js",regex:"\\b(?:EVENT|DATA|PIPES|PARAMS|PATH|QUERY(?:_ARRAY)?|APP|HASH|ANCHOR|SYS|FLAGS|I18N|CTX|SEGUE|ALIAS|PROCESSORS|IMG|PERMISSIONS|LOCAL_STORAGE|SESSION_STORAGE|MISC|TAG_URL|SAFE_TAG_URL|FN|BASE_URL|PATH_NAME|STATE|DS|TPL)\\b"},{token:"placeholder.end",regex:"\\s%>",next:"placeholderEnd"}],placeholderEnd:[{token:"string",regex:"['|\"]*",next:"start"},{defaultToken:"string"}],transform:[{token:"paren.rparen",regex:"\\}",next:"placeholderEnd"},{include:["field"]},{token:"expression.assign-default.placeholder",regex:"=",next:"assignDefault"},{token:"keyword.operator.expression.pipe.placeholder",regex:"\\|",next:"pipe"}],field:[{token:"support.variable.field",regex:"(?:[a-zA-Z_\\-0-9\\.\\*\\[\\]]+)"}],assignDefault:[{include:["value","literal"]},{token:"expression.assign-default.placeholder",regex:"(?=[\\|\\}])",next:"transform"}],literal:[{token:"literal.string",regex:"[a-zA-Z_\\-0-9]+"}],pipe:[{token:"expression.pipe.placeholder",regex:"(?=\\})",next:"transform"},{token:"expression.pipe-parameter.placeholder",regex:":",next:"pipeParameter"},{include:["identifier"]},{token:"keyword.operator.expression.pipe.placeholder",regex:"\\|",next:"pipe"}],pipeParameter:[{token:"expression.pipe-parameter.placeholder",regex:"(?=[\\|\\}])",next:"pipe"},{include:["value"]}],identifier:[{token:"support.function",regex:"[a-zA-Z]\\w*",next:"pipe"}],value:[{include:["constant","number"]},{token:"string.quoted.double.json",regex:"Double"===e?'\\\\"':'"',next:"stringValue"},{token:"meta.structure.array.json",regex:"\\[",next:"arrayValue"},{token:"meta.structure.dictionary.json",regex:"\\{",next:"objectValue"}],constant:[{token:"constant.language.json",regex:"\\b(?:true|false|null)\\b"}],number:[{token:"constant.numeric.json",regex:"-?(?:0|[1-9]\\d*)(?:(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)?"}],stringValue:[{token:"constant.character.escape.json",regex:"Double"===e?'\\\\\\\\(?:["/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\)':"Single"===e?"\\\\\\\\(?:['/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\)":"\\\\\\\\(?:['|\"/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\)"},{token:"invalid.illegal.unrecognized-string-escape.json",regex:"\\\\\\\\."},{token:"string.quoted.double.json",regex:"Double"===e?'\\\\"':'"',next:"value"}],arrayValue:[{include:["value"]},{token:"punctuation.separator.array.json",regex:","},{token:"invalid.illegal.expected-array-separator.json",regex:"[^\\s\\]]"},{token:"meta.structure.array.json",regex:"(,)?[\\s]*(\\])",next:"value"}],objectValue:[{include:["stringValue"]},{token:"meta.structure.dictionary.value.json",regex:":",next:"dictionaryValue"},{token:"invalid.illegal.expected-dictionary-separator.json",regex:"[^\\s\\}]"},{token:"meta.structure.dictionary.json",regex:"\\}",next:"value"}],dictionaryValue:[{token:"meta.structure.dictionary.value.json",regex:"(,)(?=[\\s]*\\})|(,)|(?=\\})",next:"objectValue"},{include:["value"]},{token:"invalid.illegal.expected-dictionary-separator.json",regex:"[^\\s,]"}]}))(e),((r,n)=>{t["brickNext".concat(e,"-").concat(n)]=(0,i.map)(r,(t=>(null!=t&&t.next&&"start"!==(null==t?void 0:t.next)&&(t.next="brickNext".concat(e,"-").concat(t.next)),null!=t&&t.include&&(t.include=(0,i.map)(t.include,(t=>"brickNext".concat(e,"-").concat(t)))),t)))})),t},x=e=>[{token:"placeholder.start",regex:"(<%)(~?)(\\s|$)",push:"brickNext".concat(e,"-jscode-start")},{token:"paren.lparen",regex:"(@)(\\{)",next:"brickNext".concat(e,"-transform")}],f=(0,m.Z)((0,m.Z)((0,m.Z)({},h("Single")),h("Double")),h("Unquoted")),v=r(5095),k=r.n(v);r(9910),r(8170),r(3298),r(1850),r(6854),r(21),r(669),r(8995),r(900),r(5898),r(8398),r(7216),r(3486),r(1323),r(6110),r(6775);var b,y=[{label:"${}",caption:"${}",snippet:"${${0}}",meta:"placeholder"},{label:"<% %>",caption:"<% %>",snippet:"<% ${0} %>",meta:"placeholder"},{label:"@{}",caption:"@{}",snippet:"@{${0}}",meta:"transform"}],w=["EVENT","DATA","PIPES","PARAMS","PATH","QUERY","QUERY_ARRAY","APP","HASH","ANCHOR","SYS","FLAGS","I18N","CTX","SEGUE","ALIAS","PROCESSORS","IMG","PERMISSIONS","LOCAL_STORAGE","SESSION_STORAGE","MISC","TAG_URL","SAFE_TAG_URL","FN","BASE_URL","PATH_NAME","STATE","action","target","method","targetRef"],E=[{identifierRegexps:[/[a-zA-Z_0-9@<$\-\u00A2-\u2000\u2070-\uFFFF]/],getCompletions(e,t,r,n,a){a(null,y)}},{getCompletions(e,t,r,n,a){a(null,w.map((e=>({caption:e,value:e,meta:"variable",score:20}))))}},{getCompletions(e,t,r,n,a){var o,s=t.getLine(r.row).substr(0,r.column);/action(["']?)([\s]*):/.test(s)?a(null,(null!==(o=(0,i.get)(null!=p?p:{},"definitions.BuiltinBrickEventHandler.properties.action.enum"))&&void 0!==o?o:[]).map((e=>({caption:e,value:e,meta:"event action",score:10})))):a(null,[])}}],S=r(2159),A=["keyword"],C={keyword:"in|as|break|const|continue|else|for|function|if|import|let|loop|package|namespace|return|var|void|while","constant.language":"null","constant.language.boolean":"true|false","support.function":"bytes|double|duration|dyn|int|bool|matches|size|string|timestamp|type|uint|round|base64|has|printf|isEmpty|repeatArray|mergeList|fieldNotEmpty|hasOrDefault|trinocular|traceId|SHA1|random|random_string|now"},_={"support.variable":"variable|variable_noload|request|body|query|uri|header|step|config|output|input","support.function":"contains|endsWith|matches|startsWith|getDate|getDayOfMonth|getDayOfWeek|getDayOfYear|getFullYear|getHours|getMilliseconds|getMinutes|getMonth|getSeconds|charAt|indexOf|lastIndexOf|lowerAscii|replace|split|join|substring|trim|upperAscii|all|exists|exists_one|map|filter|decodeb64|truncate|parseJSON|parseYAML|parseURL|isBlank|marshalJSON|marshalYAML|merge|repeat|match|canonical|convertMap|fuse|remove|setAttr|parseDate|format"},R=[{label:"<% %>",caption:"<% %>",snippet:"<% ${0} %>",meta:"placeholder"}],T=[{getCompletions(e,t,r,n,a){a(null,function(){if(!b){var{keyword:e}=C,t=(0,S.Z)(C,A);b=Object.values(t).concat(Object.values(_)).flatMap((e=>e.split("|")))}return b}().map((e=>"string"==typeof e?{caption:e,value:e}:e)))}},{identifierRegexps:[/[a-zA-Z_0-9@<$\-\u00A2-\u2000\u2070-\uFFFF]/],getCompletions(e,t,r,n,a){a(null,R)}}];function M(){var{yamlContext:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=q(C,"identifier"),r=q(_,"identifier"),n="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8}|[0-3][0-7]{0,2}|.)",a="[_a-zA-Z]\\w*",o=e?"cel-".concat(e,"-"):"";return{["".concat(o,"start")]:[..."multi-line"===e?[{token:"indent",regex:/^\s*$/},{token:"indent",regex:/^\s*/,onMatch:function(e,t,r){return r[1]>=e.length?(this.next="start",r.splice(0)):this.next="".concat(o,"start"),this.token},next:"".concat(o,"start")}]:[],{token:"comment",regex:"//.*$"},..."single-quoted"===e?[{token:"string",regex:"'",next:"start"}]:[{token:"string",regex:"'''",next:"".concat(o,"tqstring")},{token:["keyword.other","string"],regex:"([bB]?[rR])(')(?=.)",next:"".concat(o,"rawqstring")},{token:["keyword.other","string"],regex:"([bB]?)(')(?=.)",next:"".concat(o,"qstring")}],..."double-quoted"===e?[{token:"string",regex:'"',next:"start"}]:[{token:"string",regex:'"""',next:"".concat(o,"tqqstring")},{token:["keyword.other","string"],regex:'([bB]?[rR])(")(?=.)',next:"".concat(o,"rawqqstring")},{token:["keyword.other","string"],regex:'([bB]?)(")(?=.)',next:"".concat(o,"qqstring")}],{token:"constant.numeric",regex:"-?(?:\\d+|0x[0-9a-fA-F]+)[uU]?\\b"},{token:"constant.numeric",regex:"-?\\d*(?:\\.\\d+(?:[eE][+-]?\\d+)?|\\d[eE][+-]?\\d+)\\b"},{token:t,regex:a},{token:"punctuation.operator",regex:"\\.(?!\\.)",next:"".concat(o,"property")},{token:"keyword.operator",regex:"==|!=|<=?|>=?|!|&&|\\|\\||\\?:|[-!%*+/]"},{token:"punctuation.operator",regex:"[?:,.]"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"}],["".concat(o,"property")]:[{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:"\\.(?!\\.)"},{token:r,regex:a},{token:"empty",regex:"",next:"".concat(o,"start")}],["".concat(o,"qqstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:'"|$',next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"qstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:"'|$",next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"rawqqstring")]:[{token:"string",regex:'"|$',next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"rawqstring")]:[{token:"string",regex:"'|$",next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"tqqstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:'"""',next:"".concat(o,"start")},{defaultToken:"string"}],["".concat(o,"tqstring")]:[{token:"constant.language.escape",regex:n},{token:"string",regex:"'''",next:"".concat(o,"start")},{defaultToken:"string"}]}}function q(e,t){var r=new Map;for(var[n,a]of Object.entries(e))for(var o of a.split("|"))r.set(o,n);return e=>{var n;return null!==(n=r.get(e))&&void 0!==n?n:t}}var F=/^[-\w]+(\\\.[-\w]+)*$/;function j(e,t,r,n,a,o,i){var s="";if("action"===e)switch(a){case"context.assign":case"context.replace":case"context.load":case"context.refresh":s="storyboard-context-action";break;case"state.update":case"state.load":case"state.refresh":s="storyboard-state-action"}else"_self"!==a&&"null"!==a&&F.test(a)&&(s="storyboard-tag-name-as-target");var l=s?o.find((e=>e.type===s)):null;l&&i.push([l,a,t,r,t,n])}var O=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl";function N(e,t,r){if(n=e.domEvent,a=O,o=Array.isArray(a)?a:[a],!D.some((e=>Number(o.includes(e))^Number(!!n["".concat(e,"Key")])))){var n,a,o,{row:i,column:s}=e.getDocumentPosition(),l=null==r?void 0:r.find((e=>i===e.startRow&&s>=e.startCol&&s<=e.endCol));return l&&t.includes(l.highlightType)?l:void 0}}var D=["ctrl","alt","shift","meta"],Z=r(7209);function L(e,t){var[r,s]=(0,n.useState)(),[c,d]=(0,n.useState)(),[v,b]=(0,n.useState)(e.jsonSchema),y=(0,n.useRef)([]),w=(0,n.useRef)(!1),S=(0,n.useRef)(null),[A,C]=(0,n.useState)();(0,n.useEffect)((()=>{var t=e.jsonSchema;["brick_next","brick_next_yaml"].includes(e.mode)&&!e.jsonSchema&&(t=p),(0,i.isEqual)(t,v)||b(t)}),[e.jsonSchema,e.mode]);var _=t=>{var n=[];try{var a,o,s;if(null!=w&&w.current||(c.compile(v),w.current=!0),c.validate(null!==(a=e.schemaRef)&&void 0!==a?a:v,t))y.current=[];else if((0,i.isEqual)(null===(o=y.current)||void 0===o||null===(s=o[0])||void 0===s?void 0:s.raw,c.errors)){var l;n=null!==(l=y.current)&&void 0!==l?l:[]}else{var u,d=r.getCursorPosition(),g=null===(u=(0,i.uniqWith)(c.errors,((e,t)=>t.dataPtah===e.dataPtah&&t.message===e.message)))||void 0===u?void 0:u.map((e=>{var t="."===e.dataPath[0]?e.dataPath.slice(1):e.dataPath;return"".concat(t?t+": ":"").concat(e.message)})).join("\n");n=[{row:d.row,column:d.column,type:e.validateJsonSchemaMode,text:g,raw:c.errors}],y.current=n}}catch(e){}return n},R=(0,n.useMemo)((()=>({getCompletions(t,r,n,a,o){o(null,(0,i.map)(e.customCompleters,(e=>(0,i.isString)(e)?{caption:e,value:e}:e)))}})),[e.customCompleters]);(0,n.useEffect)((()=>{var t;return r&&r.completers&&null!==(t=e.customCompleters)&&void 0!==t&&t.length&&r.completers.push(R),()=>{if(r&&r.completers){var e=r.completers.indexOf(R);-1!==e&&r.completers.splice(e,1)}}}),[r,R,e.customCompleters]),(0,n.useEffect)((()=>{if(("yaml"===e.mode||"brick_next_yaml"===e.mode||"cel_yaml"===e.mode)&&r){var t,n,a=(()=>{var t=[],n=[];if(e.value)try{var a=g().safeLoad(e.value,{schema:g().JSON_SCHEMA,json:!0});v&&(n=_(a))}catch(e){var o,i,s,l=r.getLastVisibleRow();t=[{row:(null===(o=e.mark)||void 0===o?void 0:o.line)>l?l:null===(i=e.mark)||void 0===i?void 0:i.line,column:null===(s=e.mark)||void 0===s?void 0:s.column,type:"error",text:e.reason,raw:e}]}return[...t,...n]})(),o=null==r||null===(t=r.getSession())||void 0===t?void 0:t.getAnnotations();(0,i.isEqual)(o,a)||null===(n=r.getSession())||void 0===n||n.setAnnotations(a)}}),[e.value,e.mode]),(0,n.useEffect)((()=>{if(e.mode&&["brick_next","brick_next_yaml","cel_yaml","json","yaml"].includes(e.mode)&&v){var t=new(l())({schemaId:"auto",$data:!0});d(t)}}),[e.mode,v]),(0,n.useEffect)((()=>{r&&"json"===e.mode&&C("text")}),[v]),(0,n.useEffect)((()=>{A&&C(void 0)}),[A]);(0,n.useEffect)((()=>{if(r)if(r.completers&&(r.completers=[...r.completers]),"brick_next_yaml"===e.mode){var t,n,a,o=new(function(){var e=k().require("ace/mode/javascript_highlight_rules").JavaScriptHighlightRules;class t extends k().require("ace/mode/yaml_highlight_rules").YamlHighlightRules{constructor(){super();var t=this.$rules;t.start.unshift(...x("Unquoted"));var r=(0,i.findIndex)(t.start,["token","string"]);t.start.splice(r,0,{token:"string.start",regex:'"',next:"doubleQuotedToBrickNextEntry"},{token:"string.start",regex:"'",next:"singleQuotedToBrickNextEntry"}),t.mlString.unshift(...x("Unquoted")),t=(0,m.Z)((0,m.Z)((0,m.Z)({},t),f),{},{doubleQuotedToBrickNextEntry:[...x("Double"),{token:"string",regex:'"',next:"start"},{defaultToken:"string"}],singleQuotedToBrickNextEntry:[...x("Single"),{token:"string",regex:"'",next:"start"},{defaultToken:"string"}]}),this.$rules=(0,m.Z)({},t),this.embedRules(e,"brickNextSingle-jscode-",[{include:["brickNextSingle-placeholder"]}]),this.embedRules(e,"brickNextDouble-jscode-",[{include:["brickNextDouble-placeholder"]}]),this.embedRules(e,"brickNextUnquoted-jscode-",[{include:["brickNextUnquoted-placeholder"]}]),this.normalizeRules()}}return class extends k().require("ace/mode/yaml").Mode{constructor(){super(),this.HighlightRules=t}}}());null===(t=r.getSession())||void 0===t||t.setMode(o),null!==(n=r.completers)&&void 0!==n&&n.includes(E[0])||null===(a=r.completers)||void 0===a||a.push(...E)}else if("brick_next"===e.mode){var s,l,c,u=new(function(){var e=k().require("ace/mode/javascript_highlight_rules").JavaScriptHighlightRules;class t extends k().require("ace/mode/json_highlight_rules").JsonHighlightRules{constructor(){super();var t=this.$rules;t.string.unshift(...x("Double")),t=(0,m.Z)((0,m.Z)({},t),h("Double")),this.$rules=(0,m.Z)({},t),this.embedRules(e,"brickNextDouble-jscode-",[{include:["brickNextDouble-placeholder"]}]),this.normalizeRules()}}return class extends k().require("ace/mode/json").Mode{constructor(){super(),this.HighlightRules=t}}}());null===(s=r.getSession())||void 0===s||s.setMode(u),null!==(l=r.completers)&&void 0!==l&&l.includes(E[0])||null===(c=r.completers)||void 0===c||c.push(...E)}else if("terraform"===e.mode){var d,g=new(function(){var e=k().require("ace/mode/behaviour/cstyle").CstyleBehaviour,t=k().require("ace/mode/folding/cstyle").FoldMode,r=k().require("ace/mode/matching_brace_outdent").MatchingBraceOutdent;class n extends k().require("ace/mode/text_highlight_rules").TextHighlightRules{constructor(){super(),this.$rules={start:[{token:["storage.function.terraform"],regex:"\\b(output|resource|data|variable|module|export)\\b"},{token:"variable.terraform",regex:"\\$\\s",push:[{token:"keyword.terraform",regex:"(-var-file|-var)"},{token:"variable.terraform",regex:"\\n|$",next:"pop"},{include:"strings"},{include:"variables"},{include:"operators"},{defaultToken:"text"}]},{token:"language.support.class",regex:"\\b(timeouts|provider|connection|provisioner|lifecycleprovider|atlas)\\b"},{token:"singleline.comment.terraform",regex:"#(.)*$"},{token:"multiline.comment.begin.terraform",regex:"^\\s*\\/\\*",push:"blockComment"},{token:"storage.function.terraform",regex:"^\\s*(locals|terraform)\\s*{"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{include:"constants"},{include:"strings"},{include:"operators"},{include:"variables"}],blockComment:[{regex:"^\\s*\\/\\*",token:"multiline.comment.begin.terraform",push:"blockComment"},{regex:"\\*\\/\\s*$",token:"multiline.comment.end.terraform",next:"pop"},{defaultToken:"comment"}],constants:[{token:"constant.language.terraform",regex:"\\b(true|false|yes|no|on|off|EOF)\\b"},{token:"constant.numeric.terraform",regex:"(\\b([0-9]+)([kKmMgG]b?)?\\b)|(\\b(0x[0-9A-Fa-f]+)([kKmMgG]b?)?\\b)"}],variables:[{token:["variable.assignment.terraform","keyword.operator"],regex:"\\b([a-zA-Z_]+)(\\s*=)"}],interpolated_variables:[{token:"variable.terraform",regex:"\\b(var|self|count|path|local)\\b(?:\\.*[a-zA-Z_-]*)?"}],strings:[{token:"punctuation.quote.terraform",regex:"'",push:[{token:"punctuation.quote.terraform",regex:"'",next:"pop"},{include:"escaped_chars"},{defaultToken:"string"}]},{token:"punctuation.quote.terraform",regex:'"',push:[{token:"punctuation.quote.terraform",regex:'"',next:"pop"},{include:"interpolation"},{include:"escaped_chars"},{defaultToken:"string"}]}],escaped_chars:[{token:"constant.escaped_char.terraform",regex:"\\\\."}],operators:[{token:"keyword.operator",regex:"\\?|:|==|!=|>|<|>=|<=|&&|\\|\\||!|%|&|\\*|\\+|\\-|/|="}],interpolation:[{token:"punctuation.interpolated.begin.terraform",regex:"\\$?\\$\\{",push:[{token:"punctuation.interpolated.end.terraform",regex:"\\}",next:"pop"},{include:"interpolated_variables"},{include:"operators"},{include:"constants"},{include:"strings"},{include:"functions"},{include:"parenthesis"},{defaultToken:"punctuation"}]}],functions:[{token:"keyword.function.terraform",regex:"\\b(abs|basename|base64decode|base64encode|base64gzip|base64sha256|base64sha512|bcrypt|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|coalesce|coalescelist|compact|concat|contains|dirname|distinct|element|file|floor|flatten|format|formatlist|indent|index|join|jsonencode|keys|length|list|log|lookup|lower|map|matchkeys|max|merge|min|md5|pathexpand|pow|replace|rsadecrypt|sha1|sha256|sha512|signum|slice|sort|split|substr|timestamp|timeadd|title|transpose|trimspace|upper|urlencode|uuid|values|zipmap)\\b"}],parenthesis:[{token:"paren.lparen",regex:"\\["},{token:"paren.rparen",regex:"\\]"}]},this.normalizeRules()}}return class extends k().require("ace/mode/text").Mode{constructor(){super(),this.HighlightRules=n,this.$outdent=new r,this.$behaviour=new e,this.foldingRules=new t}}}());null===(d=r.getSession())||void 0===d||d.setMode(g)}else if("cel_yaml"===e.mode){var p,v,b,y=new(function(){class e extends k().require("ace/mode/yaml_highlight_rules").YamlHighlightRules{constructor(){super();var e=this.$rules;this.$rules=Object.fromEntries(Object.entries(e).filter((e=>"mlString"!==e[0])).map((e=>{var[t,r]=e;if("start"===t){var n=r.findIndex((e=>"string"===e.token));return[t,[...r.slice(0,n).filter((e=>"string"!==e.token)),{token:"string",regex:'"',next:"cel-double-quoted-start"},{token:"string",regex:"'",next:"cel-single-quoted-start"},{token:"string",regex:/[|>][-+\d\s]*$/,onMatch:function(e,t,r,n){var a,o,i=null!==(a=null===(o=/^\s*/.exec(n))||void 0===o?void 0:o[0])&&void 0!==a?a:"";return r.length<1?r.push(this.next):r[0]="cel-multi-line-start",r.length<2?r.push(i.length):r[1]=i.length,this.token},next:"cel-multi-line-start"},...r.slice(n+1).filter((e=>"string"!==e.token))]]}return[t,r]})).concat(Object.entries(M({yamlContext:"multi-line"})),Object.entries(M({yamlContext:"double-quoted"})),Object.entries(M({yamlContext:"single-quoted"})))),this.normalizeRules()}}return class extends k().require("ace/mode/yaml").Mode{constructor(){super(),this.HighlightRules=e}}}());null===(p=r.getSession())||void 0===p||p.setMode(y),null!==(v=r.completers)&&void 0!==v&&v.includes(T[0])||null===(b=r.completers)||void 0===b||b.push(...T)}else if("cel"===e.mode){var w,S,A,C=new(function(){class e extends k().require("ace/mode/text_highlight_rules").TextHighlightRules{constructor(){super(),this.$rules=M(),this.normalizeRules()}}return class extends k().require("ace/mode/text").Mode{constructor(){super(),this.HighlightRules=e}}}());null===(w=r.getSession())||void 0===w||w.setMode(C),null!==(S=r.completers)&&void 0!==S&&S.includes(T[0])||null===(A=r.completers)||void 0===A||A.push(...T)}}),[r,e.mode]);var[q,F]=(0,n.useState)(),O=(0,n.useCallback)((()=>{F(function(e){var{editor:t,markerClassMap:r,highlightTokens:n}=e;if(!t||null==n||!n.length)return[];for(var a=t.session.getLength(),o="initial",i=[],s=0,l={},c="",u="",d=0;d<a;d++){var g=t.session.getTokens(d),p=0,m=0,h=function(){switch(x.type){case"identifier":"dot"===o&&i.push([l,x.value,d,s===d?m:p,d,p+x.value.length]),o="initial";break;case"punctuation.operator":o="namespace"===o&&"."===x.value?"dot":"initial";break;case"support.class.builtin.js":if("initial"===o){var e="FN"===x.value?"storyboard-function":"CTX"===x.value?"storyboard-context":"STATE"===x.value?"storyboard-state":"TPL"===x.value?"storyboard-tpl-var":"PATH"===x.value||"PATH_NAME"===x.value||"QUERY"===x.value||"QUERY_ARRAY"===x.value||"PARAMS"===x.value||"HASH"===x.value||"ANCHOR"===x.value?"storyboard-route-var":"DS"===x.value?"dashboard-DS":null;(l=e?n.find((t=>t.type===e)):null)&&(o="namespace",m=p,s=d)}else o="initial";break;case"meta.tag":o="meta-tag",c=x.value.replace(/^\s+/,"");break;case"keyword":o="meta-tag"===o&&":"===x.value?"colon":"initial";break;case"text":if(!/^\s+$/.test(x.value)){if("colon"===o&&("action"===c||"target"===c)){var[,t,r,a]=x.value.match(/^(\s*)(.+?)(\s*)$/);j(c,d,p+t.length,p+x.value.length-a.length,r,n,i)}o="initial"}break;case"string.start":"colon"===o?(o="string-start",u=x.value):o="initial";break;case"string":if("string-start"===o&&("action"===c||"target"===c)&&x.value.endsWith(u)){var g=x.value.substring(0,x.value.length-u.length);j(c,d,p,p+g.length,g,n,i)}o="initial";break;default:o="initial"}p+=x.value.length};for(var x of g)h()}return i.map((e=>{var t,[n,a,o,i,s,l]=e;return{startRow:o,startCol:i,endRow:s,endCol:l,highlightType:n.type,identifier:a,className:r[null!==(t=n.level)&&void 0!==t?t:"default"],type:"text",inFront:!0}}))}({editor:r,markerClassMap:{default:"aceMarkerOfHighlight",warn:"aceMarkerOfWarn",error:"aceMarkerOfError"},highlightTokens:e.highlightTokens}))}),[r,e.highlightTokens]),D=(0,n.useCallback)((t=>{var r;null===(r=e.onChange)||void 0===r||r.call(e,t),_(t),O()}),[e.onChange,O]);(0,n.useEffect)((()=>{O()}),[e.value,O]);var L=(0,n.useRef)();(0,n.useEffect)((()=>{L.current=q}),[q]),(0,n.useEffect)((()=>{var t,n=null===(t=e.highlightTokens)||void 0===t?void 0:t.filter((e=>e.clickable)).map((e=>e.type));if(r&&null!=n&&n.length){var a=e=>{r.renderer.setCursorStyle(N(e,n,L.current)?"pointer":"")},o=()=>{r.renderer.setCursorStyle("")},i=t=>{var a,o=N(t,n,L.current);o&&(r.session.selection.toSingleRange(),null===(a=e.onClickHighlightToken)||void 0===a||a.call(e,{type:o.highlightType,value:o.identifier}))};return r.on("mousemove",a),r.on("mouseout",o),r.on("click",i),()=>{r.off("mousemove",a),r.off("mouseout",o),r.off("click",i)}}}),[r,e.highlightTokens,e.onClickHighlightToken]),(0,n.useEffect)((()=>{var e=new Z.Z((()=>{null==r||r.resize()}));return e.observe(S.current),()=>{e.disconnect()}}),[r]);var $,P,H,[I,U]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{if(I){var e=t=>{"Escape"!==t.key&&"Esc"!==t.key||(window.removeEventListener("keydown",e),U(!1))};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}}}),[I]),a().createElement("div",{className:u()("wrapper",{expanded:I}),ref:S},a().createElement(o.ZP,{ref:t,onLoad:e=>{s(e)},className:u()("aceContainer",{error:"error"===e.curElement.validateState}),name:null!==($=e.name)&&void 0!==$?$:"commands-editor",placeholder:e.placeholder,style:{width:"100%"},theme:e.theme||"monokai",mode:null!==(P=A||("brick_next"===e.mode||"brick_next_yaml"===e.mode||"cel_yaml"===e.mode||"cel"===e.mode||"terraform"===e.mode?"text":e.mode))&&void 0!==P?P:"text",value:e.value,setOptions:{readOnly:e.readOnly,showLineNumbers:e.showLineNumbers,tabSize:e.tabSize,printMargin:e.printMargin,highlightActiveLine:e.highlightActiveLine,enableLiveAutocompletion:e.enableLiveAutocompletion,showGutter:e.showGutter},minLines:e.minLines,maxLines:null!==(H=e.maxLines)&&void 0!==H?H:10,editorProps:{$blockScrolling:1/0},showPrintMargin:e.showPrintMargin,markers:q,onChange:D,onValidate:t=>{var n,a=t;if(c&&["brick_next","json"].includes(A||e.mode)&&v){var o,s=[],l=e.value;try{l=JSON.parse(e.value),s=_(l)}catch(e){}(0,i.isEmpty)(s)||null!=t&&t.includes(s[0])||(a=[...t,...s],null===(o=r.getSession())||void 0===o||o.setAnnotations(a))}null===(n=e.onValidate)||void 0===n||n.call(e,a)},onBlur:()=>{e.onBlur&&e.onBlur()}}))}var $=(0,n.forwardRef)(L)},8307:(e,t,r)=>{r.d(t,{Z:()=>m});var n=r(9601),a=r.n(n),o=r(2609),i=r.n(o),s=r(8991),l=r.n(s),c=new URL(r(7157),r.b),u=new URL(r(6249),r.b),d=i()(a()),g=l()(c),p=l()(u);d.push([e.id,".aceContainer{border:1px solid var(--color-border-divider-line);border-radius:var(--larger-border-radius)}.aceContainer.error{border-color:var(--antd-error-color)}.wrapper{position:relative}.themeTomorrow,\n.themeGithub{color:#cccccc}.wrapper:hover .aceToolbar{display:block}.aceMarkerOfHighlight,\n.aceMarkerOfError,\n.aceMarkerOfWarn{position:absolute;border-radius:0}.aceMarkerOfHighlight{border-bottom-color:cyan}.aceMarkerOfError{background:url("+g+") repeat-x bottom left}.aceMarkerOfWarn{background:url("+p+") repeat-x bottom left}.expanded{position:fixed;z-index:1000;top:0;left:0;right:0;bottom:0;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.expanded .aceToolbar{top:28px;right:30px}.ace_start, .ace_end{margin:0}.ace_print-margin-layer{display:none}",""]);const m=d.toString()},6249:e=>{e.exports="data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%206%203%27%20enable-background%3D%27new%200%200%206%203%27%20height%3D%273%27%20width%3D%276%27%3E%3Cg%20fill%3D%27%23cca700%27%3E%3Cpolygon%20points%3D%275.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0%27%2F%3E%3Cpolygon%20points%3D%274%2C0%206%2C2%206%2C0.6%205.4%2C0%27%2F%3E%3Cpolygon%20points%3D%270%2C2%201%2C3%202.4%2C3%200%2C0.6%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"},7157:e=>{e.exports="data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%206%203%27%20enable-background%3D%27new%200%200%206%203%27%20height%3D%273%27%20width%3D%276%27%3E%3Cg%20fill%3D%27%23f14c4c%27%3E%3Cpolygon%20points%3D%275.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0%27%2F%3E%3Cpolygon%20points%3D%274%2C0%206%2C2%206%2C0.6%205.4%2C0%27%2F%3E%3Cpolygon%20points%3D%270%2C2%201%2C3%202.4%2C3%200%2C0.6%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"},1391:(e,t,r)=>{r.d(t,{G:()=>v});var n,a,o=r(3395),i=r(381),s=r(687),l=r(5303),c=r(18),u=r(196),{method:d}=(0,c.createDecorators)();n=d();var g=new WeakMap,p=new WeakMap,m=new WeakMap,h=new WeakMap,x=new WeakMap,f=new WeakMap;class v extends u.ReactNextElement{constructor(){super(...arguments),(0,o.Z)(this,f,{get:E,set:S}),(0,o.Z)(this,h,{get:y,set:w}),(0,o.Z)(this,p,{get:k,set:b}),(0,o.Z)(this,g,{writable:!0,value:!1}),(0,o.Z)(this,m,{writable:!0,value:"normal"}),(0,o.Z)(this,x,{writable:!0,value:!1}),a(this)}get isFormItemElement(){return!0}set validateState(e){(0,i.Z)(this,h,e),this._render()}get validateState(){return(0,s.Z)(this,h)}set notRender(e){this.hidden=e,(0,i.Z)(this,p,e),this._render()}get notRender(){return(0,s.Z)(this,p)}get $bindFormItem(){return(0,s.Z)(this,f)}set $bindFormItem(e){(0,i.Z)(this,f,e),this._render()}getFormElement(){for(var e=this;(e=e.parentNode)&&e&&!e.isFormElement;);return e}}function k(){return(0,s.Z)(this,g)}function b(e){(0,i.Z)(this,g,e)}function y(){return(0,s.Z)(this,m)}function w(e){(0,i.Z)(this,m,e)}function E(){return(0,s.Z)(this,x)}function S(e){(0,i.Z)(this,x,e)}[a]=(0,l.Z)(v,[[n,2,"getFormElement"]],[]).e}}]);
2
+ //# sourceMappingURL=9223.c35f1d9a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/9223.c35f1d9a.js","mappings":"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","sources":["webpack:///./src/code-editor/custom-mode/BrickNextRules.ts","webpack:///./src/code-editor/custom-mode/brickNextUtil.ts","webpack:///./src/code-editor/custom-mode/CommonExpressionLanguageRules.ts","webpack:///./src/code-editor/getHighlightMarkers.ts","webpack:///./src/code-editor/getClickableMarker.ts","webpack:///./src/code-editor/codeEditor.tsx","webpack:///./src/code-editor/custom-mode/BrickNextYamlMode.ts","webpack:///./src/code-editor/custom-mode/BrickNextMode.ts","webpack:///./src/code-editor/custom-mode/TerraformMode.ts","webpack:///./src/code-editor/custom-mode/CommonExpressionLanguageYamlMode.ts","webpack:///./src/code-editor/custom-mode/CommonExpressionLanguageMode.ts","webpack:///./src/code-editor/index.shadow.css","webpack:///../../src/FormItemElement.tsx"],"sourcesContent":["import { forEach, map } from \"lodash\";\n\n// Refer to https://github.com/easyops-cn/vscode-brick-next for rules\nexport const GetBrickNextRules = (\n quotedType: \"Single\" | \"Double\" | \"Unquoted\"\n) => ({\n placeholder: [\n {\n token: \"support.class.builtin.js\",\n regex:\n \"\\\\b(?:EVENT|DATA|PIPES|PARAMS|PATH|QUERY(?:_ARRAY)?|APP|HASH|ANCHOR|SYS|FLAGS|I18N|CTX|SEGUE|ALIAS|PROCESSORS|IMG|PERMISSIONS|LOCAL_STORAGE|SESSION_STORAGE|MISC|TAG_URL|SAFE_TAG_URL|FN|BASE_URL|PATH_NAME|STATE|DS|TPL)\\\\b\",\n },\n {\n token: \"placeholder.end\",\n regex: \"\\\\s%>\",\n next: \"placeholderEnd\",\n },\n ],\n placeholderEnd: [\n {\n token: \"string\",\n regex: \"['|\\\"]*\",\n next: \"start\",\n },\n {\n defaultToken: \"string\",\n },\n ],\n transform: [\n {\n token: \"paren.rparen\",\n regex: \"\\\\}\",\n next: \"placeholderEnd\",\n },\n {\n include: [\"field\"],\n },\n {\n token: \"expression.assign-default.placeholder\",\n regex: \"=\",\n next: \"assignDefault\",\n },\n {\n token: \"keyword.operator.expression.pipe.placeholder\",\n regex: \"\\\\|\",\n next: \"pipe\",\n },\n ],\n field: [\n {\n token: \"support.variable.field\",\n regex: \"(?:[a-zA-Z_\\\\-0-9\\\\.\\\\*\\\\[\\\\]]+)\",\n },\n ],\n assignDefault: [\n {\n include: [\"value\", \"literal\"],\n },\n {\n token: \"expression.assign-default.placeholder\",\n regex: \"(?=[\\\\|\\\\}])\",\n next: \"transform\",\n },\n ],\n literal: [\n {\n token: \"literal.string\",\n regex: \"[a-zA-Z_\\\\-0-9]+\",\n },\n ],\n pipe: [\n {\n token: \"expression.pipe.placeholder\",\n regex: \"(?=\\\\})\",\n next: \"transform\",\n },\n {\n token: \"expression.pipe-parameter.placeholder\",\n regex: \":\",\n next: \"pipeParameter\",\n },\n {\n include: [\"identifier\"],\n },\n {\n token: \"keyword.operator.expression.pipe.placeholder\",\n regex: \"\\\\|\",\n next: \"pipe\",\n },\n ],\n pipeParameter: [\n {\n token: \"expression.pipe-parameter.placeholder\",\n regex: \"(?=[\\\\|\\\\}])\",\n next: \"pipe\",\n },\n {\n include: [\"value\"],\n },\n ],\n identifier: [\n {\n token: \"support.function\",\n regex: \"[a-zA-Z]\\\\w*\",\n next: \"pipe\",\n },\n ],\n value: [\n {\n include: [\"constant\", \"number\"],\n },\n {\n token: \"string.quoted.double.json\",\n regex:\n quotedType === \"Double\" ? '\\\\\\\\\"' : quotedType === \"Single\" ? '\"' : '\"',\n next: \"stringValue\",\n },\n {\n token: \"meta.structure.array.json\",\n regex: \"\\\\[\",\n next: \"arrayValue\",\n },\n {\n token: \"meta.structure.dictionary.json\",\n regex: \"\\\\{\",\n next: \"objectValue\",\n },\n ],\n constant: [\n {\n token: \"constant.language.json\",\n regex: \"\\\\b(?:true|false|null)\\\\b\",\n },\n ],\n number: [\n {\n token: \"constant.numeric.json\",\n regex: \"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?\",\n },\n ],\n stringValue: [\n {\n token: \"constant.character.escape.json\",\n regex:\n quotedType === \"Double\"\n ? '\\\\\\\\\\\\\\\\(?:[\"/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\)'\n : quotedType === \"Single\"\n ? \"\\\\\\\\\\\\\\\\(?:['/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\)\"\n : \"\\\\\\\\\\\\\\\\(?:['|\\\"/bfnrt]|u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\)\",\n },\n {\n token: \"invalid.illegal.unrecognized-string-escape.json\",\n regex: \"\\\\\\\\\\\\\\\\.\",\n },\n {\n token: \"string.quoted.double.json\",\n regex:\n quotedType === \"Double\" ? '\\\\\\\\\"' : quotedType === \"Single\" ? '\"' : '\"',\n next: \"value\",\n },\n ],\n arrayValue: [\n {\n include: [\"value\"],\n },\n {\n token: \"punctuation.separator.array.json\",\n regex: \",\",\n },\n {\n token: \"invalid.illegal.expected-array-separator.json\",\n regex: \"[^\\\\s\\\\]]\",\n },\n {\n token: \"meta.structure.array.json\",\n regex: \"(,)?[\\\\s]*(\\\\])\",\n next: \"value\",\n },\n ],\n objectValue: [\n {\n include: [\"stringValue\"],\n },\n {\n token: \"meta.structure.dictionary.value.json\",\n regex: \":\",\n next: \"dictionaryValue\",\n },\n {\n token: \"invalid.illegal.expected-dictionary-separator.json\",\n regex: \"[^\\\\s\\\\}]\",\n },\n {\n token: \"meta.structure.dictionary.json\",\n regex: \"\\\\}\",\n next: \"value\",\n },\n ],\n dictionaryValue: [\n {\n token: \"meta.structure.dictionary.value.json\",\n regex: \"(,)(?=[\\\\s]*\\\\})|(,)|(?=\\\\})\",\n next: \"objectValue\",\n },\n {\n include: [\"value\"],\n },\n {\n token: \"invalid.illegal.expected-dictionary-separator.json\",\n regex: \"[^\\\\s,]\",\n },\n ],\n});\n\nexport const generateBrickNextRules = (\n quotedType: \"Single\" | \"Double\" | \"Unquoted\"\n) => {\n const resultRules: Record<string, any> = {};\n forEach(GetBrickNextRules(quotedType), (rules, key) => {\n resultRules[`brickNext${quotedType}-${key}`] = map(rules, (rule) => {\n if ((rule as any)?.next && (rule as any)?.next !== \"start\") {\n (rule as any).next = `brickNext${quotedType}-${(rule as any).next}`;\n }\n if ((rule as any)?.include) {\n (rule as any).include = map(\n (rule as any).include,\n (includeKey) => `brickNext${quotedType}-${includeKey}`\n );\n }\n return rule;\n });\n });\n return resultRules;\n};\n\nexport const brickNextEntryRules = (\n quotedType: \"Single\" | \"Double\" | \"Unquoted\"\n) => [\n {\n token: \"placeholder.start\",\n regex: \"(<%)(~?)(\\\\s|$)\",\n push: `brickNext${quotedType}-jscode-start`,\n },\n {\n token: \"paren.lparen\",\n regex: \"(@)(\\\\{)\",\n next: `brickNext${quotedType}-transform`,\n },\n];\n\nexport const BrickNextRules = {\n ...generateBrickNextRules(\"Single\"),\n ...generateBrickNextRules(\"Double\"),\n ...generateBrickNextRules(\"Unquoted\"),\n};\n","import storyboardJsonSchema from \"@next-core/types/storyboard.json\";\nimport { IEditorProps } from \"react-ace\";\nimport { get } from \"lodash\";\n\nexport const brickNextSnippet = [\n {\n label: \"${}\",\n caption: \"${}\",\n snippet: \"${${0}}\",\n meta: \"placeholder\",\n },\n {\n label: \"<% %>\",\n caption: \"<% %>\",\n snippet: \"<% ${0} %>\",\n meta: \"placeholder\",\n },\n {\n label: \"@{}\",\n caption: \"@{}\",\n snippet: \"@{${0}}\",\n meta: \"transform\",\n },\n];\n\nexport const brickNextKeywords = [\n \"EVENT\",\n \"DATA\",\n \"PIPES\",\n \"PARAMS\",\n \"PATH\",\n \"QUERY\",\n \"QUERY_ARRAY\",\n \"APP\",\n \"HASH\",\n \"ANCHOR\",\n \"SYS\",\n \"FLAGS\",\n \"I18N\",\n \"CTX\",\n \"SEGUE\",\n \"ALIAS\",\n \"PROCESSORS\",\n \"IMG\",\n \"PERMISSIONS\",\n \"LOCAL_STORAGE\",\n \"SESSION_STORAGE\",\n \"MISC\",\n \"TAG_URL\",\n \"SAFE_TAG_URL\",\n \"FN\",\n \"BASE_URL\",\n \"PATH_NAME\",\n \"STATE\",\n \"action\",\n \"target\",\n \"method\",\n \"targetRef\",\n];\n\n// istanbul ignore next\nexport const brickNextCompleters = [\n {\n identifierRegexps: [/[a-zA-Z_0-9@<$\\-\\u00A2-\\u2000\\u2070-\\uFFFF]/],\n getCompletions(\n editor: IEditorProps,\n session: any,\n pos: any,\n prefix: string,\n callback: any\n ) {\n callback(null, brickNextSnippet);\n },\n },\n {\n getCompletions(\n editor: IEditorProps,\n session: any,\n pos: any,\n prefix: string,\n callback: any\n ) {\n callback(\n null,\n brickNextKeywords.map((word) => ({\n caption: word,\n value: word,\n meta: \"variable\",\n score: 20,\n }))\n );\n },\n },\n {\n getCompletions(\n editor: IEditorProps,\n session: any,\n pos: any,\n prefix: string,\n callback: any\n ) {\n const line = session.getLine(pos.row).substr(0, pos.column);\n if (/action([\"']?)([\\s]*):/.test(line)) {\n callback(\n null,\n (get(\n storyboardJsonSchema ?? {},\n \"definitions.BuiltinBrickEventHandler.properties.action.enum\"\n ) ?? []).map((word: any) => ({\n caption: word,\n value: word,\n meta: \"event action\",\n score: 10,\n }))\n );\n } else {\n callback(null, []);\n }\n },\n },\n];\n","import { IEditorProps } from \"react-ace\";\nimport { AceLanguageRules, AceTokenFunction } from \"../interfaces.js\";\n\nconst celKeywords = {\n keyword:\n \"in|as|break|const|continue|else|for|function|if|import|let|loop|package|namespace|return|var|void|while\",\n \"constant.language\": \"null\",\n \"constant.language.boolean\": \"true|false\",\n \"support.function\":\n // Built-in functions\n \"bytes|double|duration|dyn|int|bool|matches|size|string|timestamp|type|uint|round|\" +\n // Built-in extensions\n \"base64|\" +\n // Built-in macros\n \"has|\" +\n // EasyOps primitive_type_ext\n \"printf|isEmpty|repeatArray|\" +\n // EasyOps dyn_type_ext\n \"mergeList|fieldNotEmpty|hasOrDefault|trinocular|traceId|SHA1|random|random_string|now\",\n};\n\nconst celInstanceMethodKeywords = {\n \"support.variable\":\n \"variable|variable_noload|request|body|query|uri|header|step|config|output|input\",\n \"support.function\":\n // Built-in methods\n \"contains|endsWith|matches|startsWith|\" +\n // Built-in datetime methods\n \"getDate|getDayOfMonth|getDayOfWeek|getDayOfYear|getFullYear|getHours|getMilliseconds|getMinutes|getMonth|getSeconds|\" +\n // Built-in extensions\n \"charAt|indexOf|lastIndexOf|lowerAscii|replace|split|join|substring|trim|upperAscii|\" +\n // Built-in macros\n \"all|exists|exists_one|map|filter|\" +\n // EasyOps primitive_type_ext\n \"decodeb64|truncate|parseJSON|parseYAML|parseURL|isBlank|\" +\n // EasyOps dyn_type_ext\n \"marshalJSON|marshalYAML|merge|repeat|match|canonical|convertMap|fuse|remove|setAttr|parseDate|format\",\n};\n\nexport const snippets = [\n {\n label: \"<% %>\",\n caption: \"<% %>\",\n snippet: \"<% ${0} %>\",\n meta: \"placeholder\",\n },\n];\n\nlet memoizedCompleterWords: string[];\n\nexport function getCommonExpressionLanguageCompleterWords(): string[] {\n if (!memoizedCompleterWords) {\n // Reserved keywords are not used in CEL actually.\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { keyword, ...restKeywords } = celKeywords;\n memoizedCompleterWords = Object.values(restKeywords)\n .concat(Object.values(celInstanceMethodKeywords))\n .flatMap((words) => words.split(\"|\"));\n }\n return memoizedCompleterWords;\n}\n\nexport const CommonExpressionLanguageCompleter = [\n {\n getCompletions(\n editor: IEditorProps,\n session: any,\n pos: any,\n prefix: string,\n callback: any\n ): void {\n callback(\n null,\n getCommonExpressionLanguageCompleterWords().map((v) =>\n typeof v === \"string\"\n ? {\n caption: v,\n value: v,\n }\n : v\n )\n );\n },\n },\n {\n identifierRegexps: [/[a-zA-Z_0-9@<$\\-\\u00A2-\\u2000\\u2070-\\uFFFF]/],\n getCompletions(\n editor: IEditorProps,\n session: any,\n pos: any,\n prefix: string,\n callback: any\n ) {\n callback(null, snippets);\n },\n },\n];\n\nexport function getCommonExpressionLanguageRules({\n yamlContext,\n}: {\n yamlContext?: \"single-quoted\" | \"double-quoted\" | \"multi-line\";\n} = {}): AceLanguageRules {\n const keywordMapper = keywordTokenFactory(celKeywords, \"identifier\");\n const instanceMethodKeywordMapper = keywordTokenFactory(\n celInstanceMethodKeywords,\n \"identifier\"\n );\n\n const escapedRe =\n \"\\\\\\\\(?:x[0-9a-fA-F]{2}|\" + // hex\n \"u[0-9a-fA-F]{4}|\" + // unicode\n \"U[0-9a-fA-F]{8}|\" + // unicode\n \"[0-3][0-7]{0,2}|\" + // oct\n \".)\";\n\n const identifierRe = \"[_a-zA-Z]\\\\w*\";\n\n const prefix = yamlContext ? `cel-${yamlContext}-` : \"\";\n\n return {\n [`${prefix}start`]: [\n ...(yamlContext === \"multi-line\"\n ? [\n {\n token: \"indent\",\n regex: /^\\s*$/,\n },\n {\n token: \"indent\",\n regex: /^\\s*/,\n onMatch: function (\n val: string,\n state: unknown,\n stack: [string, number]\n ): string {\n const curIndent = stack[1];\n if (curIndent >= val.length) {\n this.next = \"start\";\n stack.splice(0);\n } else {\n this.next = `${prefix}start`;\n }\n return this.token;\n },\n next: `${prefix}start`,\n },\n ]\n : []),\n {\n token: \"comment\",\n regex: \"//.*$\",\n },\n ...(yamlContext === \"single-quoted\"\n ? [\n {\n token: \"string\",\n regex: \"'\",\n next: \"start\",\n },\n ]\n : [\n {\n token: \"string\",\n regex: \"'''\",\n next: `${prefix}tqstring`,\n },\n {\n token: [\"keyword.other\", \"string\"],\n regex: \"([bB]?[rR])(')(?=.)\",\n next: `${prefix}rawqstring`,\n },\n {\n token: [\"keyword.other\", \"string\"],\n regex: \"([bB]?)(')(?=.)\",\n next: `${prefix}qstring`,\n },\n ]),\n ...(yamlContext === \"double-quoted\"\n ? [\n {\n token: \"string\",\n regex: '\"',\n next: \"start\",\n },\n ]\n : [\n {\n token: \"string\",\n regex: '\"\"\"',\n next: `${prefix}tqqstring`,\n },\n {\n token: [\"keyword.other\", \"string\"],\n regex: '([bB]?[rR])(\")(?=.)',\n next: `${prefix}rawqqstring`,\n },\n {\n token: [\"keyword.other\", \"string\"],\n regex: '([bB]?)(\")(?=.)',\n next: `${prefix}qqstring`,\n },\n ]),\n {\n // INT_LIT ::= '-'? ( DIGIT+ | '0x' HEXDIGIT+ )\n // UINT_LIT ::= INT_LIT [uU]\n token: \"constant.numeric\", // int or unit\n regex: \"-?(?:\\\\d+|0x[0-9a-fA-F]+)[uU]?\\\\b\",\n },\n {\n // FLOAT_LIT\n // ::= '-'? DIGIT* ( . DIGIT+ EXPONENT? | DIGIT EXPONENT )\n // EXPONENT ::= [eE] [+#x2D]? DIGIT+\n token: \"constant.numeric\", // float\n regex: \"-?\\\\d*(?:\\\\.\\\\d+(?:[eE][+-]?\\\\d+)?|\\\\d[eE][+-]?\\\\d+)\\\\b\",\n },\n {\n token: keywordMapper,\n regex: identifierRe,\n },\n {\n token: \"punctuation.operator\",\n regex: \"\\\\.(?!\\\\.)\",\n next: `${prefix}property`,\n },\n {\n token: \"keyword.operator\",\n regex: \"==|!=|<=?|>=?|!|&&|\\\\|\\\\||\\\\?:|[-!%*+/]\",\n },\n {\n token: \"punctuation.operator\",\n regex: \"[?:,.]\",\n },\n {\n token: \"paren.lparen\",\n regex: \"[[({]\",\n },\n {\n token: \"paren.rparen\",\n regex: \"[\\\\])}]\",\n },\n ],\n [`${prefix}property`]: [\n {\n token: \"text\",\n regex: \"\\\\s+\",\n },\n {\n token: \"punctuation.operator\",\n regex: \"\\\\.(?!\\\\.)\",\n },\n {\n token: instanceMethodKeywordMapper,\n regex: identifierRe,\n },\n {\n token: \"empty\",\n regex: \"\",\n next: `${prefix}start`,\n },\n ],\n [`${prefix}qqstring`]: [\n {\n token: \"constant.language.escape\",\n regex: escapedRe,\n },\n {\n token: \"string\",\n regex: '\"|$',\n next: `${prefix}start`,\n },\n {\n defaultToken: \"string\",\n },\n ],\n [`${prefix}qstring`]: [\n {\n token: \"constant.language.escape\",\n regex: escapedRe,\n },\n {\n token: \"string\",\n regex: \"'|$\",\n next: `${prefix}start`,\n },\n {\n defaultToken: \"string\",\n },\n ],\n [`${prefix}rawqqstring`]: [\n {\n token: \"string\",\n regex: '\"|$',\n next: `${prefix}start`,\n },\n {\n defaultToken: \"string\",\n },\n ],\n [`${prefix}rawqstring`]: [\n {\n token: \"string\",\n regex: \"'|$\",\n next: `${prefix}start`,\n },\n {\n defaultToken: \"string\",\n },\n ],\n [`${prefix}tqqstring`]: [\n {\n token: \"constant.language.escape\",\n regex: escapedRe,\n },\n {\n token: \"string\",\n regex: '\"\"\"',\n next: `${prefix}start`,\n },\n {\n defaultToken: \"string\",\n },\n ],\n [`${prefix}tqstring`]: [\n {\n token: \"constant.language.escape\",\n regex: escapedRe,\n },\n {\n token: \"string\",\n regex: \"'''\",\n next: `${prefix}start`,\n },\n {\n defaultToken: \"string\",\n },\n ],\n } as AceLanguageRules;\n}\n\nfunction keywordTokenFactory(\n map: Record<string, string>,\n defaultToken: string\n): AceTokenFunction {\n const tokenMap = new Map<string, string>();\n for (const [className, keywords] of Object.entries(map)) {\n for (const kw of keywords.split(\"|\")) {\n tokenMap.set(kw, className);\n }\n }\n return (value: string) => tokenMap.get(value) ?? defaultToken;\n}\n\n// Below are the refined EBNF rules for Common Expression Language (CEL).\n// For the original syntax rules, see https://github.com/google/cel-spec/blob/master/doc/langdef.md#syntax .\n// Copy the rules to https://www.bottlecaps.de/rr/ui and view the diagram.\n/*\n\nExpr ::= ConditionalOr (\"?\" ConditionalOr \":\" Expr)?\nConditionalOr ::= (ConditionalOr \"||\")? ConditionalAnd\nConditionalAnd ::= (ConditionalAnd \"&&\")? Relation\nRelation ::= (Relation Relop)? Addition\nRelop ::= \"<\" | \"<=\" | \">=\" | \">\" | \"==\" | \"!=\" | \"in\"\nAddition ::= (Addition (\"+\" | \"-\"))? Multiplication\nMultiplication ::= (Multiplication (\"*\" | \"/\" | \"%\"))? Unary\nUnary ::= Member\n | (\"!\")+ Member\n | (\"-\")+ Member\nMember ::= Primary\n | Member \".\" IDENT (\"(\" ExprList? \")\")?\n | Member \"[\" Expr \"]\"\n | Member \"{\" FieldInits? \"}\"\nPrimary ::= \".\"? IDENT (\"(\" ExprList? \")\")?\n | \"(\" Expr \")\"\n | \"[\" ExprList? \"]\"\n | \"{\" MapInits? \"}\"\n | LITERAL\nExprList ::= Expr (\",\" Expr)*\nFieldInits ::= IDENT \":\" Expr (\",\" IDENT \":\" Expr)*\nMapInits ::= Expr \":\" Expr (\",\" Expr \":\" Expr)*\n\nIDENT ::= [_a-zA-Z][_a-zA-Z0-9]* \"-\" RESERVED\nLITERAL ::= INT_LIT | UINT_LIT | FLOAT_LIT | STRING_LIT | BYTES_LIT\n | BOOL_LIT | NULL_LIT\nINT_LIT ::= \"-\"? DIGIT+ | \"-\"? \"0x\" HEXDIGIT+\nUINT_LIT ::= INT_LIT [uU]\nFLOAT_LIT ::= \"-\"? DIGIT* . DIGIT+ EXPONENT? | \"-\"? DIGIT+ EXPONENT\nDIGIT ::= [0-9]\nHEXDIGIT ::= [0-9abcdefABCDEF]\nEXPONENT ::= [eE] [+-]? DIGIT+\nSTRING_LIT ::= [rR]? ( '\"' [^\"#xD#xA]* '\"'\n | \"'\" [^'#xD#xA]* \"'\"\n | '\"\"\"' ( CHAR* - '\"\"\"' ) '\"\"\"'\n | \"'''\" ( CHAR* - \"'''\" ) \"'''\"\n )\nBYTES_LIT ::= [bB] STRING_LIT\nESCAPE ::= \"\\\" [bfnrt\"'\\]\n | \"\\\" \"x\" HEXDIGIT HEXDIGIT\n | \"\\\" \"u\" HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT\n | \"\\\" \"U\" HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT\n | \"\\\" [0-3] [0-7] [0-7]\nNEWLINE ::= #xD #xA | #xD | #xA\nBOOL_LIT ::= \"true\" | \"false\"\nNULL_LIT ::= \"null\"\nRESERVED ::= BOOL_LIT | NULL_LIT | \"in\"\n | \"as\" | \"break\" | \"const\" | \"continue\" | \"else\"\n | \"for\" | \"function\" | \"if\" | \"import\" | \"let\"\n | \"loop\" | \"package\" | \"namespace\" | \"return\"\n | \"var\" | \"void\" | \"while\"\nWHITESPACE ::= (#x9 | #xA | #xC | #xD | #x20)+\nCOMMENT ::= '//' [^#xD#xA]* NEWLINE\n\nCHAR ::= [http://www.w3.org/TR/xml#NT-Char]\n\n*/\n","import { IEditorProps } from \"react-ace\";\nimport {\n ExtendedMarker,\n HighlightTokenSettings,\n HighlightTokenType,\n} from \"./interfaces.js\";\n\ntype TokenPosition = [\n HighlightTokenSettings,\n string,\n number,\n number,\n number,\n number\n];\n\nconst tagNameAsTargetRegExp = /^[-\\w]+(\\\\\\.[-\\w]+)*$/;\n\nexport function getHighlightMarkers({\n editor,\n markerClassMap,\n highlightTokens,\n}: {\n editor: IEditorProps;\n markerClassMap: {\n default: string;\n warn: string;\n error: string;\n };\n highlightTokens?: HighlightTokenSettings[];\n}): ExtendedMarker[] {\n if (!editor || !highlightTokens?.length) {\n return [];\n }\n const length = editor.session.getLength();\n let state:\n | \"initial\"\n | \"namespace\"\n | \"dot\"\n | \"meta-tag\"\n | \"colon\"\n | \"string-start\" = \"initial\";\n const tokenPositions: TokenPosition[] = [];\n let startRow = 0;\n let highlightToken: any = {} as HighlightTokenSettings;\n let metaTag: string = \"\";\n let quote: string = \"\";\n for (let i = 0; i < length; i++) {\n const tokens = editor.session.getTokens(i);\n let col = 0;\n let startCol = 0;\n for (const token of tokens) {\n switch (token.type) {\n case \"identifier\":\n if (state === \"dot\") {\n tokenPositions.push([\n highlightToken,\n token.value,\n i,\n startRow === i ? startCol : col,\n i,\n col + token.value.length,\n ]);\n }\n state = \"initial\";\n break;\n case \"punctuation.operator\":\n if (state === \"namespace\" && token.value === \".\") {\n state = \"dot\";\n } else {\n state = \"initial\";\n }\n break;\n case \"support.class.builtin.js\":\n if (state === \"initial\") {\n const currentType =\n token.value === \"FN\"\n ? \"storyboard-function\"\n : token.value === \"CTX\"\n ? \"storyboard-context\"\n : token.value === \"STATE\"\n ? \"storyboard-state\"\n : token.value === \"TPL\"\n ? \"storyboard-tpl-var\"\n : token.value === \"PATH\" ||\n token.value === \"PATH_NAME\" ||\n token.value === \"QUERY\" ||\n token.value === \"QUERY_ARRAY\" ||\n token.value === \"PARAMS\" ||\n token.value === \"HASH\" ||\n token.value === \"ANCHOR\"\n ? \"storyboard-route-var\"\n : token.value === \"DS\"\n ? \"dashboard-DS\"\n : null;\n highlightToken = currentType\n ? highlightTokens.find((item) => item.type === currentType)\n : null;\n if (highlightToken) {\n state = \"namespace\";\n startCol = col;\n startRow = i;\n }\n } else {\n state = \"initial\";\n }\n break;\n case \"meta.tag\":\n state = \"meta-tag\";\n metaTag = token.value.replace(/^\\s+/, \"\");\n break;\n case \"keyword\":\n if (state === \"meta-tag\" && token.value === \":\") {\n state = \"colon\";\n } else {\n state = \"initial\";\n }\n break;\n case \"text\":\n if (!/^\\s+$/.test(token.value)) {\n if (state === \"colon\") {\n if (metaTag === \"action\" || metaTag === \"target\") {\n // @ts-ignore\n const [, leadingSpace, value, trailingSpace] = (\n token.value as string\n ).match(/^(\\s*)(.+?)(\\s*)$/);\n pushActionOrTarget(\n metaTag,\n i,\n col + leadingSpace.length,\n col + token.value.length - trailingSpace.length,\n value,\n highlightTokens,\n tokenPositions\n );\n }\n }\n state = \"initial\";\n }\n break;\n case \"string.start\":\n if (state === \"colon\") {\n state = \"string-start\";\n quote = token.value;\n } else {\n state = \"initial\";\n }\n break;\n case \"string\":\n if (state === \"string-start\") {\n if (\n (metaTag === \"action\" || metaTag === \"target\") &&\n token.value.endsWith(quote)\n ) {\n const value = token.value.substring(\n 0,\n token.value.length - quote.length\n );\n pushActionOrTarget(\n metaTag,\n i,\n col,\n col + value.length,\n value,\n highlightTokens,\n tokenPositions\n );\n }\n }\n state = \"initial\";\n break;\n default:\n state = \"initial\";\n }\n col += token.value.length;\n }\n }\n return tokenPositions.map<ExtendedMarker>(\n ([highlight, identifier, startRow, startCol, endRow, endCol]) => ({\n startRow,\n startCol,\n endRow,\n endCol,\n highlightType: highlight.type,\n identifier,\n className: markerClassMap[highlight.level ?? \"default\"],\n type: \"text\",\n inFront: true,\n })\n );\n}\n\nfunction pushActionOrTarget(\n type: \"action\" | \"target\",\n row: number,\n startCol: number,\n endCol: number,\n value: string,\n highlightTokens: HighlightTokenSettings[],\n tokenPositions: TokenPosition[]\n): void {\n let currentType: HighlightTokenType = \"\" as HighlightTokenType;\n\n if (type === \"action\") {\n switch (value) {\n case \"context.assign\":\n case \"context.replace\":\n case \"context.load\":\n case \"context.refresh\":\n currentType = \"storyboard-context-action\";\n break;\n case \"state.update\":\n case \"state.load\":\n case \"state.refresh\":\n currentType = \"storyboard-state-action\";\n break;\n }\n } else {\n if (\n value !== \"_self\" &&\n value !== \"null\" &&\n tagNameAsTargetRegExp.test(value)\n ) {\n currentType = \"storyboard-tag-name-as-target\";\n }\n }\n const highlightToken = currentType\n ? highlightTokens.find((item) => item.type === currentType)\n : null;\n if (highlightToken) {\n tokenPositions.push([highlightToken, value, row, startCol, row, endCol]);\n }\n}\n","import { ExtendedMarker, HighlightTokenType } from \"./interfaces.js\";\n\nconst modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"meta\"\n : \"ctrl\";\n\nexport function getClickableMarker(\n e: any,\n clickableTypes: HighlightTokenType[],\n markers?: ExtendedMarker[]\n): ExtendedMarker | void {\n if (!matchModifierKeys(e.domEvent, modKey)) {\n return;\n }\n const { row, column } = e.getDocumentPosition();\n const marker = markers?.find(\n (marker) =>\n row === marker.startRow &&\n column >= marker.startCol &&\n column <= marker.endCol\n );\n return marker && clickableTypes.includes(marker.highlightType)\n ? marker\n : undefined;\n}\n\nconst modifierKeys = [\"ctrl\", \"alt\", \"shift\", \"meta\"];\n\nfunction matchModifierKeys(\n event: MouseEvent,\n keys: string | string[]\n): boolean {\n const keyList: string[] = Array.isArray(keys) ? keys : [keys];\n return !modifierKeys.some(\n (k) =>\n Number(keyList.includes(k)) ^\n Number(!!event[`${k}Key` as keyof MouseEvent])\n );\n}\n","import React, {\n useState,\n useEffect,\n useRef,\n forwardRef,\n useMemo,\n useCallback,\n} from \"react\";\nimport AceEditor, { IEditorProps } from \"react-ace\";\nimport { isEqual, isEmpty, uniqWith, isString, map } from \"lodash\";\nimport Ajv from \"ajv\";\nimport classNames from \"classnames\";\nimport yaml from \"js-yaml\";\nimport storyboardJsonSchema from \"@next-core/types/storyboard.json\";\nimport { getBrickNextMode } from \"./custom-mode/BrickNextMode.js\";\nimport { getBrickNextYamlMode } from \"./custom-mode/BrickNextYamlMode.js\";\nimport { getTerraformMode } from \"./custom-mode/TerraformMode.js\";\nimport { brickNextCompleters } from \"./custom-mode/brickNextUtil.js\";\nimport { CodeEditorProps, ExtendedMarker, Annotation } from \"./interfaces.js\";\nimport { getCommonExpressionLanguageYamlMode } from \"./custom-mode/CommonExpressionLanguageYamlMode.js\";\nimport { getCommonExpressionLanguageMode } from \"./custom-mode/CommonExpressionLanguageMode.js\";\nimport { CommonExpressionLanguageCompleter } from \"./custom-mode/CommonExpressionLanguageRules.js\";\nimport { getHighlightMarkers } from \"./getHighlightMarkers.js\";\nimport { getClickableMarker } from \"./getClickableMarker.js\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport \"./aceBuilds/index.js\";\n\nexport function CodeEditorItem(\n props: CodeEditorProps,\n ref: any\n): React.ReactElement {\n const [editor, setEditor] = useState<IEditorProps>();\n const [ajv, setAjv] = useState<any>();\n const [jsonSchema, setJsonSchema] = useState(props.jsonSchema);\n const brickNextError = useRef<Annotation[]>([]);\n const compileSchema = useRef(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const [tempOverrideMode, setTempOverrideMode] = useState<string>();\n\n useEffect(() => {\n let schemaValue = props.jsonSchema;\n if (\n [\"brick_next\", \"brick_next_yaml\"].includes(props.mode) &&\n !props.jsonSchema\n ) {\n schemaValue = storyboardJsonSchema;\n }\n if (!isEqual(schemaValue, jsonSchema)) {\n setJsonSchema(schemaValue);\n }\n }, [props.jsonSchema, props.mode]);\n\n const schemaLint = (data: any): Annotation[] => {\n let newAnnotations: Annotation[] = [];\n try {\n if (!compileSchema?.current) {\n ajv.compile(jsonSchema);\n compileSchema.current = true;\n }\n const valid = ajv.validate(props.schemaRef ?? jsonSchema, data);\n if (!valid) {\n if (!isEqual((brickNextError.current?.[0] as any)?.raw, ajv.errors)) {\n const position = (editor as IEditorProps).getCursorPosition();\n const errorMessage = uniqWith(\n ajv.errors,\n (o, v: any) => v.dataPtah === o.dataPtah && v.message === o.message\n )\n ?.map((e) => {\n const field =\n e.dataPath[0] === \".\" ? e.dataPath.slice(1) : e.dataPath;\n return `${field ? field + \": \" : \"\"}${e.message}`;\n })\n .join(\"\\n\");\n newAnnotations = [\n {\n row: position.row,\n column: position.column,\n type: props.validateJsonSchemaMode,\n text: errorMessage,\n raw: ajv.errors,\n } as Annotation,\n ];\n brickNextError.current = newAnnotations;\n } else {\n newAnnotations = brickNextError.current ?? [];\n }\n } else {\n brickNextError.current = [];\n }\n } catch (e) {\n // do nothing\n }\n return newAnnotations;\n };\n\n const yamlLint = (): Annotation[] => {\n // ace 官方库缺少 yaml 语法校验,这里主动校验。等 https://github.com/ajaxorg/ace/pull/3979 合并后可去掉\n let yamlLintAnnotations: Annotation[] = [];\n let schemaAnnotations: Annotation[] = [];\n if (props.value) {\n try {\n const data = yaml.safeLoad(props.value, {\n schema: yaml.JSON_SCHEMA,\n json: true,\n });\n if (jsonSchema) {\n schemaAnnotations = schemaLint(data);\n }\n } catch (e: any) {\n const lastRow = (editor as IEditorProps).getLastVisibleRow();\n yamlLintAnnotations = [\n {\n row: e.mark?.line > lastRow ? lastRow : e.mark?.line,\n column: e.mark?.column,\n type: \"error\",\n text: e.reason,\n raw: e,\n } as Annotation,\n ];\n }\n }\n return [...yamlLintAnnotations, ...schemaAnnotations];\n };\n\n const localCompleter = useMemo(\n () => ({\n getCompletions(\n _editor: IEditorProps,\n _session: any,\n _pos: any,\n _prefix: string,\n callback: any\n ) {\n callback(\n null,\n map(props.customCompleters, (v) => {\n if (isString(v)) {\n return {\n caption: v,\n value: v,\n };\n } else {\n return v;\n }\n })\n );\n },\n }),\n [props.customCompleters]\n );\n\n useEffect(() => {\n if (editor && editor.completers && props.customCompleters?.length) {\n editor.completers.push(localCompleter);\n }\n\n return () => {\n if (editor && editor.completers) {\n const index = editor.completers.indexOf(localCompleter);\n if (index !== -1) {\n editor.completers.splice(index, 1);\n }\n }\n };\n }, [editor, localCompleter, props.customCompleters]);\n\n useEffect(() => {\n if (\n (props.mode === \"yaml\" ||\n props.mode === \"brick_next_yaml\" ||\n props.mode === \"cel_yaml\") &&\n editor\n ) {\n const newAnnotations = yamlLint();\n const oldAnnotations = editor?.getSession()?.getAnnotations();\n if (!isEqual(oldAnnotations, newAnnotations)) {\n editor.getSession()?.setAnnotations(newAnnotations);\n }\n }\n }, [props.value, props.mode]);\n\n useEffect(() => {\n if (\n props.mode &&\n [\"brick_next\", \"brick_next_yaml\", \"cel_yaml\", \"json\", \"yaml\"].includes(\n props.mode\n ) &&\n jsonSchema\n ) {\n const ajv = new Ajv({\n schemaId: \"auto\",\n $data: true,\n });\n setAjv(ajv);\n }\n }, [props.mode, jsonSchema]);\n\n useEffect(() => {\n // temporarily override mode to trigger onValidate, when jsonSchema updated\n if (editor && props.mode === \"json\") {\n setTempOverrideMode(\"text\");\n }\n }, [jsonSchema]);\n\n useEffect(() => {\n if (tempOverrideMode) {\n setTempOverrideMode(undefined);\n }\n }, [tempOverrideMode]);\n\n const handleOnBlur = (): void => {\n props.onBlur && props.onBlur();\n };\n\n useEffect(() => {\n if (editor) {\n // Shallow Copy.When there are multiple editor instances on one page,react-ace will provide the same completers reference for different editor instances.\n if (editor.completers) {\n editor.completers = [...editor.completers];\n }\n if (props.mode === \"brick_next_yaml\") {\n const customMode = new (getBrickNextYamlMode())();\n editor.getSession()?.setMode(customMode);\n if (!editor.completers?.includes(brickNextCompleters[0])) {\n editor.completers?.push(...brickNextCompleters);\n }\n } else if (props.mode === \"brick_next\") {\n const customMode = new (getBrickNextMode())();\n editor.getSession()?.setMode(customMode);\n if (!editor.completers?.includes(brickNextCompleters[0])) {\n editor.completers?.push(...brickNextCompleters);\n }\n } else if (props.mode === \"terraform\") {\n const customMode = new (getTerraformMode())();\n editor.getSession()?.setMode(customMode);\n } else if (props.mode === \"cel_yaml\") {\n const customMode = new (getCommonExpressionLanguageYamlMode())();\n editor.getSession()?.setMode(customMode);\n if (\n !editor.completers?.includes(CommonExpressionLanguageCompleter[0])\n ) {\n editor.completers?.push(...CommonExpressionLanguageCompleter);\n }\n } else if (props.mode === \"cel\") {\n const customMode = new (getCommonExpressionLanguageMode())();\n editor.getSession()?.setMode(customMode);\n if (\n !editor.completers?.includes(CommonExpressionLanguageCompleter[0])\n ) {\n editor.completers?.push(...CommonExpressionLanguageCompleter);\n }\n }\n }\n }, [editor, props.mode]);\n\n const onLoad = (editorInstance: IEditorProps) => {\n setEditor(editorInstance);\n };\n\n const onValidate = (err: Annotation[]) => {\n let newAnnotations = err;\n if (\n ajv &&\n [\"brick_next\", \"json\"].includes(tempOverrideMode || props.mode) &&\n jsonSchema\n ) {\n let schemaAnnotations: Annotation[] = [];\n let data = props.value;\n try {\n data = JSON.parse(props.value);\n schemaAnnotations = schemaLint(data);\n } catch (e) {\n // do nothing\n }\n if (!isEmpty(schemaAnnotations) && !err?.includes(schemaAnnotations[0])) {\n newAnnotations = [...err, ...schemaAnnotations];\n (editor as IEditorProps).getSession()?.setAnnotations(newAnnotations);\n }\n }\n props.onValidate?.(newAnnotations);\n };\n\n const [markers, setMarkers] = useState<ExtendedMarker[]>();\n\n const findHighlightTokens = useCallback(() => {\n setMarkers(\n getHighlightMarkers({\n editor: editor as IEditorProps,\n markerClassMap: {\n default: \"aceMarkerOfHighlight\",\n warn: \"aceMarkerOfWarn\",\n error: \"aceMarkerOfError\",\n },\n highlightTokens: props.highlightTokens,\n })\n );\n }, [editor, props.highlightTokens]);\n\n const handleChange = useCallback(\n (value: string) => {\n props.onChange?.(value);\n schemaLint(value)\n findHighlightTokens();\n },\n [props.onChange, findHighlightTokens]\n );\n\n useEffect(() => {\n findHighlightTokens();\n }, [props.value, findHighlightTokens]);\n\n const markersRef = useRef<ExtendedMarker[]>();\n useEffect(() => {\n markersRef.current = markers;\n }, [markers]);\n\n useEffect(() => {\n const clickableTypes = props.highlightTokens\n ?.filter((item) => item.clickable)\n .map((item) => item.type);\n if (!editor || !clickableTypes?.length) {\n return;\n }\n const onMouseMove = (e: any): void => {\n editor.renderer.setCursorStyle(\n getClickableMarker(e, clickableTypes, markersRef.current)\n ? \"pointer\"\n : \"\"\n );\n };\n const onMouseOut = (): void => {\n editor.renderer.setCursorStyle(\"\");\n };\n const onClick = (e: any): void => {\n const marker = getClickableMarker(e, clickableTypes, markersRef.current);\n if (marker) {\n // Prevent the default behavior of multi-selection.\n editor.session.selection.toSingleRange();\n props.onClickHighlightToken?.({\n type: marker.highlightType,\n value: marker.identifier,\n });\n }\n };\n editor.on(\"mousemove\", onMouseMove);\n editor.on(\"mouseout\", onMouseOut);\n editor.on(\"click\", onClick);\n return () => {\n editor.off(\"mousemove\", onMouseMove);\n editor.off(\"mouseout\", onMouseOut);\n editor.off(\"click\", onClick);\n };\n }, [editor, props.highlightTokens, props.onClickHighlightToken]);\n\n useEffect(() => {\n // @ts-ignore\n const resizeObserver = new ResizeObserver(() => {\n editor?.resize();\n });\n resizeObserver.observe(containerRef.current);\n return () => {\n resizeObserver.disconnect();\n };\n }, [editor]);\n\n const [expanded, setExpanded] = useState(false);\n // const [expandedLines, setExpandedLines] = useState(0);\n\n useEffect(() => {\n if (expanded) {\n const fn = (e: KeyboardEvent): void => {\n if (e.key === \"Escape\" || e.key === \"Esc\") {\n window.removeEventListener(\"keydown\", fn);\n setExpanded(false);\n }\n };\n window.addEventListener(\"keydown\", fn);\n return () => {\n window.removeEventListener(\"keydown\", fn);\n };\n }\n }, [expanded]);\n\n const renderEditor = () => {\n // @ts-ignore\n return <AceEditor\n ref={ref}\n onLoad={onLoad}\n className={classNames(\"aceContainer\", {\n error: props.curElement.validateState === \"error\",\n })}\n name={props.name ?? \"commands-editor\"}\n placeholder={props.placeholder}\n style={{\n width: \"100%\",\n }}\n theme={props.theme || \"monokai\"}\n mode={\n (tempOverrideMode ||\n (props.mode === \"brick_next\" ||\n props.mode === \"brick_next_yaml\" ||\n props.mode === \"cel_yaml\" ||\n props.mode === \"cel\" ||\n props.mode === \"terraform\"\n ? \"text\"\n : props.mode)) ??\n \"text\"\n }\n value={props.value}\n setOptions={{\n readOnly: props.readOnly,\n showLineNumbers: props.showLineNumbers,\n tabSize: props.tabSize,\n printMargin: props.printMargin,\n highlightActiveLine: props.highlightActiveLine,\n enableLiveAutocompletion: props.enableLiveAutocompletion,\n showGutter: props.showGutter,\n }}\n minLines={props.minLines}\n maxLines={props.maxLines ?? 10}\n // Tips: Automatically scrolling cursor into view after selection change this will be disabled in the next version set editor.$blockScrolling = Infinity to disable this message\n editorProps={{\n $blockScrolling: Infinity,\n }}\n showPrintMargin={props.showPrintMargin}\n markers={markers}\n onChange={handleChange}\n onValidate={onValidate}\n onBlur={handleOnBlur}\n />\n }\n\n return (\n <div\n className={classNames(\"wrapper\", {\n expanded,\n })}\n ref={containerRef}\n >\n { renderEditor() }\n </div>\n );\n}\n\nexport const CodeEditorItemWrapper = forwardRef(CodeEditorItem);\n\n","import { brickNextEntryRules, BrickNextRules } from \"./BrickNextRules.js\";\nimport { findIndex } from \"lodash\";\nimport ace from \"ace-builds\";\nimport \"../aceBuilds/index.js\";\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type\nexport function getBrickNextYamlMode() {\n const JavaScriptHighlightRules = ace.require(\n \"ace/mode/javascript_highlight_rules\"\n ).JavaScriptHighlightRules;\n\n // Ref https://github.com/ajaxorg/ace/wiki/Creating-or-Extending-an-Edit-Mode\n // istanbul ignore next\n class CustomHighlightRules extends ace.require(\n \"ace/mode/yaml_highlight_rules\"\n ).YamlHighlightRules {\n constructor() {\n super();\n let originalRules = this.$rules;\n originalRules.start.unshift(...brickNextEntryRules(\"Unquoted\"));\n const findIndexOfString = findIndex(originalRules.start, [\n \"token\",\n \"string\",\n ]);\n originalRules.start.splice(\n findIndexOfString,\n 0,\n ...[\n {\n token: \"string.start\",\n regex: '\"',\n next: \"doubleQuotedToBrickNextEntry\",\n },\n {\n token: \"string.start\",\n regex: \"'\",\n next: \"singleQuotedToBrickNextEntry\",\n },\n ]\n );\n originalRules.mlString.unshift(...brickNextEntryRules(\"Unquoted\"));\n originalRules = {\n ...originalRules,\n ...BrickNextRules,\n doubleQuotedToBrickNextEntry: [\n ...brickNextEntryRules(\"Double\"),\n {\n token: \"string\",\n regex: '\"',\n next: \"start\",\n },\n {\n defaultToken: \"string\",\n },\n ],\n singleQuotedToBrickNextEntry: [\n ...brickNextEntryRules(\"Single\"),\n {\n token: \"string\",\n regex: \"'\",\n next: \"start\",\n },\n {\n defaultToken: \"string\",\n },\n ],\n };\n this.$rules = { ...originalRules };\n this.embedRules(JavaScriptHighlightRules, `brickNextSingle-jscode-`, [\n {\n include: [\"brickNextSingle-placeholder\"],\n },\n ]);\n this.embedRules(JavaScriptHighlightRules, \"brickNextDouble-jscode-\", [\n {\n include: [\"brickNextDouble-placeholder\"],\n },\n ]);\n this.embedRules(JavaScriptHighlightRules, \"brickNextUnquoted-jscode-\", [\n {\n include: [\"brickNextUnquoted-placeholder\"],\n },\n ]);\n this.normalizeRules();\n }\n }\n\n return class BrickNextYamlMode extends ace.require(\"ace/mode/yaml\").Mode {\n constructor() {\n super();\n this.HighlightRules = CustomHighlightRules;\n }\n };\n}\n","import { brickNextEntryRules, generateBrickNextRules } from \"./BrickNextRules.js\";\nimport ace from \"ace-builds\";\nimport \"../aceBuilds/index.js\";\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type\nexport function getBrickNextMode() {\n const JavaScriptHighlightRules = ace.require(\n \"ace/mode/javascript_highlight_rules\"\n ).JavaScriptHighlightRules;\n\n // Ref https://github.com/ajaxorg/ace/wiki/Creating-or-Extending-an-Edit-Mode\n // istanbul ignore next\n class CustomHighlightRules extends ace.require(\n \"ace/mode/json_highlight_rules\"\n ).JsonHighlightRules {\n constructor() {\n super();\n let originalRules = this.$rules;\n originalRules.string.unshift(...brickNextEntryRules(\"Double\"));\n originalRules = {\n ...originalRules,\n ...generateBrickNextRules(\"Double\"),\n };\n this.$rules = { ...originalRules };\n this.embedRules(JavaScriptHighlightRules, \"brickNextDouble-jscode-\", [\n {\n include: [\"brickNextDouble-placeholder\"],\n },\n ]);\n this.normalizeRules();\n }\n }\n\n return class BrickNextMode extends ace.require(\"ace/mode/json\").Mode {\n constructor() {\n super();\n this.HighlightRules = CustomHighlightRules;\n }\n };\n}\n","// Copy from ace/mode/terraform\n// Terraform mode is not supported in the react-ace 7.x version\nimport ace from \"ace-builds\";\nimport \"../aceBuilds/index.js\";\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type\nexport function getTerraformMode() {\n const CstyleBehaviour = ace.require(\n \"ace/mode/behaviour/cstyle\"\n ).CstyleBehaviour;\n\n const CStyleFoldMode = ace.require(\"ace/mode/folding/cstyle\").FoldMode;\n\n const MatchingBraceOutdent = ace.require(\n \"ace/mode/matching_brace_outdent\"\n ).MatchingBraceOutdent;\n\n // Ref https://github.com/ajaxorg/ace/wiki/Creating-or-Extending-an-Edit-Mode\n // istanbul ignore next\n class TerraformHighlightRules extends ace.require(\n \"ace/mode/text_highlight_rules\"\n ).TextHighlightRules {\n constructor() {\n super();\n this.$rules = {\n start: [\n {\n token: [\"storage.function.terraform\"],\n regex: \"\\\\b(output|resource|data|variable|module|export)\\\\b\",\n },\n {\n token: \"variable.terraform\",\n regex: \"\\\\$\\\\s\",\n push: [\n {\n token: \"keyword.terraform\",\n regex: \"(-var-file|-var)\",\n },\n {\n token: \"variable.terraform\",\n regex: \"\\\\n|$\",\n next: \"pop\",\n },\n\n { include: \"strings\" },\n { include: \"variables\" },\n { include: \"operators\" },\n\n { defaultToken: \"text\" },\n ],\n },\n {\n token: \"language.support.class\",\n regex:\n \"\\\\b(timeouts|provider|connection|provisioner|lifecycleprovider|atlas)\\\\b\",\n },\n\n {\n token: \"singleline.comment.terraform\",\n regex: \"#(.)*$\",\n },\n {\n token: \"multiline.comment.begin.terraform\",\n regex: \"^\\\\s*\\\\/\\\\*\",\n push: \"blockComment\",\n },\n {\n token: \"storage.function.terraform\",\n regex: \"^\\\\s*(locals|terraform)\\\\s*{\",\n },\n {\n token: \"paren.lparen\",\n regex: \"[[({]\",\n },\n\n {\n token: \"paren.rparen\",\n regex: \"[\\\\])}]\",\n },\n { include: \"constants\" },\n { include: \"strings\" },\n { include: \"operators\" },\n { include: \"variables\" },\n ],\n blockComment: [\n {\n regex: \"^\\\\s*\\\\/\\\\*\",\n token: \"multiline.comment.begin.terraform\",\n push: \"blockComment\",\n },\n {\n regex: \"\\\\*\\\\/\\\\s*$\",\n token: \"multiline.comment.end.terraform\",\n next: \"pop\",\n },\n {\n defaultToken: \"comment\",\n },\n ],\n constants: [\n {\n token: \"constant.language.terraform\",\n regex: \"\\\\b(true|false|yes|no|on|off|EOF)\\\\b\",\n },\n {\n token: \"constant.numeric.terraform\",\n regex:\n \"(\\\\b([0-9]+)([kKmMgG]b?)?\\\\b)|(\\\\b(0x[0-9A-Fa-f]+)([kKmMgG]b?)?\\\\b)\",\n },\n ],\n variables: [\n {\n token: [\"variable.assignment.terraform\", \"keyword.operator\"],\n regex: \"\\\\b([a-zA-Z_]+)(\\\\s*=)\",\n },\n ],\n interpolated_variables: [\n {\n token: \"variable.terraform\",\n regex: \"\\\\b(var|self|count|path|local)\\\\b(?:\\\\.*[a-zA-Z_-]*)?\",\n },\n ],\n strings: [\n {\n token: \"punctuation.quote.terraform\",\n regex: \"'\",\n push: [\n {\n token: \"punctuation.quote.terraform\",\n regex: \"'\",\n next: \"pop\",\n },\n { include: \"escaped_chars\" },\n { defaultToken: \"string\" },\n ],\n },\n {\n token: \"punctuation.quote.terraform\",\n regex: '\"',\n push: [\n {\n token: \"punctuation.quote.terraform\",\n regex: '\"',\n next: \"pop\",\n },\n { include: \"interpolation\" },\n { include: \"escaped_chars\" },\n { defaultToken: \"string\" },\n ],\n },\n ],\n escaped_chars: [\n {\n token: \"constant.escaped_char.terraform\",\n regex: \"\\\\\\\\.\",\n },\n ],\n operators: [\n {\n token: \"keyword.operator\",\n regex: \"\\\\?|:|==|!=|>|<|>=|<=|&&|\\\\|\\\\||!|%|&|\\\\*|\\\\+|\\\\-|/|=\",\n },\n ],\n interpolation: [\n {\n // TODO: double $\n token: \"punctuation.interpolated.begin.terraform\",\n regex: \"\\\\$?\\\\$\\\\{\",\n push: [\n {\n token: \"punctuation.interpolated.end.terraform\",\n regex: \"\\\\}\",\n next: \"pop\",\n },\n { include: \"interpolated_variables\" },\n { include: \"operators\" },\n { include: \"constants\" },\n { include: \"strings\" },\n { include: \"functions\" },\n { include: \"parenthesis\" },\n { defaultToken: \"punctuation\" },\n ],\n },\n ],\n functions: [\n {\n token: \"keyword.function.terraform\",\n regex:\n \"\\\\b(abs|basename|base64decode|base64encode|base64gzip|base64sha256|base64sha512|bcrypt|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|coalesce|coalescelist|compact|concat|contains|dirname|distinct|element|file|floor|flatten|format|formatlist|indent|index|join|jsonencode|keys|length|list|log|lookup|lower|map|matchkeys|max|merge|min|md5|pathexpand|pow|replace|rsadecrypt|sha1|sha256|sha512|signum|slice|sort|split|substr|timestamp|timeadd|title|transpose|trimspace|upper|urlencode|uuid|values|zipmap)\\\\b\",\n },\n ],\n parenthesis: [\n {\n token: \"paren.lparen\",\n regex: \"\\\\[\",\n },\n {\n token: \"paren.rparen\",\n regex: \"\\\\]\",\n },\n ],\n };\n this.normalizeRules();\n }\n }\n\n return class TerraformMode extends ace.require(\"ace/mode/text\").Mode {\n constructor() {\n super();\n this.HighlightRules = TerraformHighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.$behaviour = new CstyleBehaviour();\n this.foldingRules = new CStyleFoldMode();\n }\n };\n}\n","import ace from \"ace-builds\";\nimport \"../aceBuilds/index.js\";\nimport { getCommonExpressionLanguageRules } from \"./CommonExpressionLanguageRules.js\";\nimport { AceLanguageRule, AceLanguageRules } from \"../interfaces.js\";\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type\nexport function getCommonExpressionLanguageYamlMode() {\n // Ref https://github.com/ajaxorg/ace/wiki/Creating-or-Extending-an-Edit-Mode\n // istanbul ignore next\n class CustomHighlightRules extends ace.require(\n \"ace/mode/yaml_highlight_rules\"\n ).YamlHighlightRules {\n constructor() {\n super();\n\n const originalRules = this.$rules as AceLanguageRules;\n\n this.$rules = Object.fromEntries(\n Object.entries(originalRules)\n .filter((entry) => entry[0] !== \"mlString\")\n // @ts-ignore\n .map<[string, AceLanguageRule[]]>(([key, value]) => {\n if (key === \"start\") {\n const indexOfStringToken = value.findIndex(\n (rule) => rule.token === \"string\"\n );\n return [\n key,\n [\n ...value\n .slice(0, indexOfStringToken)\n .filter((rule) => rule.token !== \"string\"),\n {\n token: \"string\",\n regex: '\"',\n next: \"cel-double-quoted-start\",\n },\n {\n token: \"string\",\n regex: \"'\",\n next: \"cel-single-quoted-start\",\n },\n {\n token: \"string\", // multi line string start\n regex: /[|>][-+\\d\\s]*$/,\n onMatch: function (\n val: string,\n state: unknown,\n stack: [string, number],\n line: string\n ): string {\n const indent = /^\\s*/.exec(line)?.[0] ?? \"\";\n if (stack.length < 1) {\n stack.push(this.next as string);\n } else {\n stack[0] = \"cel-multi-line-start\";\n }\n\n if (stack.length < 2) {\n stack.push(indent.length);\n } else {\n stack[1] = indent.length;\n }\n return this.token as string;\n },\n next: \"cel-multi-line-start\",\n },\n ...value\n .slice(indexOfStringToken + 1)\n .filter((rule) => rule.token !== \"string\"),\n ],\n ];\n }\n return [key, value];\n })\n .concat(\n Object.entries(\n getCommonExpressionLanguageRules({\n yamlContext: \"multi-line\",\n })\n ),\n Object.entries(\n getCommonExpressionLanguageRules({\n yamlContext: \"double-quoted\",\n })\n ),\n Object.entries(\n getCommonExpressionLanguageRules({\n yamlContext: \"single-quoted\",\n })\n )\n )\n );\n\n this.normalizeRules();\n }\n }\n\n return class CommonExpressionLanguageYamlMode extends ace.require(\n \"ace/mode/yaml\"\n ).Mode {\n constructor() {\n super();\n this.HighlightRules = CustomHighlightRules;\n }\n };\n}\n","import ace from \"ace-builds\";\nimport \"../aceBuilds/index.js\";\nimport { getCommonExpressionLanguageRules } from \"./CommonExpressionLanguageRules.js\";\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type\nexport function getCommonExpressionLanguageMode() {\n // istanbul ignore next\n class CommonExpressionLanguageHighlightRules extends ace.require(\n \"ace/mode/text_highlight_rules\"\n ).TextHighlightRules {\n constructor() {\n super();\n this.$rules = getCommonExpressionLanguageRules();\n this.normalizeRules();\n }\n }\n\n return class CommonExpressionLanguageMode extends ace.require(\n \"ace/mode/text\"\n ).Mode {\n constructor() {\n super();\n this.HighlightRules = CommonExpressionLanguageHighlightRules;\n }\n };\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%206%203%27%20enable-background%3D%27new%200%200%206%203%27%20height%3D%273%27%20width%3D%276%27%3E%3Cg%20fill%3D%27%23f14c4c%27%3E%3Cpolygon%20points%3D%275.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0%27%2F%3E%3Cpolygon%20points%3D%274%2C0%206%2C2%206%2C0.6%205.4%2C0%27%2F%3E%3Cpolygon%20points%3D%270%2C2%201%2C3%202.4%2C3%200%2C0.6%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%206%203%27%20enable-background%3D%27new%200%200%206%203%27%20height%3D%273%27%20width%3D%276%27%3E%3Cg%20fill%3D%27%23cca700%27%3E%3Cpolygon%20points%3D%275.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0%27%2F%3E%3Cpolygon%20points%3D%274%2C0%206%2C2%206%2C0.6%205.4%2C0%27%2F%3E%3Cpolygon%20points%3D%270%2C2%201%2C3%202.4%2C3%200%2C0.6%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".aceContainer{border:1px solid var(--color-border-divider-line);border-radius:var(--larger-border-radius)}.aceContainer.error{border-color:var(--antd-error-color)}.wrapper{position:relative}.themeTomorrow,\\n.themeGithub{color:#cccccc}.wrapper:hover .aceToolbar{display:block}.aceMarkerOfHighlight,\\n.aceMarkerOfError,\\n.aceMarkerOfWarn{position:absolute;border-radius:0}.aceMarkerOfHighlight{border-bottom-color:cyan}.aceMarkerOfError{background:url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \") repeat-x bottom left}.aceMarkerOfWarn{background:url(\" + ___CSS_LOADER_URL_REPLACEMENT_1___ + \") repeat-x bottom left}.expanded{position:fixed;z-index:1000;top:0;left:0;right:0;bottom:0;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.expanded .aceToolbar{top:28px;right:30px}.ace_start, .ace_end{margin:0}.ace_print-margin-layer{display:none}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type { AbstractForm } from \"./Form.js\";\n\nconst { method } = createDecorators();\n\nexport abstract class FormItemElementBase extends ReactNextElement {\n accessor #_notRender = false;\n accessor #validate = \"normal\";\n accessor #bindFormItem = false;\n\n get isFormItemElement(): true {\n return true;\n }\n\n set validateState(value: string) {\n this.#validate = value;\n this._render();\n }\n get validateState() {\n return this.#validate;\n }\n\n /**\n * 控制该表单项是否隐藏\n * @default false\n * @group ui\n */\n set notRender(value: boolean) {\n this.hidden = value;\n this.#_notRender = value;\n this._render();\n }\n get notRender(): boolean {\n return this.#_notRender;\n }\n\n get $bindFormItem() {\n return this.#bindFormItem;\n }\n set $bindFormItem(value: boolean) {\n this.#bindFormItem = value;\n this._render();\n }\n\n @method()\n getFormElement(): AbstractForm | null {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n let element: AbstractForm | null = this as unknown as AbstractForm;\n while ((element = element.parentNode as AbstractForm | null)) {\n if (!element || element.isFormElement) {\n break;\n }\n }\n return element as AbstractForm | null;\n }\n}\n"],"names":["generateBrickNextRules","quotedType","resultRules","forEach","placeholder","token","regex","next","placeholderEnd","defaultToken","transform","include","field","assignDefault","literal","pipe","pipeParameter","identifier","value","constant","number","stringValue","arrayValue","objectValue","dictionaryValue","GetBrickNextRules","rules","key","concat","map","rule","includeKey","brickNextEntryRules","push","BrickNextRules","_objectSpread","memoizedCompleterWords","brickNextSnippet","label","caption","snippet","meta","brickNextKeywords","brickNextCompleters","identifierRegexps","getCompletions","editor","session","pos","prefix","callback","word","score","_get","line","getLine","row","substr","column","test","get","storyboardJsonSchema","celKeywords","keyword","celInstanceMethodKeywords","snippets","CommonExpressionLanguageCompleter","restKeywords","_objectWithoutProperties","_excluded","Object","values","flatMap","words","split","getCommonExpressionLanguageCompleterWords","v","getCommonExpressionLanguageRules","yamlContext","arguments","length","undefined","keywordMapper","keywordTokenFactory","instanceMethodKeywordMapper","escapedRe","identifierRe","onMatch","val","state","stack","this","splice","tokenMap","Map","className","keywords","entries","kw","set","_tokenMap$get","tagNameAsTargetRegExp","pushActionOrTarget","type","startCol","endCol","highlightTokens","tokenPositions","currentType","highlightToken","find","item","modKey","navigator","platform","getClickableMarker","e","clickableTypes","markers","event","domEvent","keys","keyList","Array","isArray","modifierKeys","some","k","Number","includes","getDocumentPosition","marker","startRow","highlightType","CodeEditorItem","props","ref","setEditor","useState","ajv","setAjv","jsonSchema","setJsonSchema","brickNextError","useRef","compileSchema","containerRef","tempOverrideMode","setTempOverrideMode","useEffect","schemaValue","mode","isEqual","schemaLint","data","newAnnotations","_props$schemaRef","_brickNextError$curre","_brickNextError$curre2","current","compile","validate","schemaRef","raw","errors","_brickNextError$curre3","_uniqWith","position","getCursorPosition","errorMessage","uniqWith","o","dataPtah","message","dataPath","slice","join","validateJsonSchemaMode","text","localCompleter","useMemo","_editor","_session","_pos","_prefix","customCompleters","isString","_props$customComplete","completers","index","indexOf","_editor$getSession","_editor$getSession2","yamlLint","yamlLintAnnotations","schemaAnnotations","yaml","schema","json","_e$mark","_e$mark2","_e$mark3","lastRow","getLastVisibleRow","mark","reason","oldAnnotations","getSession","getAnnotations","setAnnotations","Ajv","schemaId","$data","_editor$getSession3","_editor$completers","_editor$completers2","customMode","JavaScriptHighlightRules","ace","CustomHighlightRules","YamlHighlightRules","constructor","super","originalRules","$rules","start","unshift","findIndexOfString","findIndex","mlString","doubleQuotedToBrickNextEntry","singleQuotedToBrickNextEntry","embedRules","normalizeRules","Mode","HighlightRules","setMode","_editor$getSession4","_editor$completers3","_editor$completers4","JsonHighlightRules","string","_editor$getSession5","CstyleBehaviour","CStyleFoldMode","FoldMode","MatchingBraceOutdent","TerraformHighlightRules","TextHighlightRules","blockComment","constants","variables","interpolated_variables","strings","escaped_chars","operators","interpolation","functions","parenthesis","$outdent","$behaviour","foldingRules","_editor$getSession6","_editor$completers5","_editor$completers6","fromEntries","filter","entry","_ref","indexOfStringToken","_exec$","_exec","indent","exec","_editor$getSession7","_editor$completers7","_editor$completers8","CommonExpressionLanguageHighlightRules","setMarkers","findHighlightTokens","useCallback","markerClassMap","getLength","metaTag","quote","i","tokens","getTokens","col","_loop","replace","leadingSpace","trailingSpace","match","endsWith","substring","_ref2","_highlight$level","highlight","endRow","level","inFront","getHighlightMarkers","default","warn","error","handleChange","_props$onChange","onChange","call","markersRef","_props$highlightToken","clickable","onMouseMove","renderer","setCursorStyle","onMouseOut","onClick","_props$onClickHighlig","selection","toSingleRange","onClickHighlightToken","on","off","resizeObserver","ResizeObserver","resize","observe","disconnect","_props$name","_props$maxLines","expanded","setExpanded","fn","window","removeEventListener","addEventListener","React","classNames","AceEditor","onLoad","editorInstance","curElement","validateState","name","style","width","theme","setOptions","readOnly","showLineNumbers","tabSize","printMargin","highlightActiveLine","enableLiveAutocompletion","showGutter","minLines","maxLines","editorProps","$blockScrolling","Infinity","showPrintMargin","onValidate","err","_props$onValidate","_getSession","JSON","parse","isEmpty","onBlur","handleOnBlur","CodeEditorItemWrapper","forwardRef","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","module","id","toString","method","createDecorators","_dec","_A","WeakMap","_notRender","_B","_validate","_C","_bindFormItem","FormItemElementBase","ReactNextElement","_classPrivateFieldInitSpec","_get_bindFormItem","_set_bindFormItem","_get_validate","_set_validate","_get__notRender","_set__notRender","writable","_initProto","isFormItemElement","_classPrivateFieldSet","_render","_classPrivateFieldGet","notRender","hidden","$bindFormItem","getFormElement","element","parentNode","isFormElement","_applyDecs2203R"],"sourceRoot":""}