@next-bricks/vs 0.5.13 → 0.5.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +1 -1
- package/dist/chunks/{2108.8134c438.js → 2108.3d95fa01.js} +2 -2
- package/dist/chunks/{2108.8134c438.js.map → 2108.3d95fa01.js.map} +1 -1
- package/dist/chunks/{2383.410fe539.js → 2383.09566fe0.js} +2 -2
- package/dist/chunks/{2383.410fe539.js.map → 2383.09566fe0.js.map} +1 -1
- package/dist/chunks/{code-editor.8ad06826.js → code-editor.92143cf9.js} +2 -2
- package/dist/chunks/{code-editor.8ad06826.js.map → code-editor.92143cf9.js.map} +1 -1
- package/dist/chunks/{main.4cc4195e.js → main.2199680e.js} +2 -2
- package/dist/chunks/{main.4cc4195e.js.map → main.2199680e.js.map} +1 -1
- package/dist/{index.1979e749.js → index.4e5e1fc5.js} +2 -2
- package/dist/{index.1979e749.js.map → index.4e5e1fc5.js.map} +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/2383.410fe539.js","mappings":"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","sources":["webpack:///../../src/FormItemElement.tsx","webpack:///./src/code-editor/utils/brickNextSourceMap.ts","webpack:///./src/code-editor/constants.ts","webpack:///./src/code-editor/utils/constants.ts","webpack:///./src/code-editor/utils/brickNextYaml.ts","webpack:///./src/code-editor/index.css?aefa","webpack:///./src/code-editor/index.tsx","webpack:///./src/code-editor/index.css"],"sourcesContent":["import { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type { AbstractForm } from \"./Form.js\";\nimport { UseSingleBrickConf } from \"@next-core/types\";\n\nconst { method, property } = 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 @property({\n attribute: false,\n })\n accessor helpBrick:\n | { useBrick: UseSingleBrickConf | UseSingleBrickConf[] }\n | undefined;\n\n @property({\n attribute: false,\n })\n accessor labelBrick:\n | { useBrick: UseSingleBrickConf | UseSingleBrickConf[] }\n | undefined;\n\n @method()\n setNotRender(value: boolean) {\n this.notRender = value;\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","import type { State } from \"js-yaml\";\nimport { isEqual } from \"lodash\";\n\nexport interface Token {\n startLineNumber: number;\n endLineNumber: number;\n startColumn: number;\n endColumn: number;\n source: string;\n isString?: boolean;\n}\n\nclass BrickNextYamlSourceMap {\n #recordsToken: Token[];\n #prefixPosition: number;\n #recordLastWord: string;\n\n constructor() {\n this.#recordsToken = [];\n this.#prefixPosition = 0;\n this.#recordLastWord = \"\";\n }\n\n private handleState(event: \"open\" | \"close\", state: State): void {\n if (event === \"close\") {\n const { line, position, lineStart, result } = state;\n const curWord = state.input.substring(lineStart, position);\n if (curWord.trim() === this.#recordLastWord.trim()) return;\n this.#recordLastWord = curWord;\n let startLineNumber = line + 1;\n let endLineNumber = line + 1;\n let startColumn = position - lineStart - result.length;\n let endColumn = position - lineStart - state.lineIndent;\n if (\n typeof result === \"string\" &&\n /^\\s*<%[~=]?\\s/.test(result) &&\n /\\s%>\\s*$/.test(result)\n ) {\n let source = result;\n const wrapLength = result.match(/\\n/g)?.length;\n if (wrapLength) {\n let nearWrapIndex = this.#prefixPosition;\n for (let i = this.#prefixPosition; i < state.input.length; i++) {\n if (state.input[i] === \"\\n\") {\n nearWrapIndex = i + 1;\n break;\n }\n }\n const specilStringPrefix = /(\\|-|>-)/.test(\n state.input.substring(this.#prefixPosition, position - 1)\n );\n source = state.input.substring(nearWrapIndex, position - 1);\n startLineNumber =\n state.line - wrapLength + 1 - Number(specilStringPrefix);\n endLineNumber = line;\n startColumn = 0;\n endColumn = 0;\n }\n const token = {\n source,\n startLineNumber,\n endLineNumber,\n startColumn,\n endColumn,\n isString: ['\"', \"'\"].includes(\n state.input[lineStart + startColumn - 2]\n ),\n };\n !this.#recordsToken.find((item) => isEqual(item, token)) &&\n this.#recordsToken.push(token);\n }\n this.#prefixPosition = position;\n }\n }\n\n public listen() {\n return this.handleState.bind(this);\n }\n\n public getTokens = () => {\n return this.#recordsToken;\n };\n}\n\nexport default BrickNextYamlSourceMap;\n","export const EDITOR_FONT_SIZE = 12;\nexport const EDITOR_LINE_HEIGHT = 18;\nexport const EDITOR_SCROLLBAR_SIZE = 12;\nexport const EDITOR_PADDING_VERTICAL = 12;\n","export const EVALUATE_KEYWORD = [\n \"CTX\",\n \"STATE\",\n \"DATA\",\n \"EVENT\",\n \"FLAGS\",\n \"APP\",\n \"ANCHOR\",\n \"HASH\",\n \"INSTALLED_APPS\",\n \"ITEM\",\n \"LOCAL_STORAGE\",\n \"MEDIA\",\n \"MISC\",\n \"PARAMS\",\n \"PATH\",\n \"PROCESSORS\",\n \"QUERY\",\n \"QUERY_ARRAY\",\n \"SESSION_STORAGE\",\n \"TPL\",\n \"SYS\",\n \"BASE_URL\",\n \"IMG\",\n \"FN\",\n \"I18N\",\n \"I18N_TEXT\",\n \"PERMISSIONS\",\n \"THEME\",\n];\n\nexport const brickNextKeywords = [\n \"target\",\n \"targetRef\",\n \"properties\",\n \"events\",\n \"method\",\n \"callback\",\n \"success\",\n \"error\",\n \"action\",\n \"useProvider\",\n \"useChildren\",\n \"useBrick\",\n \"args\",\n \"if\",\n \"then\",\n];\n\nexport const Level = {\n hit: 1,\n info: 2,\n warn: 4,\n error: 8,\n};\n","import * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport storyboardJsonSchema from \"@next-core/types/storyboard.json\";\nimport { EVALUATE_KEYWORD, brickNextKeywords, Level } from \"./constants.js\";\nimport { get } from \"lodash\";\n\nconst findKeys = (\n model: monaco.editor.ITextModel,\n range: monaco.Range | monaco.editor.IWordAtPosition,\n line: number\n) => {\n const curLevelKeys: string[] = [];\n const keyList: string[] = [];\n let parentKey = \"\";\n let i = line;\n let startColumn = range.startColumn;\n while (i > 0) {\n const prefixLineWord = model.getValueInRange({\n startLineNumber: i,\n endLineNumber: i,\n startColumn: 0,\n endColumn: Infinity,\n });\n const matchWord = prefixLineWord.match(/^([\\s|-]*)(\\w+)(?=:)/);\n if (matchWord) {\n const [_, wordspace, key] = matchWord;\n if (wordspace.length === range.startColumn - 1) {\n curLevelKeys.unshift(key);\n }\n if (wordspace.length < startColumn - 1) {\n !parentKey && (parentKey = key);\n startColumn = wordspace.length;\n keyList.unshift(key);\n }\n }\n i--;\n }\n return {\n curLevelKeys,\n keyList,\n parentKey,\n };\n};\n\nconst getPrefixWord = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): {\n word: string | undefined;\n token: string;\n} => {\n const word = model.getWordUntilPosition(position);\n const prefixToken = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - word.word.length - 1,\n endColumn: position.column - word.word.length,\n });\n const prefixWord = model.getWordAtPosition({\n ...position,\n column: position.column - word?.word?.length - 1,\n });\n return {\n word: prefixWord?.word,\n token: prefixToken,\n };\n};\n\nexport const isInEvaluateBody = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): boolean => {\n const word = model.getWordUntilPosition(position);\n const prefixEvaluateOperator = model.findPreviousMatch(\n \"<%\",\n position,\n false,\n false,\n null,\n false\n );\n const suffixEvaluateOperator = model.findNextMatch(\n \"%>\",\n position,\n false,\n false,\n null,\n false\n );\n const isInEvaluateBody =\n prefixEvaluateOperator?.range.startLineNumber &&\n suffixEvaluateOperator?.range.startLineNumber &&\n prefixEvaluateOperator.range.startLineNumber <= position.lineNumber &&\n suffixEvaluateOperator.range.endLineNumber >= position.lineNumber;\n\n if (isInEvaluateBody) {\n const { parentKey: prefixParentKey } = findKeys(\n model,\n prefixEvaluateOperator.range,\n prefixEvaluateOperator?.range.startLineNumber\n );\n const { parentKey: suffixParentKey } = findKeys(\n model,\n suffixEvaluateOperator.range,\n suffixEvaluateOperator?.range.startLineNumber\n );\n const { keyList } = findKeys(model, word, position.lineNumber);\n if (\n prefixParentKey === suffixParentKey &&\n keyList.includes(prefixParentKey)\n ) {\n return true;\n }\n }\n return false;\n};\n\nexport const brickNextYAMLProvideCompletionItems = (\n completers?: monaco.languages.CompletionItem[],\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >\n) => {\n return (\n model: monaco.editor.ITextModel,\n position: monaco.Position,\n context: monaco.languages.CompletionContext,\n _token: monaco.CancellationToken\n ): monaco.languages.ProviderResult<monaco.languages.CompletionList> => {\n const word = model.getWordUntilPosition(position);\n const { word: prefixWord, token: prefixToken } = getPrefixWord(\n model,\n position\n );\n const curLineWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: 0,\n endColumn: Infinity,\n });\n const range = {\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: word.startColumn,\n endColumn: word.endColumn,\n };\n\n const isFirstLevelProperty = word.startColumn === 1;\n const { curLevelKeys } = findKeys(model, word, model.getLineCount());\n\n if (context.triggerCharacter === \"<\") {\n const fullWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - 2,\n endColumn: position.column + 2,\n });\n if (fullWord.trim() !== \"<\") {\n return {\n suggestions: [],\n };\n }\n return {\n suggestions: [\n {\n label: \"<% %>\",\n detail: \"Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"% ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n {\n label: \"<%= %>\",\n detail: \"Track Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"%= ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n ],\n };\n }\n\n if (isFirstLevelProperty) {\n return {\n suggestions: (completers ?? [])\n .filter((item) => !curLevelKeys.includes(item.label as string))\n .map((item) => ({\n ...item,\n label: item.label,\n insertText: item.insertText || (item.label as string),\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (\n context.triggerCharacter === \":\" ||\n (context.triggerCharacter === \".\" &&\n prefixWord &&\n ![\"CTX\", \"STATE\", \"FN\"].includes(prefixWord))\n ) {\n if (prefixWord === \"action\" && context.triggerCharacter === \":\") {\n const actions = get(\n storyboardJsonSchema,\n \"definitions.BuiltinBrickEventHandler.properties.action.enum\"\n );\n return {\n suggestions: ((actions as unknown as string[]) ?? [])?.map(\n (item) => ({\n label: ` ${item}`,\n detail: \"event action\",\n kind: monaco.languages.CompletionItemKind.Keyword,\n insertText: ` ${item}`,\n range,\n })\n ),\n };\n }\n const matchCompletion = advancedCompleters?.[prefixWord as string];\n let matchTriggerCharacter = \"\";\n let list: monaco.languages.CompletionItem[] | undefined;\n if (matchCompletion && !Array.isArray(matchCompletion)) {\n list = matchCompletion.completers;\n matchTriggerCharacter = matchCompletion.triggerCharacter;\n } else {\n list = matchCompletion;\n }\n if (\n matchTriggerCharacter\n ? context.triggerCharacter === matchTriggerCharacter && list\n : list\n ) {\n return {\n suggestions: (list ?? []).map((item) => {\n const label =\n matchTriggerCharacter === \":\"\n ? ` ${item.label}`\n : (item.label as string);\n return {\n ...item,\n label: label,\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: item.insertText || label,\n range,\n };\n }),\n };\n }\n }\n\n if (isInEvaluateBody(model, position)) {\n if (\n prefixWord &&\n [\"CTX\", \"STATE\"].includes(prefixWord) &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[prefixWord]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (\n prefixWord === \"FN\" &&\n context.triggerCharacter === \".\" &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[\"FN\"]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (prefixWord === \"APP\" && context.triggerCharacter === \".\") {\n const appProperties = get(\n storyboardJsonSchema,\n \"definitions.MicroApp.properties\"\n );\n const suggestions = [];\n for (const [k, v] of Object.entries(\n appProperties as unknown as Record<\n string,\n {\n description: string;\n type: string;\n enum: string[];\n }\n >\n )) {\n suggestions.push({\n label: k,\n kind: monaco.languages.CompletionItemKind.Value,\n documentation: v.description,\n detail: v.enum ? v.enum.join(\"|\") : v.type,\n insertText: k,\n range,\n });\n }\n return {\n suggestions,\n };\n }\n\n if ([\".\", \":\"].includes(prefixToken)) {\n return {\n suggestions: [],\n };\n }\n\n return {\n suggestions: EVALUATE_KEYWORD.map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (/^[\\s|-]*\\w$/.test(curLineWord)) {\n return {\n suggestions: brickNextKeywords\n .map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n }))\n .filter((item) => !curLevelKeys.includes(item.label as string)),\n };\n }\n\n return {\n suggestions: [],\n };\n };\n};\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, {\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { useCurrentTheme } from \"@next-core/react-runtime\";\nimport { FormItemElementBase } from \"@next-shared/form\";\nimport type { FormItem, FormItemProps } from \"@next-bricks/form/form-item\";\nimport * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport { register as registerJavaScript } from \"@next-core/monaco-contributions/javascript\";\nimport { register as registerTypeScript } from \"@next-core/monaco-contributions/typescript\";\nimport { register as registerYaml } from \"@next-core/monaco-contributions/yaml\";\nimport { register as registerHtml } from \"@next-core/monaco-contributions/html\";\nimport yaml from \"js-yaml\";\nimport BrickNextYamlSourceMap, { Token } from \"./utils/brickNextSourceMap.js\";\nimport \"@next-core/theme\";\nimport { isEqual } from \"lodash\";\nimport {\n EDITOR_SCROLLBAR_SIZE,\n EDITOR_PADDING_VERTICAL,\n EDITOR_LINE_HEIGHT,\n EDITOR_FONT_SIZE,\n} from \"./constants.js\";\nimport { brickNextYAMLProvideCompletionItems } from \"./utils/brickNextYaml.js\";\nimport \"./index.css\";\nimport { EVALUATE_KEYWORD, Level } from \"./utils/constants.js\";\nimport type { MemberExpression, Identifier } from \"@babel/types\";\nimport { preevaluate } from \"@next-core/cook\";\n\nregisterJavaScript(monaco);\nregisterTypeScript(monaco);\nregisterYaml(monaco, \"brick_next_yaml\");\nregisterHtml(monaco);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedFormItem = wrapBrick<FormItem, FormItemProps>(\"eo-form-item\");\n\nexport interface CodeEditorProps {\n name?: string;\n label?: string;\n value?: string;\n language?: string;\n theme?: string;\n required?: boolean;\n readOnly?: boolean;\n automaticLayout?: \"fit-container\" | \"fit-content\" | \"none\";\n minLines?: number;\n maxLines?: number;\n height?: string | number;\n completers?: monaco.languages.CompletionItem[];\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >;\n markers?: Marker[];\n links?: string[];\n validateState?: string;\n}\n\nexport interface Marker {\n token: string;\n level: keyof typeof Level;\n message: string;\n code?: {\n value: string;\n target: string;\n };\n params?: string[];\n}\n\n/**\n * 构件 code-editor\n */\nexport\n@defineElement(\"vs.code-editor\", {\n // There are a few issues for monaco-editor with shadow DOM.\n // So we use light DOM for now.\n // See https://github.com/microsoft/monaco-editor/issues?q=is%3Aissue+is%3Aopen+shadow+dom\n shadowOptions: false,\n})\nclass CodeEditor extends FormItemElementBase implements CodeEditorProps {\n @property()\n accessor name: string | undefined;\n\n @property()\n accessor label: string | undefined;\n\n @property({ attribute: false })\n accessor value: string | undefined;\n\n /**\n * @default \"plaintext\"\n */\n @property()\n accessor language: string | undefined;\n\n /**\n * 主题,支持 `\"auto\" | \"vs\" | \"vs-dark\"`\n *\n * @default \"auto\"\n * @group ui\n */\n @property() accessor theme: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor required: boolean | undefined;\n\n @property({\n type: Boolean,\n })\n accessor readOnly: boolean | undefined;\n\n @property()\n accessor automaticLayout:\n | \"fit-container\"\n | \"fit-content\"\n | \"none\"\n | undefined;\n\n /**\n * @default 3\n */\n @property({ type: Number })\n accessor minLines: number | undefined;\n\n @property({\n attribute: false,\n })\n accessor completers: monaco.languages.CompletionItem[] | undefined;\n\n @property({\n attribute: false,\n })\n accessor advancedCompleters:\n | Record<\n string,\n {\n triggerCharacter: string;\n completers: monaco.languages.CompletionItem[];\n }\n >\n | undefined;\n\n @property({ attribute: false })\n accessor markers: Marker[] | undefined;\n\n @property({ attribute: false })\n accessor links: string[] | undefined;\n\n /**\n * @default Infinity\n */\n @property({ type: Number })\n accessor maxLines: number | undefined;\n\n @property({ attribute: false })\n accessor height: string | number | undefined;\n\n @property()\n accessor message: string | undefined;\n\n @event({ type: \"code.change\" })\n accessor #codeChange!: EventEmitter<string>;\n\n @event({ type: \"user.input\" })\n accessor #userInput!: EventEmitter<string>;\n\n #handleChange = (value: string, parseValue: any, isFlush: boolean) => {\n this.getFormElement()?.formStore.onChange(this.name!, value);\n this.#codeChange.emit(parseValue);\n if (!isFlush) {\n this.#userInput.emit(parseValue);\n }\n };\n\n @event({ type: \"token.click\" })\n accessor #highlighClickEvent!: EventEmitter<string>;\n\n #handleHighlightClick = (word: string) => {\n this.#highlighClickEvent.emit(word);\n };\n\n #handleValidtor = (value: string) => {\n try {\n yaml.load(value);\n } catch {\n return \"请填写正确的格式\";\n }\n return \"\";\n };\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n super.connectedCallback();\n }\n\n render() {\n return (\n <WrappedFormItem\n curElement={this}\n formElement={this.getFormElement()}\n name={this.name}\n label={this.label}\n required={this.required}\n validator={this.#handleValidtor}\n >\n <CodeEditorComponent\n value={this.value}\n language={this.language}\n readOnly={this.readOnly}\n theme={this.theme}\n automaticLayout={this.automaticLayout}\n minLines={this.minLines}\n maxLines={this.maxLines}\n height={this.height}\n completers={this.completers}\n advancedCompleters={this.advancedCompleters}\n markers={this.markers}\n links={this.links}\n validateState={this.validateState}\n onChange={this.#handleChange}\n onHighlightClick={this.#handleHighlightClick}\n />\n </WrappedFormItem>\n );\n }\n}\n\nexport function CodeEditorComponent({\n value: _value,\n language: _language,\n theme: _theme,\n minLines: _minLines,\n maxLines: _maxLines,\n height: _height,\n automaticLayout,\n completers,\n advancedCompleters,\n markers,\n readOnly,\n links,\n validateState,\n onChange,\n onHighlightClick,\n}: CodeEditorProps & {\n onChange(value: string, parseValue: any, isFlush: boolean): void;\n onHighlightClick(word: string): void;\n}) {\n const value = _value ?? \"\";\n const language = _language ?? \"plaintext\";\n const theme = _theme ?? \"auto\";\n const minLines = _minLines ?? 3;\n const maxLines = _maxLines ?? Infinity;\n const height = _height ?? 500;\n\n const containerRef = useRef<HTMLDivElement>(null);\n const decorationsCollection =\n useRef<monaco.editor.IEditorDecorationsCollection>();\n const editorRef = useRef<monaco.editor.IStandaloneCodeEditor>();\n const size = useRef<monaco.editor.IDimension>({\n width: 300,\n height: getContentHeightByCode(value, minLines, maxLines),\n });\n const [actualHeight, setActualHeight] = useState<string | number>();\n // `automaticLayout` should never change\n const automaticLayoutRef = useRef(automaticLayout);\n const systemTheme = useCurrentTheme();\n\n useEffect(() => {\n // Currently theme is configured globally.\n // See https://github.com/microsoft/monaco-editor/issues/338\n monaco.editor.setTheme(\n theme === \"auto\"\n ? systemTheme === \"dark\" || systemTheme === \"dark-v2\"\n ? \"vs-dark\"\n : \"vs\"\n : theme\n );\n }, [systemTheme, theme]);\n\n useEffect(() => {\n if (editorRef.current) {\n const currentModel = editorRef.current.getModel()!;\n monaco.editor.setModelLanguage(currentModel, language);\n if (!isEqual(currentModel.getValue(), value)) {\n currentModel.setValue(value);\n }\n }\n }, [value, language]);\n\n useEffect(() => {\n if (language === \"brick_next_yaml\") {\n const provideCompletionItems = brickNextYAMLProvideCompletionItems(\n completers,\n advancedCompleters\n );\n const monacoProviderRef = monaco.languages.registerCompletionItemProvider(\n \"brick_next_yaml\",\n {\n provideCompletionItems,\n triggerCharacters: [\".\", \":\", \"<\"],\n }\n );\n return () => {\n monacoProviderRef.dispose();\n };\n }\n }, [completers, advancedCompleters, language]);\n\n const parseYaml = useCallback(() => {\n const map = new BrickNextYamlSourceMap();\n let parseValue = undefined;\n if (editorRef.current) {\n const model = editorRef.current.getModel()!;\n\n try {\n parseValue = yaml.load(value, {\n listener: map.listen(),\n });\n\n if ((links || markers) && editorRef.current) {\n const tokens: Omit<\n Token & { token: string; property: string },\n \"source\"\n >[] = [];\n map.getTokens().forEach((item) => {\n const { startLineNumber, endLineNumber, startColumn } = item;\n const globalNodes: MemberExpression[] = [];\n const result = preevaluate(item.source, {\n hooks: {\n beforeVisit(node) {\n if (\n node.type === \"MemberExpression\" &&\n node.object.type === \"Identifier\" &&\n EVALUATE_KEYWORD.includes(node.object.name) &&\n node.property.type === \"Identifier\"\n ) {\n globalNodes.push(node);\n }\n },\n },\n });\n\n globalNodes.forEach((node) => {\n const { start, end, loc } = node;\n if (item.startLineNumber !== item.endLineNumber) {\n const hadWrap = /<%[ ]+/.test(result.prefix);\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber:\n item.startLineNumber +\n (loc?.start?.line as number) -\n Number(hadWrap),\n endLineNumber:\n item.startLineNumber +\n (loc?.end?.line as number) -\n Number(hadWrap),\n startColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.start?.column as number) +\n 1,\n endColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.end?.column as number) +\n 1,\n });\n } else {\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber,\n endLineNumber,\n startColumn:\n startColumn +\n (start as number) +\n result.prefix?.length +\n Number(!item.isString),\n endColumn:\n startColumn +\n (end as number) +\n result.prefix?.length +\n Number(!item.isString),\n });\n }\n });\n });\n\n decorationsCollection.current?.set(\n tokens\n .filter((token) => links?.includes(token.token))\n .map((token) => ({\n range: new monaco.Range(\n token.startLineNumber,\n token.startColumn,\n token.endLineNumber,\n token.endColumn\n ),\n options: {\n inlineClassName: \"highlight\",\n },\n }))\n );\n\n if (markers) {\n const modelMarkers = tokens\n .map((token) => {\n const matchTokenConf = markers.find(\n (item) => item.token === token.token\n );\n const hadProperty = matchTokenConf?.params\n ? matchTokenConf.params?.includes(token.property)\n : true;\n if (!hadProperty) {\n return {\n severity: Level.warn,\n message: \"Miss Property\",\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n if (matchTokenConf && matchTokenConf.message) {\n return {\n severity: Level[matchTokenConf?.level ?? \"warn\"],\n message: matchTokenConf.message,\n ...(matchTokenConf.code\n ? {\n code: {\n value: matchTokenConf.code.value,\n target: monaco.Uri.parse(\n matchTokenConf.code.target\n ),\n },\n }\n : {}),\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n })\n .filter(Boolean) as monaco.editor.IMarkerData[];\n\n monaco.editor.setModelMarkers(\n model,\n \"brick_next_yaml\",\n modelMarkers\n );\n }\n }\n } catch (e) {\n monaco.editor.setModelMarkers(model, \"brick_next_yaml\", []);\n decorationsCollection?.current?.set([]);\n }\n }\n return parseValue;\n }, [value, links, markers]);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-content\" || !containerRef.current) {\n return;\n }\n\n size.current.width = containerRef.current.getBoundingClientRect().width;\n editorRef.current?.layout(size.current);\n\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === containerRef.current) {\n const newWidth = entry.contentBoxSize\n ? entry.contentBoxSize[0].inlineSize\n : entry.contentRect.width;\n if (newWidth !== size.current.width) {\n size.current.width = newWidth;\n editorRef.current?.layout(size.current);\n }\n break;\n }\n }\n });\n observer.observe(containerRef.current);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-container\") {\n return;\n }\n\n const container = getDOMContainer(containerRef.current);\n if (!container) {\n return;\n }\n // Manually layout the editor once the container resized.\n const observer = new ResizeObserver((): void => {\n setActualHeight(container.offsetHeight);\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useEffect(() => {\n if (\n automaticLayoutRef.current !== \"fit-container\" &&\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n setActualHeight(height);\n }\n }, [height]);\n\n useEffect(() => {\n if (!editorRef.current) return;\n editorRef.current.updateOptions({\n readOnly,\n });\n }, [readOnly]);\n\n useEffect(() => {\n if (editorRef.current || !containerRef.current) {\n return;\n }\n const model = monaco.editor.createModel(value, language);\n editorRef.current = monaco.editor.create(containerRef.current, {\n model,\n minimap: {\n enabled: false,\n },\n scrollBeyondLastLine: false,\n tabSize: 2,\n insertSpaces: true,\n automaticLayout: automaticLayoutRef.current !== \"fit-content\",\n fontSize: EDITOR_FONT_SIZE,\n lineHeight: EDITOR_LINE_HEIGHT,\n scrollbar: {\n horizontalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n verticalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n horizontalSliderSize: 8,\n verticalSliderSize: 8,\n alwaysConsumeMouseWheel: false,\n },\n padding: {\n top: EDITOR_PADDING_VERTICAL,\n // When use `fit-content`, we always plus the height with the vertical padding.\n // Thus the possible x-scrollbar will not take extra space at the bottom.\n bottom:\n automaticLayoutRef.current == \"fit-content\"\n ? undefined\n : EDITOR_PADDING_VERTICAL,\n },\n overviewRulerBorder: false,\n mouseWheelScrollSensitivity: 0.5,\n suggest: {\n insertMode: \"insert\",\n preview: true,\n },\n readOnly: readOnly,\n quickSuggestions: { strings: true, other: true, comments: true },\n });\n\n decorationsCollection.current =\n editorRef.current.createDecorationsCollection();\n }, [value, language, readOnly]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (language === \"brick_next_yaml\" && editor) {\n const model = editor.getModel()!;\n const editorMouseDownEvent = editor.onMouseDown(function (e) {\n const decorations = decorationsCollection.current;\n (decorations?.getRanges?.() ?? []).forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n onHighlightClick(model.getValueInRange(range));\n }\n });\n });\n\n const mouseOverEvent = editor.onMouseMove(function (e) {\n const decorations = decorationsCollection.current;\n if (!decorations) return;\n decorations.getRanges().forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: range.equalsRange(item)\n ? \"highlight pointer\"\n : \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n } else if (!e.event[modKey]) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n }\n });\n });\n\n parseYaml();\n\n return () => {\n mouseOverEvent?.dispose();\n editorMouseDownEvent?.dispose();\n };\n }\n }, [language, onHighlightClick, systemTheme, theme, parseYaml]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (\n !editor ||\n !containerRef.current ||\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n return;\n }\n\n const listener = editor.onDidContentSizeChange((e) => {\n if (e.contentHeightChanged) {\n const newHeight = fixEditorHeightWithScrollBar(\n e.contentHeight,\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n }\n });\n\n const newHeight = fixEditorHeightWithScrollBar(\n editor.getContentHeight(),\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n\n return () => {\n listener.dispose();\n };\n }, [maxLines, minLines]);\n\n useEffect(() => {\n if (!editorRef.current) {\n return;\n }\n const currentModel = editorRef.current.getModel()!;\n const listener = currentModel.onDidChangeContent((e) => {\n const parseValue = parseYaml();\n onChange(currentModel.getValue(), parseValue, e.isFlush);\n });\n return () => {\n listener.dispose();\n };\n }, [onChange, parseYaml]);\n\n useEffect(() => {\n return () => {\n editorRef.current?.getModel()?.dispose();\n editorRef.current?.dispose();\n };\n }, []);\n\n return (\n <div\n ref={containerRef}\n style={{\n height: actualHeight,\n ...(validateState === \"error\"\n ? {\n outline: \"1px solid var(--antd-error-color)\",\n }\n : {}),\n }}\n />\n );\n}\n\nfunction getContentHeightByCode(\n code: string,\n minLines: number,\n maxLines: number\n): number {\n return getContentHeightByLines(\n Math.min(maxLines, Math.max(minLines, code.split(\"\\n\").length))\n );\n}\n\nfunction fixEditorHeightWithScrollBar(\n contentHeight: number,\n minLines: number,\n maxLines: number\n): number {\n let fixedHeight = contentHeight;\n if ((contentHeight - EDITOR_PADDING_VERTICAL) % EDITOR_LINE_HEIGHT === 0) {\n fixedHeight = contentHeight + EDITOR_SCROLLBAR_SIZE;\n }\n return Math.min(\n getContentHeightByLines(maxLines),\n Math.max(fixedHeight, getContentHeightByLines(minLines))\n );\n}\n\nfunction getContentHeightByLines(lines: number): number {\n return (\n lines * EDITOR_LINE_HEIGHT + EDITOR_SCROLLBAR_SIZE + EDITOR_PADDING_VERTICAL\n );\n}\n\n/** Get the direct DOM container of `vs.code-editor` */\nfunction getDOMContainer(element: HTMLElement | null) {\n let brick = element;\n while (brick) {\n const found = brick.tagName.toLowerCase() === \"vs.code-editor\";\n brick = brick.parentElement;\n if (found) {\n return brick;\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\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["method","property","createDecorators","_dec","attribute","_dec2","_dec3","_dec4","_A","WeakMap","_notRender","_B","_validate","_C","_bindFormItem","_D","_E","FormItemElementBase","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_bindFormItem","set","_set_bindFormItem","_get_validate","_set_validate","_get__notRender","_set__notRender","writable","value","_initProto","_init_helpBrick","_init_labelBrick","isFormItemElement","validateState","_classPrivateFieldSet","this","_render","_classPrivateFieldGet","notRender","hidden","$bindFormItem","helpBrick","v","labelBrick","setNotRender","getFormElement","element","parentNode","isFormElement","_class","_applyDecs","e","_recordsToken","_prefixPosition","_recordLastWord","EDITOR_LINE_HEIGHT","EDITOR_SCROLLBAR_SIZE","EDITOR_PADDING_VERTICAL","EVALUATE_KEYWORD","brickNextKeywords","Level","hit","info","warn","error","findKeys","model","range","line","curLevelKeys","keyList","parentKey","i","startColumn","matchWord","getValueInRange","startLineNumber","endLineNumber","endColumn","Infinity","match","_","wordspace","key","length","unshift","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","registerJavaScript","monaco","registerTypeScript","registerYaml","registerHtml","_CodeEditor","defineElement","event","WrappedFormItem","wrapBrick","shadowOptions","_dec5","_dec6","_dec7","type","Boolean","_dec8","_dec9","_dec10","Number","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_codeChange","_R","_userInput","_handleChange","_S","_highlighClickEvent","_handleHighlightClick","_handleValidtor","_set_codeChange2","_set_codeChange","_get_codeChange2","_get_codeChange","_set_userInput2","_set_userInput","_get_userInput2","_get_userInput","_set_highlighClickEvent2","_set_highlighClickEvent","_get_highlighClickEvent2","_get_highlighClickEvent","CodeEditorComponent","_ref","_value","language","_language","theme","_theme","minLines","_minLines","maxLines","_maxLines","height","_height","automaticLayout","completers","advancedCompleters","markers","readOnly","links","onChange","onHighlightClick","containerRef","useRef","decorationsCollection","editorRef","size","width","getContentHeightByCode","actualHeight","setActualHeight","useState","automaticLayoutRef","systemTheme","useCurrentTheme","useEffect","setTheme","current","currentModel","getModel","setModelLanguage","isEqual","getValue","setValue","provideCompletionItems","brickNextYAMLProvideCompletionItems","position","context","_token","word","getWordUntilPosition","prefixWord","token","prefixToken","getPrefixWord","_word$word","lineNumber","column","getWordAtPosition","_objectSpread","curLineWord","isFirstLevelProperty","getLineCount","triggerCharacter","trim","suggestions","label","detail","kind","CompletionItemKind","Value","insertText","insertTextRules","CompletionItemInsertTextRule","InsertAsSnippet","filter","item","includes","map","Keyword","_ref2","storyboardJsonSchema","concat","list","_list","matchCompletion","matchTriggerCharacter","Array","isArray","isInEvaluateBody","prefixEvaluateOperator","findPreviousMatch","suffixEvaluateOperator","findNextMatch","prefixParentKey","suffixParentKey","_advancedCompleters$p","_advancedCompleters$p2","_advancedCompleters$F","_advancedCompleters$F2","appProperties","k","Object","entries","push","documentation","description","enum","join","test","monacoProviderRef","registerCompletionItemProvider","triggerCharacters","dispose","parseYaml","useCallback","_defineProperty","handleState","state","lineStart","result","curWord","input","substring","lineIndent","_result$match","source","wrapLength","nearWrapIndex","specilStringPrefix","isString","find","listen","bind","parseValue","undefined","yaml","listener","_decorationsCollectio","tokens","getTokens","forEach","globalNodes","preevaluate","hooks","beforeVisit","node","object","name","start","end","loc","_node$object","_loc$start","_loc$end","_loc$start2","_loc$end2","hadWrap","prefix","_node$object2","_result$prefix","_result$prefix2","inlineClassName","modelMarkers","_matchTokenConf$param","_matchTokenConf$level","matchTokenConf","params","message","severity","level","code","target","parse","setModelMarkers","_decorationsCollectio2","useLayoutEffect","_editorRef$current","getBoundingClientRect","layout","observer","ResizeObserver","entry","_editorRef$current2","newWidth","contentBoxSize","inlineSize","contentRect","observe","disconnect","container","brick","found","tagName","toLowerCase","parentElement","getDOMContainer","offsetHeight","updateOptions","createModel","create","minimap","enabled","scrollBeyondLastLine","tabSize","insertSpaces","fontSize","lineHeight","scrollbar","horizontalScrollbarSize","verticalScrollbarSize","horizontalSliderSize","verticalSliderSize","alwaysConsumeMouseWheel","padding","top","bottom","overviewRulerBorder","mouseWheelScrollSensitivity","suggest","insertMode","preview","quickSuggestions","strings","other","comments","createDecorationsCollection","editor","editorMouseDownEvent","onMouseDown","_decorations$getRange","_decorations$getRange2","decorations","getRanges","call","modKey","navigator","platform","containsPosition","mouseOverEvent","onMouseMove","newDecorations","equalsRange","onDidContentSizeChange","contentHeightChanged","newHeight","fixEditorHeightWithScrollBar","contentHeight","getContentHeight","onDidChangeContent","isFlush","_editorRef$current3","_editorRef$current4","React","ref","style","outline","getContentHeightByLines","Math","min","max","split","fixedHeight","lines","_init_name","_init_label","_init_value","_init_language","_init_theme","_init_required","_init_readOnly","_init_automaticLayout","_init_minLines","_init_completers","_init_advancedCompleters","_init_markers","_init_links","_init_maxLines","_init_height","_init_message","_init_codeChange","_init_userInput","_this$getFormElement","formStore","emit","_init_highlighClickEvent","_unused","required","connectedCallback","display","super","render","curElement","formElement","validator","c","_initClass","o","has","_checkInRHS","___CSS_LOADER_EXPORT___","module","id"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/2383.09566fe0.js","mappings":"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","sources":["webpack:///../../src/FormItemElement.tsx","webpack:///./src/code-editor/utils/brickNextSourceMap.ts","webpack:///./src/code-editor/constants.ts","webpack:///./src/code-editor/utils/constants.ts","webpack:///./src/code-editor/utils/brickNextYaml.ts","webpack:///./src/code-editor/index.css?aefa","webpack:///./src/code-editor/index.tsx","webpack:///./src/code-editor/index.css"],"sourcesContent":["import { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type { AbstractForm } from \"./Form.js\";\nimport { UseSingleBrickConf } from \"@next-core/types\";\n\nconst { method, property } = 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 @property({\n attribute: false,\n })\n accessor helpBrick:\n | { useBrick: UseSingleBrickConf | UseSingleBrickConf[] }\n | undefined;\n\n @property({\n attribute: false,\n })\n accessor labelBrick:\n | { useBrick: UseSingleBrickConf | UseSingleBrickConf[] }\n | undefined;\n\n @method()\n setNotRender(value: boolean) {\n this.notRender = value;\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","import type { State } from \"js-yaml\";\nimport { isEqual } from \"lodash\";\n\nexport interface Token {\n startLineNumber: number;\n endLineNumber: number;\n startColumn: number;\n endColumn: number;\n source: string;\n isString?: boolean;\n}\n\nclass BrickNextYamlSourceMap {\n #recordsToken: Token[];\n #prefixPosition: number;\n #recordLastWord: string;\n\n constructor() {\n this.#recordsToken = [];\n this.#prefixPosition = 0;\n this.#recordLastWord = \"\";\n }\n\n private handleState(event: \"open\" | \"close\", state: State): void {\n if (event === \"close\") {\n const { line, position, lineStart, result } = state;\n const curWord = state.input.substring(lineStart, position);\n if (curWord.trim() === this.#recordLastWord.trim()) return;\n this.#recordLastWord = curWord;\n let startLineNumber = line + 1;\n let endLineNumber = line + 1;\n let startColumn = position - lineStart - result.length;\n let endColumn = position - lineStart - state.lineIndent;\n if (\n typeof result === \"string\" &&\n /^\\s*<%[~=]?\\s/.test(result) &&\n /\\s%>\\s*$/.test(result)\n ) {\n let source = result;\n const wrapLength = result.match(/\\n/g)?.length;\n if (wrapLength) {\n let nearWrapIndex = this.#prefixPosition;\n for (let i = this.#prefixPosition; i < state.input.length; i++) {\n if (state.input[i] === \"\\n\") {\n nearWrapIndex = i + 1;\n break;\n }\n }\n const specilStringPrefix = /(\\|-|>-)/.test(\n state.input.substring(this.#prefixPosition, position - 1)\n );\n source = state.input.substring(nearWrapIndex, position - 1);\n startLineNumber =\n state.line - wrapLength + 1 - Number(specilStringPrefix);\n endLineNumber = line;\n startColumn = 0;\n endColumn = 0;\n }\n const token = {\n source,\n startLineNumber,\n endLineNumber,\n startColumn,\n endColumn,\n isString: ['\"', \"'\"].includes(\n state.input[lineStart + startColumn - 2]\n ),\n };\n !this.#recordsToken.find((item) => isEqual(item, token)) &&\n this.#recordsToken.push(token);\n }\n this.#prefixPosition = position;\n }\n }\n\n public listen() {\n return this.handleState.bind(this);\n }\n\n public getTokens = () => {\n return this.#recordsToken;\n };\n}\n\nexport default BrickNextYamlSourceMap;\n","export const EDITOR_FONT_SIZE = 12;\nexport const EDITOR_LINE_HEIGHT = 18;\nexport const EDITOR_SCROLLBAR_SIZE = 12;\nexport const EDITOR_PADDING_VERTICAL = 12;\n","export const EVALUATE_KEYWORD = [\n \"CTX\",\n \"STATE\",\n \"DATA\",\n \"EVENT\",\n \"FLAGS\",\n \"APP\",\n \"ANCHOR\",\n \"HASH\",\n \"INSTALLED_APPS\",\n \"ITEM\",\n \"LOCAL_STORAGE\",\n \"MEDIA\",\n \"MISC\",\n \"PARAMS\",\n \"PATH\",\n \"PROCESSORS\",\n \"QUERY\",\n \"QUERY_ARRAY\",\n \"SESSION_STORAGE\",\n \"TPL\",\n \"SYS\",\n \"BASE_URL\",\n \"IMG\",\n \"FN\",\n \"I18N\",\n \"I18N_TEXT\",\n \"PERMISSIONS\",\n \"THEME\",\n];\n\nexport const brickNextKeywords = [\n \"target\",\n \"targetRef\",\n \"properties\",\n \"events\",\n \"method\",\n \"callback\",\n \"success\",\n \"error\",\n \"action\",\n \"useProvider\",\n \"useChildren\",\n \"useBrick\",\n \"args\",\n \"if\",\n \"then\",\n];\n\nexport const Level = {\n hit: 1,\n info: 2,\n warn: 4,\n error: 8,\n};\n","import * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport storyboardJsonSchema from \"@next-core/types/storyboard.json\";\nimport { EVALUATE_KEYWORD, brickNextKeywords, Level } from \"./constants.js\";\nimport { get } from \"lodash\";\n\nconst findKeys = (\n model: monaco.editor.ITextModel,\n range: monaco.Range | monaco.editor.IWordAtPosition,\n line: number\n) => {\n const curLevelKeys: string[] = [];\n const keyList: string[] = [];\n let parentKey = \"\";\n let i = line;\n let startColumn = range.startColumn;\n while (i > 0) {\n const prefixLineWord = model.getValueInRange({\n startLineNumber: i,\n endLineNumber: i,\n startColumn: 0,\n endColumn: Infinity,\n });\n const matchWord = prefixLineWord.match(/^([\\s|-]*)(\\w+)(?=:)/);\n if (matchWord) {\n const [_, wordspace, key] = matchWord;\n if (wordspace.length === range.startColumn - 1) {\n curLevelKeys.unshift(key);\n }\n if (wordspace.length < startColumn - 1) {\n !parentKey && (parentKey = key);\n startColumn = wordspace.length;\n keyList.unshift(key);\n }\n }\n i--;\n }\n return {\n curLevelKeys,\n keyList,\n parentKey,\n };\n};\n\nconst getPrefixWord = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): {\n word: string | undefined;\n token: string;\n} => {\n const word = model.getWordUntilPosition(position);\n const prefixToken = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - word.word.length - 1,\n endColumn: position.column - word.word.length,\n });\n const prefixWord = model.getWordAtPosition({\n ...position,\n column: position.column - word?.word?.length - 1,\n });\n return {\n word: prefixWord?.word,\n token: prefixToken,\n };\n};\n\nexport const isInEvaluateBody = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): boolean => {\n const word = model.getWordUntilPosition(position);\n const prefixEvaluateOperator = model.findPreviousMatch(\n \"<%\",\n position,\n false,\n false,\n null,\n false\n );\n const suffixEvaluateOperator = model.findNextMatch(\n \"%>\",\n position,\n false,\n false,\n null,\n false\n );\n const isInEvaluateBody =\n prefixEvaluateOperator?.range.startLineNumber &&\n suffixEvaluateOperator?.range.startLineNumber &&\n prefixEvaluateOperator.range.startLineNumber <= position.lineNumber &&\n suffixEvaluateOperator.range.endLineNumber >= position.lineNumber;\n\n if (isInEvaluateBody) {\n const { parentKey: prefixParentKey } = findKeys(\n model,\n prefixEvaluateOperator.range,\n prefixEvaluateOperator?.range.startLineNumber\n );\n const { parentKey: suffixParentKey } = findKeys(\n model,\n suffixEvaluateOperator.range,\n suffixEvaluateOperator?.range.startLineNumber\n );\n const { keyList } = findKeys(model, word, position.lineNumber);\n if (\n prefixParentKey === suffixParentKey &&\n keyList.includes(prefixParentKey)\n ) {\n return true;\n }\n }\n return false;\n};\n\nexport const brickNextYAMLProvideCompletionItems = (\n completers?: monaco.languages.CompletionItem[],\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >\n) => {\n return (\n model: monaco.editor.ITextModel,\n position: monaco.Position,\n context: monaco.languages.CompletionContext,\n _token: monaco.CancellationToken\n ): monaco.languages.ProviderResult<monaco.languages.CompletionList> => {\n const word = model.getWordUntilPosition(position);\n const { word: prefixWord, token: prefixToken } = getPrefixWord(\n model,\n position\n );\n const curLineWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: 0,\n endColumn: Infinity,\n });\n const range = {\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: word.startColumn,\n endColumn: word.endColumn,\n };\n\n const isFirstLevelProperty = word.startColumn === 1;\n const { curLevelKeys } = findKeys(model, word, model.getLineCount());\n\n if (context.triggerCharacter === \"<\") {\n const fullWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - 2,\n endColumn: position.column + 2,\n });\n if (fullWord.trim() !== \"<\") {\n return {\n suggestions: [],\n };\n }\n return {\n suggestions: [\n {\n label: \"<% %>\",\n detail: \"Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"% ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n {\n label: \"<%= %>\",\n detail: \"Track Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"%= ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n ],\n };\n }\n\n if (isFirstLevelProperty) {\n return {\n suggestions: (completers ?? [])\n .filter((item) => !curLevelKeys.includes(item.label as string))\n .map((item) => ({\n ...item,\n label: item.label,\n insertText: item.insertText || (item.label as string),\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (\n context.triggerCharacter === \":\" ||\n (context.triggerCharacter === \".\" &&\n prefixWord &&\n ![\"CTX\", \"STATE\", \"FN\"].includes(prefixWord))\n ) {\n if (prefixWord === \"action\" && context.triggerCharacter === \":\") {\n const actions = get(\n storyboardJsonSchema,\n \"definitions.BuiltinBrickEventHandler.properties.action.enum\"\n );\n return {\n suggestions: ((actions as unknown as string[]) ?? [])?.map(\n (item) => ({\n label: ` ${item}`,\n detail: \"event action\",\n kind: monaco.languages.CompletionItemKind.Keyword,\n insertText: ` ${item}`,\n range,\n })\n ),\n };\n }\n const matchCompletion = advancedCompleters?.[prefixWord as string];\n let matchTriggerCharacter = \"\";\n let list: monaco.languages.CompletionItem[] | undefined;\n if (matchCompletion && !Array.isArray(matchCompletion)) {\n list = matchCompletion.completers;\n matchTriggerCharacter = matchCompletion.triggerCharacter;\n } else {\n list = matchCompletion;\n }\n if (\n matchTriggerCharacter\n ? context.triggerCharacter === matchTriggerCharacter && list\n : list\n ) {\n return {\n suggestions: (list ?? []).map((item) => {\n const label =\n matchTriggerCharacter === \":\"\n ? ` ${item.label}`\n : (item.label as string);\n return {\n ...item,\n label: label,\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: item.insertText || label,\n range,\n };\n }),\n };\n }\n }\n\n if (isInEvaluateBody(model, position)) {\n if (\n prefixWord &&\n [\"CTX\", \"STATE\"].includes(prefixWord) &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[prefixWord]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (\n prefixWord === \"FN\" &&\n context.triggerCharacter === \".\" &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[\"FN\"]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (prefixWord === \"APP\" && context.triggerCharacter === \".\") {\n const appProperties = get(\n storyboardJsonSchema,\n \"definitions.MicroApp.properties\"\n );\n const suggestions = [];\n for (const [k, v] of Object.entries(\n appProperties as unknown as Record<\n string,\n {\n description: string;\n type: string;\n enum: string[];\n }\n >\n )) {\n suggestions.push({\n label: k,\n kind: monaco.languages.CompletionItemKind.Value,\n documentation: v.description,\n detail: v.enum ? v.enum.join(\"|\") : v.type,\n insertText: k,\n range,\n });\n }\n return {\n suggestions,\n };\n }\n\n if ([\".\", \":\"].includes(prefixToken)) {\n return {\n suggestions: [],\n };\n }\n\n return {\n suggestions: EVALUATE_KEYWORD.map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (/^[\\s|-]*\\w$/.test(curLineWord)) {\n return {\n suggestions: brickNextKeywords\n .map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n }))\n .filter((item) => !curLevelKeys.includes(item.label as string)),\n };\n }\n\n return {\n suggestions: [],\n };\n };\n};\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, {\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { useCurrentTheme } from \"@next-core/react-runtime\";\nimport { FormItemElementBase } from \"@next-shared/form\";\nimport type { FormItem, FormItemProps } from \"@next-bricks/form/form-item\";\nimport * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport { register as registerJavaScript } from \"@next-core/monaco-contributions/javascript\";\nimport { register as registerTypeScript } from \"@next-core/monaco-contributions/typescript\";\nimport { register as registerYaml } from \"@next-core/monaco-contributions/yaml\";\nimport { register as registerHtml } from \"@next-core/monaco-contributions/html\";\nimport yaml from \"js-yaml\";\nimport BrickNextYamlSourceMap, { Token } from \"./utils/brickNextSourceMap.js\";\nimport \"@next-core/theme\";\nimport { isEqual } from \"lodash\";\nimport {\n EDITOR_SCROLLBAR_SIZE,\n EDITOR_PADDING_VERTICAL,\n EDITOR_LINE_HEIGHT,\n EDITOR_FONT_SIZE,\n} from \"./constants.js\";\nimport { brickNextYAMLProvideCompletionItems } from \"./utils/brickNextYaml.js\";\nimport \"./index.css\";\nimport { EVALUATE_KEYWORD, Level } from \"./utils/constants.js\";\nimport type { MemberExpression, Identifier } from \"@babel/types\";\nimport { preevaluate } from \"@next-core/cook\";\n\nregisterJavaScript(monaco);\nregisterTypeScript(monaco);\nregisterYaml(monaco, \"brick_next_yaml\");\nregisterHtml(monaco);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedFormItem = wrapBrick<FormItem, FormItemProps>(\"eo-form-item\");\n\nexport interface CodeEditorProps {\n name?: string;\n label?: string;\n value?: string;\n language?: string;\n theme?: string;\n required?: boolean;\n readOnly?: boolean;\n automaticLayout?: \"fit-container\" | \"fit-content\" | \"none\";\n minLines?: number;\n maxLines?: number;\n height?: string | number;\n completers?: monaco.languages.CompletionItem[];\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >;\n markers?: Marker[];\n links?: string[];\n validateState?: string;\n}\n\nexport interface Marker {\n token: string;\n level: keyof typeof Level;\n message: string;\n code?: {\n value: string;\n target: string;\n };\n params?: string[];\n}\n\n/**\n * 构件 code-editor\n */\nexport\n@defineElement(\"vs.code-editor\", {\n // There are a few issues for monaco-editor with shadow DOM.\n // So we use light DOM for now.\n // See https://github.com/microsoft/monaco-editor/issues?q=is%3Aissue+is%3Aopen+shadow+dom\n shadowOptions: false,\n})\nclass CodeEditor extends FormItemElementBase implements CodeEditorProps {\n @property()\n accessor name: string | undefined;\n\n @property()\n accessor label: string | undefined;\n\n @property({ attribute: false })\n accessor value: string | undefined;\n\n /**\n * @default \"plaintext\"\n */\n @property()\n accessor language: string | undefined;\n\n /**\n * 主题,支持 `\"auto\" | \"vs\" | \"vs-dark\"`\n *\n * @default \"auto\"\n * @group ui\n */\n @property() accessor theme: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor required: boolean | undefined;\n\n @property({\n type: Boolean,\n })\n accessor readOnly: boolean | undefined;\n\n @property()\n accessor automaticLayout:\n | \"fit-container\"\n | \"fit-content\"\n | \"none\"\n | undefined;\n\n /**\n * @default 3\n */\n @property({ type: Number })\n accessor minLines: number | undefined;\n\n @property({\n attribute: false,\n })\n accessor completers: monaco.languages.CompletionItem[] | undefined;\n\n @property({\n attribute: false,\n })\n accessor advancedCompleters:\n | Record<\n string,\n {\n triggerCharacter: string;\n completers: monaco.languages.CompletionItem[];\n }\n >\n | undefined;\n\n @property({ attribute: false })\n accessor markers: Marker[] | undefined;\n\n @property({ attribute: false })\n accessor links: string[] | undefined;\n\n /**\n * @default Infinity\n */\n @property({ type: Number })\n accessor maxLines: number | undefined;\n\n @property({ attribute: false })\n accessor height: string | number | undefined;\n\n @property()\n accessor message: string | undefined;\n\n @event({ type: \"code.change\" })\n accessor #codeChange!: EventEmitter<string>;\n\n @event({ type: \"user.input\" })\n accessor #userInput!: EventEmitter<string>;\n\n #handleChange = (value: string, parseValue: any, isFlush: boolean) => {\n this.getFormElement()?.formStore.onChange(this.name!, value);\n this.#codeChange.emit(parseValue);\n if (!isFlush) {\n this.#userInput.emit(parseValue);\n }\n };\n\n @event({ type: \"token.click\" })\n accessor #highlighClickEvent!: EventEmitter<string>;\n\n #handleHighlightClick = (word: string) => {\n this.#highlighClickEvent.emit(word);\n };\n\n #handleValidtor = (value: string) => {\n try {\n yaml.load(value);\n } catch {\n return \"请填写正确的格式\";\n }\n return \"\";\n };\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n super.connectedCallback();\n }\n\n render() {\n return (\n <WrappedFormItem\n curElement={this}\n formElement={this.getFormElement()}\n name={this.name}\n label={this.label}\n required={this.required}\n validator={this.#handleValidtor}\n >\n <CodeEditorComponent\n value={this.value}\n language={this.language}\n readOnly={this.readOnly}\n theme={this.theme}\n automaticLayout={this.automaticLayout}\n minLines={this.minLines}\n maxLines={this.maxLines}\n height={this.height}\n completers={this.completers}\n advancedCompleters={this.advancedCompleters}\n markers={this.markers}\n links={this.links}\n validateState={this.validateState}\n onChange={this.#handleChange}\n onHighlightClick={this.#handleHighlightClick}\n />\n </WrappedFormItem>\n );\n }\n}\n\nexport function CodeEditorComponent({\n value: _value,\n language: _language,\n theme: _theme,\n minLines: _minLines,\n maxLines: _maxLines,\n height: _height,\n automaticLayout,\n completers,\n advancedCompleters,\n markers,\n readOnly,\n links,\n validateState,\n onChange,\n onHighlightClick,\n}: CodeEditorProps & {\n onChange(value: string, parseValue: any, isFlush: boolean): void;\n onHighlightClick(word: string): void;\n}) {\n const value = _value ?? \"\";\n const language = _language ?? \"plaintext\";\n const theme = _theme ?? \"auto\";\n const minLines = _minLines ?? 3;\n const maxLines = _maxLines ?? Infinity;\n const height = _height ?? 500;\n\n const containerRef = useRef<HTMLDivElement>(null);\n const decorationsCollection =\n useRef<monaco.editor.IEditorDecorationsCollection>();\n const editorRef = useRef<monaco.editor.IStandaloneCodeEditor>();\n const size = useRef<monaco.editor.IDimension>({\n width: 300,\n height: getContentHeightByCode(value, minLines, maxLines),\n });\n const [actualHeight, setActualHeight] = useState<string | number>();\n // `automaticLayout` should never change\n const automaticLayoutRef = useRef(automaticLayout);\n const systemTheme = useCurrentTheme();\n\n useEffect(() => {\n // Currently theme is configured globally.\n // See https://github.com/microsoft/monaco-editor/issues/338\n monaco.editor.setTheme(\n theme === \"auto\"\n ? systemTheme === \"dark\" || systemTheme === \"dark-v2\"\n ? \"vs-dark\"\n : \"vs\"\n : theme\n );\n }, [systemTheme, theme]);\n\n useEffect(() => {\n if (editorRef.current) {\n const currentModel = editorRef.current.getModel()!;\n monaco.editor.setModelLanguage(currentModel, language);\n if (!isEqual(currentModel.getValue(), value)) {\n currentModel.setValue(value);\n }\n }\n }, [value, language]);\n\n useEffect(() => {\n if (language === \"brick_next_yaml\") {\n const provideCompletionItems = brickNextYAMLProvideCompletionItems(\n completers,\n advancedCompleters\n );\n const monacoProviderRef = monaco.languages.registerCompletionItemProvider(\n \"brick_next_yaml\",\n {\n provideCompletionItems,\n triggerCharacters: [\".\", \":\", \"<\"],\n }\n );\n return () => {\n monacoProviderRef.dispose();\n };\n }\n }, [completers, advancedCompleters, language]);\n\n const parseYaml = useCallback(() => {\n const map = new BrickNextYamlSourceMap();\n let parseValue = undefined;\n if (editorRef.current) {\n const model = editorRef.current.getModel()!;\n\n try {\n parseValue = yaml.load(value, {\n listener: map.listen(),\n });\n\n if ((links || markers) && editorRef.current) {\n const tokens: Omit<\n Token & { token: string; property: string },\n \"source\"\n >[] = [];\n map.getTokens().forEach((item) => {\n const { startLineNumber, endLineNumber, startColumn } = item;\n const globalNodes: MemberExpression[] = [];\n const result = preevaluate(item.source, {\n hooks: {\n beforeVisit(node) {\n if (\n node.type === \"MemberExpression\" &&\n node.object.type === \"Identifier\" &&\n EVALUATE_KEYWORD.includes(node.object.name) &&\n node.property.type === \"Identifier\"\n ) {\n globalNodes.push(node);\n }\n },\n },\n });\n\n globalNodes.forEach((node) => {\n const { start, end, loc } = node;\n if (item.startLineNumber !== item.endLineNumber) {\n const hadWrap = /<%[ ]+/.test(result.prefix);\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber:\n item.startLineNumber +\n (loc?.start?.line as number) -\n Number(hadWrap),\n endLineNumber:\n item.startLineNumber +\n (loc?.end?.line as number) -\n Number(hadWrap),\n startColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.start?.column as number) +\n 1,\n endColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.end?.column as number) +\n 1,\n });\n } else {\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber,\n endLineNumber,\n startColumn:\n startColumn +\n (start as number) +\n result.prefix?.length +\n Number(!item.isString),\n endColumn:\n startColumn +\n (end as number) +\n result.prefix?.length +\n Number(!item.isString),\n });\n }\n });\n });\n\n decorationsCollection.current?.set(\n tokens\n .filter((token) => links?.includes(token.token))\n .map((token) => ({\n range: new monaco.Range(\n token.startLineNumber,\n token.startColumn,\n token.endLineNumber,\n token.endColumn\n ),\n options: {\n inlineClassName: \"highlight\",\n },\n }))\n );\n\n if (markers) {\n const modelMarkers = tokens\n .map((token) => {\n const matchTokenConf = markers.find(\n (item) => item.token === token.token\n );\n const hadProperty = matchTokenConf?.params\n ? matchTokenConf.params?.includes(token.property)\n : true;\n if (!hadProperty) {\n return {\n severity: Level.warn,\n message: \"Miss Property\",\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n if (matchTokenConf && matchTokenConf.message) {\n return {\n severity: Level[matchTokenConf?.level ?? \"warn\"],\n message: matchTokenConf.message,\n ...(matchTokenConf.code\n ? {\n code: {\n value: matchTokenConf.code.value,\n target: monaco.Uri.parse(\n matchTokenConf.code.target\n ),\n },\n }\n : {}),\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n })\n .filter(Boolean) as monaco.editor.IMarkerData[];\n\n monaco.editor.setModelMarkers(\n model,\n \"brick_next_yaml\",\n modelMarkers\n );\n }\n }\n } catch (e) {\n monaco.editor.setModelMarkers(model, \"brick_next_yaml\", []);\n decorationsCollection?.current?.set([]);\n }\n }\n return parseValue;\n }, [value, links, markers]);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-content\" || !containerRef.current) {\n return;\n }\n\n size.current.width = containerRef.current.getBoundingClientRect().width;\n editorRef.current?.layout(size.current);\n\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === containerRef.current) {\n const newWidth = entry.contentBoxSize\n ? entry.contentBoxSize[0].inlineSize\n : entry.contentRect.width;\n if (newWidth !== size.current.width) {\n size.current.width = newWidth;\n editorRef.current?.layout(size.current);\n }\n break;\n }\n }\n });\n observer.observe(containerRef.current);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-container\") {\n return;\n }\n\n const container = getDOMContainer(containerRef.current);\n if (!container) {\n return;\n }\n // Manually layout the editor once the container resized.\n const observer = new ResizeObserver((): void => {\n setActualHeight(container.offsetHeight);\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useEffect(() => {\n if (\n automaticLayoutRef.current !== \"fit-container\" &&\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n setActualHeight(height);\n }\n }, [height]);\n\n useEffect(() => {\n if (!editorRef.current) return;\n editorRef.current.updateOptions({\n readOnly,\n });\n }, [readOnly]);\n\n useEffect(() => {\n if (editorRef.current || !containerRef.current) {\n return;\n }\n const model = monaco.editor.createModel(value, language);\n editorRef.current = monaco.editor.create(containerRef.current, {\n model,\n minimap: {\n enabled: false,\n },\n scrollBeyondLastLine: false,\n tabSize: 2,\n insertSpaces: true,\n automaticLayout: automaticLayoutRef.current !== \"fit-content\",\n fontSize: EDITOR_FONT_SIZE,\n lineHeight: EDITOR_LINE_HEIGHT,\n scrollbar: {\n horizontalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n verticalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n horizontalSliderSize: 8,\n verticalSliderSize: 8,\n alwaysConsumeMouseWheel: false,\n },\n padding: {\n top: EDITOR_PADDING_VERTICAL,\n // When use `fit-content`, we always plus the height with the vertical padding.\n // Thus the possible x-scrollbar will not take extra space at the bottom.\n bottom:\n automaticLayoutRef.current == \"fit-content\"\n ? undefined\n : EDITOR_PADDING_VERTICAL,\n },\n overviewRulerBorder: false,\n mouseWheelScrollSensitivity: 0.5,\n suggest: {\n insertMode: \"insert\",\n preview: true,\n },\n readOnly: readOnly,\n quickSuggestions: { strings: true, other: true, comments: true },\n });\n\n decorationsCollection.current =\n editorRef.current.createDecorationsCollection();\n }, [value, language, readOnly]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (language === \"brick_next_yaml\" && editor) {\n const model = editor.getModel()!;\n const editorMouseDownEvent = editor.onMouseDown(function (e) {\n const decorations = decorationsCollection.current;\n (decorations?.getRanges?.() ?? []).forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n onHighlightClick(model.getValueInRange(range));\n }\n });\n });\n\n const mouseOverEvent = editor.onMouseMove(function (e) {\n const decorations = decorationsCollection.current;\n if (!decorations) return;\n decorations.getRanges().forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: range.equalsRange(item)\n ? \"highlight pointer\"\n : \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n } else if (!e.event[modKey]) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n }\n });\n });\n\n parseYaml();\n\n return () => {\n mouseOverEvent?.dispose();\n editorMouseDownEvent?.dispose();\n };\n }\n }, [language, onHighlightClick, systemTheme, theme, parseYaml]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (\n !editor ||\n !containerRef.current ||\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n return;\n }\n\n const listener = editor.onDidContentSizeChange((e) => {\n if (e.contentHeightChanged) {\n const newHeight = fixEditorHeightWithScrollBar(\n e.contentHeight,\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n }\n });\n\n const newHeight = fixEditorHeightWithScrollBar(\n editor.getContentHeight(),\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n\n return () => {\n listener.dispose();\n };\n }, [maxLines, minLines]);\n\n useEffect(() => {\n if (!editorRef.current) {\n return;\n }\n const currentModel = editorRef.current.getModel()!;\n const listener = currentModel.onDidChangeContent((e) => {\n const parseValue = parseYaml();\n onChange(currentModel.getValue(), parseValue, e.isFlush);\n });\n return () => {\n listener.dispose();\n };\n }, [onChange, parseYaml]);\n\n useEffect(() => {\n return () => {\n editorRef.current?.getModel()?.dispose();\n editorRef.current?.dispose();\n };\n }, []);\n\n return (\n <div\n ref={containerRef}\n style={{\n height: actualHeight,\n ...(validateState === \"error\"\n ? {\n outline: \"1px solid var(--antd-error-color)\",\n }\n : {}),\n }}\n />\n );\n}\n\nfunction getContentHeightByCode(\n code: string,\n minLines: number,\n maxLines: number\n): number {\n return getContentHeightByLines(\n Math.min(maxLines, Math.max(minLines, code.split(\"\\n\").length))\n );\n}\n\nfunction fixEditorHeightWithScrollBar(\n contentHeight: number,\n minLines: number,\n maxLines: number\n): number {\n let fixedHeight = contentHeight;\n if ((contentHeight - EDITOR_PADDING_VERTICAL) % EDITOR_LINE_HEIGHT === 0) {\n fixedHeight = contentHeight + EDITOR_SCROLLBAR_SIZE;\n }\n return Math.min(\n getContentHeightByLines(maxLines),\n Math.max(fixedHeight, getContentHeightByLines(minLines))\n );\n}\n\nfunction getContentHeightByLines(lines: number): number {\n return (\n lines * EDITOR_LINE_HEIGHT + EDITOR_SCROLLBAR_SIZE + EDITOR_PADDING_VERTICAL\n );\n}\n\n/** Get the direct DOM container of `vs.code-editor` */\nfunction getDOMContainer(element: HTMLElement | null) {\n let brick = element;\n while (brick) {\n const found = brick.tagName.toLowerCase() === \"vs.code-editor\";\n brick = brick.parentElement;\n if (found) {\n return brick;\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\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["method","property","createDecorators","_dec","attribute","_dec2","_dec3","_dec4","_A","WeakMap","_notRender","_B","_validate","_C","_bindFormItem","_D","_E","FormItemElementBase","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_bindFormItem","set","_set_bindFormItem","_get_validate","_set_validate","_get__notRender","_set__notRender","writable","value","_initProto","_init_helpBrick","_init_labelBrick","isFormItemElement","validateState","_classPrivateFieldSet","this","_render","_classPrivateFieldGet","notRender","hidden","$bindFormItem","helpBrick","v","labelBrick","setNotRender","getFormElement","element","parentNode","isFormElement","_class","_applyDecs","e","_recordsToken","_prefixPosition","_recordLastWord","EDITOR_LINE_HEIGHT","EDITOR_SCROLLBAR_SIZE","EDITOR_PADDING_VERTICAL","EVALUATE_KEYWORD","brickNextKeywords","Level","hit","info","warn","error","findKeys","model","range","line","curLevelKeys","keyList","parentKey","i","startColumn","matchWord","getValueInRange","startLineNumber","endLineNumber","endColumn","Infinity","match","_","wordspace","key","length","unshift","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","registerJavaScript","monaco","registerTypeScript","registerYaml","registerHtml","_CodeEditor","defineElement","event","WrappedFormItem","wrapBrick","shadowOptions","_dec5","_dec6","_dec7","type","Boolean","_dec8","_dec9","_dec10","Number","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_codeChange","_R","_userInput","_handleChange","_S","_highlighClickEvent","_handleHighlightClick","_handleValidtor","_set_codeChange2","_set_codeChange","_get_codeChange2","_get_codeChange","_set_userInput2","_set_userInput","_get_userInput2","_get_userInput","_set_highlighClickEvent2","_set_highlighClickEvent","_get_highlighClickEvent2","_get_highlighClickEvent","CodeEditorComponent","_ref","_value","language","_language","theme","_theme","minLines","_minLines","maxLines","_maxLines","height","_height","automaticLayout","completers","advancedCompleters","markers","readOnly","links","onChange","onHighlightClick","containerRef","useRef","decorationsCollection","editorRef","size","width","getContentHeightByCode","actualHeight","setActualHeight","useState","automaticLayoutRef","systemTheme","useCurrentTheme","useEffect","setTheme","current","currentModel","getModel","setModelLanguage","isEqual","getValue","setValue","provideCompletionItems","brickNextYAMLProvideCompletionItems","position","context","_token","word","getWordUntilPosition","prefixWord","token","prefixToken","getPrefixWord","_word$word","lineNumber","column","getWordAtPosition","_objectSpread","curLineWord","isFirstLevelProperty","getLineCount","triggerCharacter","trim","suggestions","label","detail","kind","CompletionItemKind","Value","insertText","insertTextRules","CompletionItemInsertTextRule","InsertAsSnippet","filter","item","includes","map","Keyword","_ref2","storyboardJsonSchema","concat","list","_list","matchCompletion","matchTriggerCharacter","Array","isArray","isInEvaluateBody","prefixEvaluateOperator","findPreviousMatch","suffixEvaluateOperator","findNextMatch","prefixParentKey","suffixParentKey","_advancedCompleters$p","_advancedCompleters$p2","_advancedCompleters$F","_advancedCompleters$F2","appProperties","k","Object","entries","push","documentation","description","enum","join","test","monacoProviderRef","registerCompletionItemProvider","triggerCharacters","dispose","parseYaml","useCallback","_defineProperty","handleState","state","lineStart","result","curWord","input","substring","lineIndent","_result$match","source","wrapLength","nearWrapIndex","specilStringPrefix","isString","find","listen","bind","parseValue","undefined","yaml","listener","_decorationsCollectio","tokens","getTokens","forEach","globalNodes","preevaluate","hooks","beforeVisit","node","object","name","start","end","loc","_node$object","_loc$start","_loc$end","_loc$start2","_loc$end2","hadWrap","prefix","_node$object2","_result$prefix","_result$prefix2","inlineClassName","modelMarkers","_matchTokenConf$param","_matchTokenConf$level","matchTokenConf","params","message","severity","level","code","target","parse","setModelMarkers","_decorationsCollectio2","useLayoutEffect","_editorRef$current","getBoundingClientRect","layout","observer","ResizeObserver","entry","_editorRef$current2","newWidth","contentBoxSize","inlineSize","contentRect","observe","disconnect","container","brick","found","tagName","toLowerCase","parentElement","getDOMContainer","offsetHeight","updateOptions","createModel","create","minimap","enabled","scrollBeyondLastLine","tabSize","insertSpaces","fontSize","lineHeight","scrollbar","horizontalScrollbarSize","verticalScrollbarSize","horizontalSliderSize","verticalSliderSize","alwaysConsumeMouseWheel","padding","top","bottom","overviewRulerBorder","mouseWheelScrollSensitivity","suggest","insertMode","preview","quickSuggestions","strings","other","comments","createDecorationsCollection","editor","editorMouseDownEvent","onMouseDown","_decorations$getRange","_decorations$getRange2","decorations","getRanges","call","modKey","navigator","platform","containsPosition","mouseOverEvent","onMouseMove","newDecorations","equalsRange","onDidContentSizeChange","contentHeightChanged","newHeight","fixEditorHeightWithScrollBar","contentHeight","getContentHeight","onDidChangeContent","isFlush","_editorRef$current3","_editorRef$current4","React","ref","style","outline","getContentHeightByLines","Math","min","max","split","fixedHeight","lines","_init_name","_init_label","_init_value","_init_language","_init_theme","_init_required","_init_readOnly","_init_automaticLayout","_init_minLines","_init_completers","_init_advancedCompleters","_init_markers","_init_links","_init_maxLines","_init_height","_init_message","_init_codeChange","_init_userInput","_this$getFormElement","formStore","emit","_init_highlighClickEvent","_unused","required","connectedCallback","display","super","render","curElement","formElement","validator","c","_initClass","o","has","_checkInRHS","___CSS_LOADER_EXPORT___","module","id"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_vs=self.webpackChunk_next_bricks_vs||[]).push([[1085],{34622:(e,t,n)=>{n.d(t,{LS:()=>s,Mv:()=>i,P0:()=>r,sE:()=>a});var r=12,i=18,a=12,s=12},31074:(e,t,n)=>{n.r(t),n.d(t,{CodeEditor:()=>we,CodeEditorComponent:()=>at});var r,i,a,s,l,u,o,h,d,c,m,g,v,p,b,f,Z,k,C,w,y,L,N,M,E,S,x,T,R,W,I,A,P,_,K,B,O,z,V,F,H,q,D,G,U,j,$,X,Y=n(33028),Q=n(53395),J=n(31815),ee=n(40381),te=n(70687),ne=n(72604),re=n(48657),ie=n.n(re),ae=n(55366),se=n(44511),le=n(31710),ue=n(81391),oe=n(46475),he=n(73701),de=n(47637),ce=n(64167),me=n(27680),ge=n(42308),ve=n.n(ge),pe=n(69435),be=(n(27438),n(78035)),fe=n(34622),Ze=n(9486),ke=(n(53154),n(65107)),Ce=n(5777);(0,he.z2)(oe),(0,de.z2)(oe),(0,ce.z2)(oe,"brick_next_yaml"),(0,me.z2)(oe);var we,{defineElement:ye,property:Le,event:Ne}=(0,ae.createDecorators)(),Me=(0,se.wrapBrick)("eo-form-item");i=ye("vs.code-editor",{shadowOptions:!1}),a=Le(),l=Le(),o=Le({attribute:!1}),d=Le(),m=Le(),v=Le({type:Boolean}),b=Le({type:Boolean}),Z=Le(),C=Le({type:Number}),y=Le({attribute:!1}),N=Le({attribute:!1}),E=Le({attribute:!1}),x=Le({attribute:!1}),R=Le({type:Number}),I=Le({attribute:!1}),P=Le(),K=Ne({type:"code.change"}),V=Ne({type:"user.input"}),D=Ne({type:"token.click"});var Ee=new WeakMap,Se=new WeakMap,xe=new WeakMap,Te=new WeakMap,Re=new WeakMap,We=new WeakMap,Ie=new WeakMap,Ae=new WeakMap,Pe=new WeakMap,_e=new WeakMap,Ke=new WeakMap,Be=new WeakMap,Oe=new WeakMap,ze=new WeakMap,Ve=new WeakMap,Fe=new WeakMap,He=new WeakMap,qe=new WeakMap,De=new WeakMap,Ge=new WeakMap,Ue=new WeakMap,je=new WeakMap,$e=new WeakMap,Xe=new WeakMap,Ye=new WeakMap;class Qe extends ue.G{constructor(){super(...arguments),(0,Q.Z)(this,$e,{get:it,set:rt}),(0,Q.Z)(this,Ge,{get:nt,set:tt}),(0,Q.Z)(this,qe,{get:et,set:Je}),(0,Q.Z)(this,Ee,{writable:!0,value:($(this),s(this))}),(0,Q.Z)(this,Se,{writable:!0,value:u(this)}),(0,Q.Z)(this,xe,{writable:!0,value:h(this)}),(0,Q.Z)(this,Te,{writable:!0,value:c(this)}),(0,Q.Z)(this,Re,{writable:!0,value:g(this)}),(0,Q.Z)(this,We,{writable:!0,value:p(this)}),(0,Q.Z)(this,Ie,{writable:!0,value:f(this)}),(0,Q.Z)(this,Ae,{writable:!0,value:k(this)}),(0,Q.Z)(this,Pe,{writable:!0,value:w(this)}),(0,Q.Z)(this,_e,{writable:!0,value:L(this)}),(0,Q.Z)(this,Ke,{writable:!0,value:M(this)}),(0,Q.Z)(this,Be,{writable:!0,value:S(this)}),(0,Q.Z)(this,Oe,{writable:!0,value:T(this)}),(0,Q.Z)(this,ze,{writable:!0,value:W(this)}),(0,Q.Z)(this,Ve,{writable:!0,value:A(this)}),(0,Q.Z)(this,Fe,{writable:!0,value:_(this)}),(0,Q.Z)(this,He,{writable:!0,value:B(this)}),(0,Q.Z)(this,De,{writable:!0,value:F(this)}),(0,Q.Z)(this,Ue,{writable:!0,value:(e,t,n)=>{var r;null===(r=this.getFormElement())||void 0===r||r.formStore.onChange(this.name,e),(0,te.Z)(this,qe).emit(t),n||(0,te.Z)(this,Ge).emit(t)}}),(0,Q.Z)(this,je,{writable:!0,value:G(this)}),(0,Q.Z)(this,Xe,{writable:!0,value:e=>{(0,te.Z)(this,$e).emit(e)}}),(0,Q.Z)(this,Ye,{writable:!0,value:e=>{try{ve().load(e)}catch(e){return"请填写正确的格式"}return""}})}get name(){return(0,te.Z)(this,Ee)}set name(e){(0,ee.Z)(this,Ee,e)}get label(){return(0,te.Z)(this,Se)}set label(e){(0,ee.Z)(this,Se,e)}get value(){return(0,te.Z)(this,xe)}set value(e){(0,ee.Z)(this,xe,e)}get language(){return(0,te.Z)(this,Te)}set language(e){(0,ee.Z)(this,Te,e)}get theme(){return(0,te.Z)(this,Re)}set theme(e){(0,ee.Z)(this,Re,e)}get required(){return(0,te.Z)(this,We)}set required(e){(0,ee.Z)(this,We,e)}get readOnly(){return(0,te.Z)(this,Ie)}set readOnly(e){(0,ee.Z)(this,Ie,e)}get automaticLayout(){return(0,te.Z)(this,Ae)}set automaticLayout(e){(0,ee.Z)(this,Ae,e)}get minLines(){return(0,te.Z)(this,Pe)}set minLines(e){(0,ee.Z)(this,Pe,e)}get completers(){return(0,te.Z)(this,_e)}set completers(e){(0,ee.Z)(this,_e,e)}get advancedCompleters(){return(0,te.Z)(this,Ke)}set advancedCompleters(e){(0,ee.Z)(this,Ke,e)}get markers(){return(0,te.Z)(this,Be)}set markers(e){(0,ee.Z)(this,Be,e)}get links(){return(0,te.Z)(this,Oe)}set links(e){(0,ee.Z)(this,Oe,e)}get maxLines(){return(0,te.Z)(this,ze)}set maxLines(e){(0,ee.Z)(this,ze,e)}get height(){return(0,te.Z)(this,Ve)}set height(e){(0,ee.Z)(this,Ve,e)}get message(){return(0,te.Z)(this,Fe)}set message(e){(0,ee.Z)(this,Fe,e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return ie().createElement(Me,{curElement:this,formElement:this.getFormElement(),name:this.name,label:this.label,required:this.required,validator:(0,te.Z)(this,Ye)},ie().createElement(at,{value:this.value,language:this.language,readOnly:this.readOnly,theme:this.theme,automaticLayout:this.automaticLayout,minLines:this.minLines,maxLines:this.maxLines,height:this.height,completers:this.completers,advancedCompleters:this.advancedCompleters,markers:this.markers,links:this.links,validateState:this.validateState,onChange:(0,te.Z)(this,Ue),onHighlightClick:(0,te.Z)(this,Xe)}))}}function Je(e){z(this,e)}function et(){return O(this)}function tt(e){q(this,e)}function nt(){return H(this)}function rt(e){j(this,e)}function it(){return U(this)}function at(e){var{value:t,language:n,theme:r,minLines:i,maxLines:a,height:s,automaticLayout:l,completers:u,advancedCompleters:o,markers:h,readOnly:d,links:c,validateState:m,onChange:g,onHighlightClick:v}=e,p=null!=t?t:"",b=null!=n?n:"plaintext",f=null!=r?r:"auto",Z=null!=i?i:3,k=null!=a?a:1/0,C=null!=s?s:500,w=(0,re.useRef)(null),y=(0,re.useRef)(),L=(0,re.useRef)(),N=(0,re.useRef)({width:300,height:st(p,Z,k)}),[M,E]=(0,re.useState)(),S=(0,re.useRef)(l),x=(0,le.useCurrentTheme)();(0,re.useEffect)((()=>{oe.editor.setTheme("auto"===f?"dark"===x||"dark-v2"===x?"vs-dark":"vs":f)}),[x,f]),(0,re.useEffect)((()=>{if(L.current){var e=L.current.getModel();oe.editor.setModelLanguage(e,b),(0,be.isEqual)(e.getValue(),p)||e.setValue(p)}}),[p,b]),(0,re.useEffect)((()=>{if("brick_next_yaml"===b){var e=(0,Ze.Z)(u,o),t=oe.languages.registerCompletionItemProvider("brick_next_yaml",{provideCompletionItems:e,triggerCharacters:[".",":","<"]});return()=>{t.dispose()}}}),[u,o,b]);var T=(0,re.useCallback)((()=>{var e=new pe.Z,t=void 0;if(L.current){var n=L.current.getModel();try{if(t=ve().load(p,{listener:e.listen()}),(c||h)&&L.current){var r,i=[];if(e.getTokens().forEach((e=>{var{startLineNumber:t,endLineNumber:n,startColumn:r}=e,a=[],s=(0,Ce.preevaluate)(e.source,{hooks:{beforeVisit(e){"MemberExpression"===e.type&&"Identifier"===e.object.type&&ke.fT.includes(e.object.name)&&"Identifier"===e.property.type&&a.push(e)}}});a.forEach((a=>{var{start:l,end:u,loc:o}=a;if(e.startLineNumber!==e.endLineNumber){var h,d,c,m,g,v=/<%[ ]+/.test(s.prefix);i.push({token:null===(h=a.object)||void 0===h?void 0:h.name,property:a.property.name,startLineNumber:e.startLineNumber+(null==o||null===(d=o.start)||void 0===d?void 0:d.line)-Number(v),endLineNumber:e.startLineNumber+(null==o||null===(c=o.end)||void 0===c?void 0:c.line)-Number(v),startColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(m=o.start)||void 0===m?void 0:m.column)+1,endColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(g=o.end)||void 0===g?void 0:g.column)+1})}else{var p,b,f;i.push({token:null===(p=a.object)||void 0===p?void 0:p.name,property:a.property.name,startLineNumber:t,endLineNumber:n,startColumn:r+l+(null===(b=s.prefix)||void 0===b?void 0:b.length)+Number(!e.isString),endColumn:r+u+(null===(f=s.prefix)||void 0===f?void 0:f.length)+Number(!e.isString)})}}))})),null===(r=y.current)||void 0===r||r.set(i.filter((e=>null==c?void 0:c.includes(e.token))).map((e=>({range:new oe.Range(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),options:{inlineClassName:"highlight"}})))),h){var a=i.map((e=>{var t,n,r=h.find((t=>t.token===e.token));return null==r||!r.params||(null===(t=r.params)||void 0===t?void 0:t.includes(e.property))?r&&r.message?(0,Y.Z)((0,Y.Z)({severity:ke.aC[null!==(n=null==r?void 0:r.level)&&void 0!==n?n:"warn"],message:r.message},r.code?{code:{value:r.code.value,target:oe.Uri.parse(r.code.target)}}:{}),{},{startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}):void 0:{severity:ke.aC.warn,message:"Miss Property",startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}})).filter(Boolean);oe.editor.setModelMarkers(n,"brick_next_yaml",a)}}}catch(e){var s;oe.editor.setModelMarkers(n,"brick_next_yaml",[]),null==y||null===(s=y.current)||void 0===s||s.set([])}}return t}),[p,c,h]);return(0,re.useLayoutEffect)((()=>{var e;if("fit-content"===S.current&&w.current){N.current.width=w.current.getBoundingClientRect().width,null===(e=L.current)||void 0===e||e.layout(N.current);var t=new ResizeObserver((e=>{for(var t of e)if(t.target===w.current){var n,r=t.contentBoxSize?t.contentBoxSize[0].inlineSize:t.contentRect.width;r!==N.current.width&&(N.current.width=r,null===(n=L.current)||void 0===n||n.layout(N.current));break}}));return t.observe(w.current),()=>{t.disconnect()}}}),[]),(0,re.useLayoutEffect)((()=>{if("fit-container"===S.current){var e=function(e){for(var t=e;t;){var n="vs.code-editor"===t.tagName.toLowerCase();if(t=t.parentElement,n)return t}}(w.current);if(e){var t=new ResizeObserver((()=>{E(e.offsetHeight)}));return t.observe(e),()=>{t.disconnect()}}}}),[]),(0,re.useEffect)((()=>{"fit-container"!==S.current&&"fit-content"!==S.current&&E(C)}),[C]),(0,re.useEffect)((()=>{L.current&&L.current.updateOptions({readOnly:d})}),[d]),(0,re.useEffect)((()=>{if(!L.current&&w.current){var e=oe.editor.createModel(p,b);L.current=oe.editor.create(w.current,{model:e,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,insertSpaces:!0,automaticLayout:"fit-content"!==S.current,fontSize:fe.P0,lineHeight:fe.Mv,scrollbar:{horizontalScrollbarSize:fe.sE,verticalScrollbarSize:fe.sE,horizontalSliderSize:8,verticalSliderSize:8,alwaysConsumeMouseWheel:!1},padding:{top:fe.LS,bottom:"fit-content"==S.current?void 0:fe.LS},overviewRulerBorder:!1,mouseWheelScrollSensitivity:.5,suggest:{insertMode:"insert",preview:!0},readOnly:d,quickSuggestions:{strings:!0,other:!0,comments:!0}}),y.current=L.current.createDecorationsCollection()}}),[p,b,d]),(0,re.useEffect)((()=>{var e=L.current;if("brick_next_yaml"===b&&e){var t=e.getModel(),n=e.onMouseDown((function(e){var n,r,i=y.current;(null!==(n=null==i||null===(r=i.getRanges)||void 0===r?void 0:r.call(i))&&void 0!==n?n:[]).forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)&&v(t.getValueInRange(n))}))})),r=e.onMouseMove((function(e){var t=y.current;t&&t.getRanges().forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";if(n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)){var i=t.getRanges().map((e=>({range:e,options:{inlineClassName:n.equalsRange(e)?"highlight pointer":"highlight"}})));t.set(i)}else if(!e.event[r]){var a=t.getRanges().map((e=>({range:e,options:{inlineClassName:"highlight"}})));t.set(a)}}))}));return T(),()=>{null==r||r.dispose(),null==n||n.dispose()}}}),[b,v,x,f,T]),(0,re.useEffect)((()=>{var e=L.current;if(e&&w.current&&"fit-content"===S.current){var t=e.onDidContentSizeChange((t=>{if(t.contentHeightChanged){var n=lt(t.contentHeight,Z,k);n!==N.current.height&&(N.current.height=n,e.layout(N.current))}})),n=lt(e.getContentHeight(),Z,k);return n!==N.current.height&&(N.current.height=n,e.layout(N.current)),()=>{t.dispose()}}}),[k,Z]),(0,re.useEffect)((()=>{if(L.current){var e=L.current.getModel(),t=e.onDidChangeContent((t=>{var n=T();g(e.getValue(),n,t.isFlush)}));return()=>{t.dispose()}}}),[g,T]),(0,re.useEffect)((()=>()=>{var e,t;null===(e=L.current)||void 0===e||null===(e=e.getModel())||void 0===e||e.dispose(),null===(t=L.current)||void 0===t||t.dispose()}),[]),ie().createElement("div",{ref:w,style:(0,Y.Z)({height:M},"error"===m?{outline:"1px solid var(--antd-error-color)"}:{})})}function st(e,t,n){return ut(Math.min(n,Math.max(t,e.split("\n").length)))}function lt(e,t,n){var r=e;return(e-fe.LS)%fe.Mv==0&&(r=e+fe.sE),Math.min(ut(n),Math.max(r,ut(t)))}function ut(e){return e*fe.Mv+fe.sE+fe.LS}X=Qe,({e:[s,u,h,c,g,p,f,k,w,L,M,S,T,W,A,_,B,O,z,F,H,q,G,U,j,$],c:[we,r]}=(0,ne.Z)(X,[[a,1,"name"],[l,1,"label"],[o,1,"value"],[d,1,"language"],[m,1,"theme"],[v,1,"required"],[b,1,"readOnly"],[Z,1,"automaticLayout"],[C,1,"minLines"],[y,1,"completers"],[N,1,"advancedCompleters"],[E,1,"markers"],[x,1,"links"],[R,1,"maxLines"],[I,1,"height"],[P,1,"message"],[K,1,"codeChange",e=>(0,te.Z)(e,He),(e,t)=>(0,ee.Z)(e,He,t)],[V,1,"userInput",e=>(0,te.Z)(e,De),(e,t)=>(0,ee.Z)(e,De,t)],[D,1,"highlighClickEvent",e=>(0,te.Z)(e,je),(e,t)=>(0,ee.Z)(e,je,t)]],[i],0,(e=>Ye.has((0,J.Z)(e))),ue.G)),r()},69435:(e,t,n)=>{n.d(t,{Z:()=>d});var r=n(56666),i=n(53395),a=n(70687),s=n(40381),l=n(78035),u=new WeakMap,o=new WeakMap,h=new WeakMap;const d=class{constructor(){(0,i.Z)(this,u,{writable:!0,value:void 0}),(0,i.Z)(this,o,{writable:!0,value:void 0}),(0,i.Z)(this,h,{writable:!0,value:void 0}),(0,r.Z)(this,"getTokens",(()=>(0,a.Z)(this,u))),(0,s.Z)(this,u,[]),(0,s.Z)(this,o,0),(0,s.Z)(this,h,"")}handleState(e,t){if("close"===e){var{line:n,position:r,lineStart:i,result:d}=t,c=t.input.substring(i,r);if(c.trim()===(0,a.Z)(this,h).trim())return;(0,s.Z)(this,h,c);var m=n+1,g=n+1,v=r-i-d.length,p=r-i-t.lineIndent;if("string"==typeof d&&/^\s*<%[~=]?\s/.test(d)&&/\s%>\s*$/.test(d)){var b,f=d,Z=null===(b=d.match(/\n/g))||void 0===b?void 0:b.length;if(Z){for(var k=(0,a.Z)(this,o),C=(0,a.Z)(this,o);C<t.input.length;C++)if("\n"===t.input[C]){k=C+1;break}var w=/(\|-|>-)/.test(t.input.substring((0,a.Z)(this,o),r-1));f=t.input.substring(k,r-1),m=t.line-Z+1-Number(w),g=n,v=0,p=0}var y={source:f,startLineNumber:m,endLineNumber:g,startColumn:v,endColumn:p,isString:['"',"'"].includes(t.input[i+v-2])};!(0,a.Z)(this,u).find((e=>(0,l.isEqual)(e,y)))&&(0,a.Z)(this,u).push(y)}(0,s.Z)(this,o,r)}}listen(){return this.handleState.bind(this)}}},9486:(e,t,n)=>{n.d(t,{Z:()=>o});var r=n(33028),i=n(46475),a=n(36023),s=n(65107),l=n(78035),u=(e,t,n)=>{for(var r=[],i=[],a="",s=n,l=t.startColumn;s>0;){var u=e.getValueInRange({startLineNumber:s,endLineNumber:s,startColumn:0,endColumn:1/0}).match(/^([\s|-]*)(\w+)(?=:)/);if(u){var[o,h,d]=u;h.length===t.startColumn-1&&r.unshift(d),h.length<l-1&&(!a&&(a=d),l=h.length,i.unshift(d))}s--}return{curLevelKeys:r,keyList:i,parentKey:a}},o=(e,t)=>(n,o,h,d)=>{var c=n.getWordUntilPosition(o),{word:m,token:g}=((e,t)=>{var n,i=e.getWordUntilPosition(t),a=e.getValueInRange({startLineNumber:t.lineNumber,endLineNumber:t.lineNumber,startColumn:t.column-i.word.length-1,endColumn:t.column-i.word.length}),s=e.getWordAtPosition((0,r.Z)((0,r.Z)({},t),{},{column:t.column-(null==i||null===(n=i.word)||void 0===n?void 0:n.length)-1}));return{word:null==s?void 0:s.word,token:a}})(n,o),v=n.getValueInRange({startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:0,endColumn:1/0}),p={startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:c.startColumn,endColumn:c.endColumn},b=1===c.startColumn,{curLevelKeys:f}=u(n,c,n.getLineCount());if("<"===h.triggerCharacter)return"<"!==n.getValueInRange({startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:o.column-2,endColumn:o.column+2}).trim()?{suggestions:[]}:{suggestions:[{label:"<% %>",detail:"Evalute Body",kind:i.languages.CompletionItemKind.Value,insertText:"% ${0} %>",insertTextRules:i.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:p},{label:"<%= %>",detail:"Track Evalute Body",kind:i.languages.CompletionItemKind.Value,insertText:"%= ${0} %>",insertTextRules:i.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:p}]};if(b)return{suggestions:(null!=e?e:[]).filter((e=>!f.includes(e.label))).map((e=>(0,r.Z)((0,r.Z)({},e),{},{label:e.label,insertText:e.insertText||e.label,kind:i.languages.CompletionItemKind.Keyword,range:p})))};if(":"===h.triggerCharacter||"."===h.triggerCharacter&&m&&!["CTX","STATE","FN"].includes(m)){var Z,k;if("action"===m&&":"===h.triggerCharacter)return{suggestions:null===(Z=null!==(k=(0,l.get)(a,"definitions.BuiltinBrickEventHandler.properties.action.enum"))&&void 0!==k?k:[])||void 0===Z?void 0:Z.map((e=>({label:" ".concat(e),detail:"event action",kind:i.languages.CompletionItemKind.Keyword,insertText:" ".concat(e),range:p})))};var C,w,y=null==t?void 0:t[m],L="";if(y&&!Array.isArray(y)?(C=y.completers,L=y.triggerCharacter):C=y,L?h.triggerCharacter===L&&C:C)return{suggestions:(null!==(w=C)&&void 0!==w?w:[]).map((e=>{var t=":"===L?" ".concat(e.label):e.label;return(0,r.Z)((0,r.Z)({},e),{},{label:t,kind:i.languages.CompletionItemKind.Value,insertText:e.insertText||t,range:p})}))}}if(((e,t)=>{var n=e.getWordUntilPosition(t),r=e.findPreviousMatch("<%",t,!1,!1,null,!1),i=e.findNextMatch("%>",t,!1,!1,null,!1);if((null==r?void 0:r.range.startLineNumber)&&(null==i?void 0:i.range.startLineNumber)&&r.range.startLineNumber<=t.lineNumber&&i.range.endLineNumber>=t.lineNumber){var{parentKey:a}=u(e,r.range,null==r?void 0:r.range.startLineNumber),{parentKey:s}=u(e,i.range,null==i?void 0:i.range.startLineNumber),{keyList:l}=u(e,n,t.lineNumber);if(a===s&&l.includes(a))return!0}return!1})(n,o)){var N,M,E,S;if(m&&["CTX","STATE"].includes(m)&&t)return{suggestions:(null!==(N=null===(M=t[m])||void 0===M?void 0:M.completers)&&void 0!==N?N:[]).map((e=>({label:e.label,insertText:e.label,kind:i.languages.CompletionItemKind.Value,range:p})))};if("FN"===m&&"."===h.triggerCharacter&&t)return{suggestions:(null!==(E=null===(S=t.FN)||void 0===S?void 0:S.completers)&&void 0!==E?E:[]).map((e=>({label:e.label,insertText:e.label,kind:i.languages.CompletionItemKind.Value,range:p})))};if("APP"===m&&"."===h.triggerCharacter){var x=(0,l.get)(a,"definitions.MicroApp.properties"),T=[];for(var[R,W]of Object.entries(x))T.push({label:R,kind:i.languages.CompletionItemKind.Value,documentation:W.description,detail:W.enum?W.enum.join("|"):W.type,insertText:R,range:p});return{suggestions:T}}return[".",":"].includes(g)?{suggestions:[]}:{suggestions:s.fT.map((e=>({label:e,insertText:e,kind:i.languages.CompletionItemKind.Keyword,range:p})))}}return/^[\s|-]*\w$/.test(v)?{suggestions:s.Wu.map((e=>({label:e,insertText:e,kind:i.languages.CompletionItemKind.Keyword,range:p}))).filter((e=>!f.includes(e.label)))}:{suggestions:[]}}},65107:(e,t,n)=>{n.d(t,{Wu:()=>i,aC:()=>a,fT:()=>r});var r=["CTX","STATE","DATA","EVENT","FLAGS","APP","ANCHOR","HASH","INSTALLED_APPS","ITEM","LOCAL_STORAGE","MEDIA","MISC","PARAMS","PATH","PROCESSORS","QUERY","QUERY_ARRAY","SESSION_STORAGE","TPL","SYS","BASE_URL","IMG","FN","I18N","I18N_TEXT","PERMISSIONS","THEME"],i=["target","targetRef","properties","events","method","callback","success","error","action","useProvider","useChildren","useBrick","args","if","then"],a={hit:1,info:2,warn:4,error:8}},76126:(e,t,n)=>{n.d(t,{Z:()=>l});var r=n(39601),i=n.n(r),a=n(82609),s=n.n(a)()(i());s.push([e.id,".highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}",""]);const l=s},53154:(e,t,n)=>{var r=n(46062),i=n.n(r),a=n(44036),s=n.n(a),l=n(96793),u=n.n(l),o=n(17892),h=n.n(o),d=n(11173),c=n.n(d),m=n(42464),g=n.n(m),v=n(76126),p={};p.styleTagTransform=g(),p.setAttributes=h(),p.insert=u().bind(null,"head"),p.domAPI=s(),p.insertStyleElement=c(),i()(v.Z,p),v.Z&&v.Z.locals&&v.Z.locals},81391:(e,t,n)=>{n.d(t,{G:()=>E});var r,i,a,s,l,u,o,h,d=n(53395),c=n(40381),m=n(70687),g=n(72604),v=n(55366),p=n(44511),{method:b,property:f}=(0,v.createDecorators)();r=f({attribute:!1}),a=f({attribute:!1}),l=b(),u=b();var Z=new WeakMap,k=new WeakMap,C=new WeakMap,w=new WeakMap,y=new WeakMap,L=new WeakMap,N=new WeakMap,M=new WeakMap;class E extends p.ReactNextElement{constructor(){super(...arguments),(0,d.Z)(this,L,{get:W,set:I}),(0,d.Z)(this,w,{get:T,set:R}),(0,d.Z)(this,k,{get:S,set:x}),(0,d.Z)(this,Z,{writable:!0,value:!1}),(0,d.Z)(this,C,{writable:!0,value:"normal"}),(0,d.Z)(this,y,{writable:!0,value:!1}),(0,d.Z)(this,N,{writable:!0,value:(o(this),i(this))}),(0,d.Z)(this,M,{writable:!0,value:s(this)})}get isFormItemElement(){return!0}set validateState(e){(0,c.Z)(this,w,e),this._render()}get validateState(){return(0,m.Z)(this,w)}set notRender(e){this.hidden=e,(0,c.Z)(this,k,e),this._render()}get notRender(){return(0,m.Z)(this,k)}get $bindFormItem(){return(0,m.Z)(this,L)}set $bindFormItem(e){(0,c.Z)(this,L,e),this._render()}get helpBrick(){return(0,m.Z)(this,N)}set helpBrick(e){(0,c.Z)(this,N,e)}get labelBrick(){return(0,m.Z)(this,M)}set labelBrick(e){(0,c.Z)(this,M,e)}setNotRender(e){this.notRender=e}getFormElement(){for(var e=this;(e=e.parentNode)&&e&&!e.isFormElement;);return e}}function S(){return(0,m.Z)(this,Z)}function x(e){(0,c.Z)(this,Z,e)}function T(){return(0,m.Z)(this,C)}function R(e){(0,c.Z)(this,C,e)}function W(){return(0,m.Z)(this,y)}function I(e){(0,c.Z)(this,y,e)}h=E,[i,s,o]=(0,g.Z)(h,[[r,1,"helpBrick"],[a,1,"labelBrick"],[l,2,"setNotRender"],[u,2,"getFormElement"]],[],0,void 0,p.ReactNextElement).e}}]);
|
|
2
|
-
//# sourceMappingURL=code-editor.
|
|
1
|
+
"use strict";(self.webpackChunk_next_bricks_vs=self.webpackChunk_next_bricks_vs||[]).push([[1085],{34622:(e,t,n)=>{n.d(t,{LS:()=>s,Mv:()=>i,P0:()=>r,sE:()=>a});var r=12,i=18,a=12,s=12},31074:(e,t,n)=>{n.r(t),n.d(t,{CodeEditor:()=>we,CodeEditorComponent:()=>at});var r,i,a,s,l,u,o,h,d,c,m,g,v,p,b,f,Z,k,C,w,y,L,N,M,E,S,x,T,R,W,I,A,P,_,K,B,O,z,V,F,H,q,D,G,U,j,$,X,Y=n(33028),Q=n(53395),J=n(31815),ee=n(40381),te=n(70687),ne=n(72604),re=n(48657),ie=n.n(re),ae=n(55366),se=n(44511),le=n(31710),ue=n(81391),oe=n(46475),he=n(73701),de=n(47637),ce=n(64167),me=n(27680),ge=n(42308),ve=n.n(ge),pe=n(69435),be=(n(35576),n(78035)),fe=n(34622),Ze=n(9486),ke=(n(53154),n(65107)),Ce=n(5777);(0,he.z2)(oe),(0,de.z2)(oe),(0,ce.z2)(oe,"brick_next_yaml"),(0,me.z2)(oe);var we,{defineElement:ye,property:Le,event:Ne}=(0,ae.createDecorators)(),Me=(0,se.wrapBrick)("eo-form-item");i=ye("vs.code-editor",{shadowOptions:!1}),a=Le(),l=Le(),o=Le({attribute:!1}),d=Le(),m=Le(),v=Le({type:Boolean}),b=Le({type:Boolean}),Z=Le(),C=Le({type:Number}),y=Le({attribute:!1}),N=Le({attribute:!1}),E=Le({attribute:!1}),x=Le({attribute:!1}),R=Le({type:Number}),I=Le({attribute:!1}),P=Le(),K=Ne({type:"code.change"}),V=Ne({type:"user.input"}),D=Ne({type:"token.click"});var Ee=new WeakMap,Se=new WeakMap,xe=new WeakMap,Te=new WeakMap,Re=new WeakMap,We=new WeakMap,Ie=new WeakMap,Ae=new WeakMap,Pe=new WeakMap,_e=new WeakMap,Ke=new WeakMap,Be=new WeakMap,Oe=new WeakMap,ze=new WeakMap,Ve=new WeakMap,Fe=new WeakMap,He=new WeakMap,qe=new WeakMap,De=new WeakMap,Ge=new WeakMap,Ue=new WeakMap,je=new WeakMap,$e=new WeakMap,Xe=new WeakMap,Ye=new WeakMap;class Qe extends ue.G{constructor(){super(...arguments),(0,Q.Z)(this,$e,{get:it,set:rt}),(0,Q.Z)(this,Ge,{get:nt,set:tt}),(0,Q.Z)(this,qe,{get:et,set:Je}),(0,Q.Z)(this,Ee,{writable:!0,value:($(this),s(this))}),(0,Q.Z)(this,Se,{writable:!0,value:u(this)}),(0,Q.Z)(this,xe,{writable:!0,value:h(this)}),(0,Q.Z)(this,Te,{writable:!0,value:c(this)}),(0,Q.Z)(this,Re,{writable:!0,value:g(this)}),(0,Q.Z)(this,We,{writable:!0,value:p(this)}),(0,Q.Z)(this,Ie,{writable:!0,value:f(this)}),(0,Q.Z)(this,Ae,{writable:!0,value:k(this)}),(0,Q.Z)(this,Pe,{writable:!0,value:w(this)}),(0,Q.Z)(this,_e,{writable:!0,value:L(this)}),(0,Q.Z)(this,Ke,{writable:!0,value:M(this)}),(0,Q.Z)(this,Be,{writable:!0,value:S(this)}),(0,Q.Z)(this,Oe,{writable:!0,value:T(this)}),(0,Q.Z)(this,ze,{writable:!0,value:W(this)}),(0,Q.Z)(this,Ve,{writable:!0,value:A(this)}),(0,Q.Z)(this,Fe,{writable:!0,value:_(this)}),(0,Q.Z)(this,He,{writable:!0,value:B(this)}),(0,Q.Z)(this,De,{writable:!0,value:F(this)}),(0,Q.Z)(this,Ue,{writable:!0,value:(e,t,n)=>{var r;null===(r=this.getFormElement())||void 0===r||r.formStore.onChange(this.name,e),(0,te.Z)(this,qe).emit(t),n||(0,te.Z)(this,Ge).emit(t)}}),(0,Q.Z)(this,je,{writable:!0,value:G(this)}),(0,Q.Z)(this,Xe,{writable:!0,value:e=>{(0,te.Z)(this,$e).emit(e)}}),(0,Q.Z)(this,Ye,{writable:!0,value:e=>{try{ve().load(e)}catch(e){return"请填写正确的格式"}return""}})}get name(){return(0,te.Z)(this,Ee)}set name(e){(0,ee.Z)(this,Ee,e)}get label(){return(0,te.Z)(this,Se)}set label(e){(0,ee.Z)(this,Se,e)}get value(){return(0,te.Z)(this,xe)}set value(e){(0,ee.Z)(this,xe,e)}get language(){return(0,te.Z)(this,Te)}set language(e){(0,ee.Z)(this,Te,e)}get theme(){return(0,te.Z)(this,Re)}set theme(e){(0,ee.Z)(this,Re,e)}get required(){return(0,te.Z)(this,We)}set required(e){(0,ee.Z)(this,We,e)}get readOnly(){return(0,te.Z)(this,Ie)}set readOnly(e){(0,ee.Z)(this,Ie,e)}get automaticLayout(){return(0,te.Z)(this,Ae)}set automaticLayout(e){(0,ee.Z)(this,Ae,e)}get minLines(){return(0,te.Z)(this,Pe)}set minLines(e){(0,ee.Z)(this,Pe,e)}get completers(){return(0,te.Z)(this,_e)}set completers(e){(0,ee.Z)(this,_e,e)}get advancedCompleters(){return(0,te.Z)(this,Ke)}set advancedCompleters(e){(0,ee.Z)(this,Ke,e)}get markers(){return(0,te.Z)(this,Be)}set markers(e){(0,ee.Z)(this,Be,e)}get links(){return(0,te.Z)(this,Oe)}set links(e){(0,ee.Z)(this,Oe,e)}get maxLines(){return(0,te.Z)(this,ze)}set maxLines(e){(0,ee.Z)(this,ze,e)}get height(){return(0,te.Z)(this,Ve)}set height(e){(0,ee.Z)(this,Ve,e)}get message(){return(0,te.Z)(this,Fe)}set message(e){(0,ee.Z)(this,Fe,e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return ie().createElement(Me,{curElement:this,formElement:this.getFormElement(),name:this.name,label:this.label,required:this.required,validator:(0,te.Z)(this,Ye)},ie().createElement(at,{value:this.value,language:this.language,readOnly:this.readOnly,theme:this.theme,automaticLayout:this.automaticLayout,minLines:this.minLines,maxLines:this.maxLines,height:this.height,completers:this.completers,advancedCompleters:this.advancedCompleters,markers:this.markers,links:this.links,validateState:this.validateState,onChange:(0,te.Z)(this,Ue),onHighlightClick:(0,te.Z)(this,Xe)}))}}function Je(e){z(this,e)}function et(){return O(this)}function tt(e){q(this,e)}function nt(){return H(this)}function rt(e){j(this,e)}function it(){return U(this)}function at(e){var{value:t,language:n,theme:r,minLines:i,maxLines:a,height:s,automaticLayout:l,completers:u,advancedCompleters:o,markers:h,readOnly:d,links:c,validateState:m,onChange:g,onHighlightClick:v}=e,p=null!=t?t:"",b=null!=n?n:"plaintext",f=null!=r?r:"auto",Z=null!=i?i:3,k=null!=a?a:1/0,C=null!=s?s:500,w=(0,re.useRef)(null),y=(0,re.useRef)(),L=(0,re.useRef)(),N=(0,re.useRef)({width:300,height:st(p,Z,k)}),[M,E]=(0,re.useState)(),S=(0,re.useRef)(l),x=(0,le.useCurrentTheme)();(0,re.useEffect)((()=>{oe.editor.setTheme("auto"===f?"dark"===x||"dark-v2"===x?"vs-dark":"vs":f)}),[x,f]),(0,re.useEffect)((()=>{if(L.current){var e=L.current.getModel();oe.editor.setModelLanguage(e,b),(0,be.isEqual)(e.getValue(),p)||e.setValue(p)}}),[p,b]),(0,re.useEffect)((()=>{if("brick_next_yaml"===b){var e=(0,Ze.Z)(u,o),t=oe.languages.registerCompletionItemProvider("brick_next_yaml",{provideCompletionItems:e,triggerCharacters:[".",":","<"]});return()=>{t.dispose()}}}),[u,o,b]);var T=(0,re.useCallback)((()=>{var e=new pe.Z,t=void 0;if(L.current){var n=L.current.getModel();try{if(t=ve().load(p,{listener:e.listen()}),(c||h)&&L.current){var r,i=[];if(e.getTokens().forEach((e=>{var{startLineNumber:t,endLineNumber:n,startColumn:r}=e,a=[],s=(0,Ce.preevaluate)(e.source,{hooks:{beforeVisit(e){"MemberExpression"===e.type&&"Identifier"===e.object.type&&ke.fT.includes(e.object.name)&&"Identifier"===e.property.type&&a.push(e)}}});a.forEach((a=>{var{start:l,end:u,loc:o}=a;if(e.startLineNumber!==e.endLineNumber){var h,d,c,m,g,v=/<%[ ]+/.test(s.prefix);i.push({token:null===(h=a.object)||void 0===h?void 0:h.name,property:a.property.name,startLineNumber:e.startLineNumber+(null==o||null===(d=o.start)||void 0===d?void 0:d.line)-Number(v),endLineNumber:e.startLineNumber+(null==o||null===(c=o.end)||void 0===c?void 0:c.line)-Number(v),startColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(m=o.start)||void 0===m?void 0:m.column)+1,endColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(g=o.end)||void 0===g?void 0:g.column)+1})}else{var p,b,f;i.push({token:null===(p=a.object)||void 0===p?void 0:p.name,property:a.property.name,startLineNumber:t,endLineNumber:n,startColumn:r+l+(null===(b=s.prefix)||void 0===b?void 0:b.length)+Number(!e.isString),endColumn:r+u+(null===(f=s.prefix)||void 0===f?void 0:f.length)+Number(!e.isString)})}}))})),null===(r=y.current)||void 0===r||r.set(i.filter((e=>null==c?void 0:c.includes(e.token))).map((e=>({range:new oe.Range(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),options:{inlineClassName:"highlight"}})))),h){var a=i.map((e=>{var t,n,r=h.find((t=>t.token===e.token));return null==r||!r.params||(null===(t=r.params)||void 0===t?void 0:t.includes(e.property))?r&&r.message?(0,Y.Z)((0,Y.Z)({severity:ke.aC[null!==(n=null==r?void 0:r.level)&&void 0!==n?n:"warn"],message:r.message},r.code?{code:{value:r.code.value,target:oe.Uri.parse(r.code.target)}}:{}),{},{startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}):void 0:{severity:ke.aC.warn,message:"Miss Property",startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}})).filter(Boolean);oe.editor.setModelMarkers(n,"brick_next_yaml",a)}}}catch(e){var s;oe.editor.setModelMarkers(n,"brick_next_yaml",[]),null==y||null===(s=y.current)||void 0===s||s.set([])}}return t}),[p,c,h]);return(0,re.useLayoutEffect)((()=>{var e;if("fit-content"===S.current&&w.current){N.current.width=w.current.getBoundingClientRect().width,null===(e=L.current)||void 0===e||e.layout(N.current);var t=new ResizeObserver((e=>{for(var t of e)if(t.target===w.current){var n,r=t.contentBoxSize?t.contentBoxSize[0].inlineSize:t.contentRect.width;r!==N.current.width&&(N.current.width=r,null===(n=L.current)||void 0===n||n.layout(N.current));break}}));return t.observe(w.current),()=>{t.disconnect()}}}),[]),(0,re.useLayoutEffect)((()=>{if("fit-container"===S.current){var e=function(e){for(var t=e;t;){var n="vs.code-editor"===t.tagName.toLowerCase();if(t=t.parentElement,n)return t}}(w.current);if(e){var t=new ResizeObserver((()=>{E(e.offsetHeight)}));return t.observe(e),()=>{t.disconnect()}}}}),[]),(0,re.useEffect)((()=>{"fit-container"!==S.current&&"fit-content"!==S.current&&E(C)}),[C]),(0,re.useEffect)((()=>{L.current&&L.current.updateOptions({readOnly:d})}),[d]),(0,re.useEffect)((()=>{if(!L.current&&w.current){var e=oe.editor.createModel(p,b);L.current=oe.editor.create(w.current,{model:e,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,insertSpaces:!0,automaticLayout:"fit-content"!==S.current,fontSize:fe.P0,lineHeight:fe.Mv,scrollbar:{horizontalScrollbarSize:fe.sE,verticalScrollbarSize:fe.sE,horizontalSliderSize:8,verticalSliderSize:8,alwaysConsumeMouseWheel:!1},padding:{top:fe.LS,bottom:"fit-content"==S.current?void 0:fe.LS},overviewRulerBorder:!1,mouseWheelScrollSensitivity:.5,suggest:{insertMode:"insert",preview:!0},readOnly:d,quickSuggestions:{strings:!0,other:!0,comments:!0}}),y.current=L.current.createDecorationsCollection()}}),[p,b,d]),(0,re.useEffect)((()=>{var e=L.current;if("brick_next_yaml"===b&&e){var t=e.getModel(),n=e.onMouseDown((function(e){var n,r,i=y.current;(null!==(n=null==i||null===(r=i.getRanges)||void 0===r?void 0:r.call(i))&&void 0!==n?n:[]).forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)&&v(t.getValueInRange(n))}))})),r=e.onMouseMove((function(e){var t=y.current;t&&t.getRanges().forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";if(n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)){var i=t.getRanges().map((e=>({range:e,options:{inlineClassName:n.equalsRange(e)?"highlight pointer":"highlight"}})));t.set(i)}else if(!e.event[r]){var a=t.getRanges().map((e=>({range:e,options:{inlineClassName:"highlight"}})));t.set(a)}}))}));return T(),()=>{null==r||r.dispose(),null==n||n.dispose()}}}),[b,v,x,f,T]),(0,re.useEffect)((()=>{var e=L.current;if(e&&w.current&&"fit-content"===S.current){var t=e.onDidContentSizeChange((t=>{if(t.contentHeightChanged){var n=lt(t.contentHeight,Z,k);n!==N.current.height&&(N.current.height=n,e.layout(N.current))}})),n=lt(e.getContentHeight(),Z,k);return n!==N.current.height&&(N.current.height=n,e.layout(N.current)),()=>{t.dispose()}}}),[k,Z]),(0,re.useEffect)((()=>{if(L.current){var e=L.current.getModel(),t=e.onDidChangeContent((t=>{var n=T();g(e.getValue(),n,t.isFlush)}));return()=>{t.dispose()}}}),[g,T]),(0,re.useEffect)((()=>()=>{var e,t;null===(e=L.current)||void 0===e||null===(e=e.getModel())||void 0===e||e.dispose(),null===(t=L.current)||void 0===t||t.dispose()}),[]),ie().createElement("div",{ref:w,style:(0,Y.Z)({height:M},"error"===m?{outline:"1px solid var(--antd-error-color)"}:{})})}function st(e,t,n){return ut(Math.min(n,Math.max(t,e.split("\n").length)))}function lt(e,t,n){var r=e;return(e-fe.LS)%fe.Mv==0&&(r=e+fe.sE),Math.min(ut(n),Math.max(r,ut(t)))}function ut(e){return e*fe.Mv+fe.sE+fe.LS}X=Qe,({e:[s,u,h,c,g,p,f,k,w,L,M,S,T,W,A,_,B,O,z,F,H,q,G,U,j,$],c:[we,r]}=(0,ne.Z)(X,[[a,1,"name"],[l,1,"label"],[o,1,"value"],[d,1,"language"],[m,1,"theme"],[v,1,"required"],[b,1,"readOnly"],[Z,1,"automaticLayout"],[C,1,"minLines"],[y,1,"completers"],[N,1,"advancedCompleters"],[E,1,"markers"],[x,1,"links"],[R,1,"maxLines"],[I,1,"height"],[P,1,"message"],[K,1,"codeChange",e=>(0,te.Z)(e,He),(e,t)=>(0,ee.Z)(e,He,t)],[V,1,"userInput",e=>(0,te.Z)(e,De),(e,t)=>(0,ee.Z)(e,De,t)],[D,1,"highlighClickEvent",e=>(0,te.Z)(e,je),(e,t)=>(0,ee.Z)(e,je,t)]],[i],0,(e=>Ye.has((0,J.Z)(e))),ue.G)),r()},69435:(e,t,n)=>{n.d(t,{Z:()=>d});var r=n(56666),i=n(53395),a=n(70687),s=n(40381),l=n(78035),u=new WeakMap,o=new WeakMap,h=new WeakMap;const d=class{constructor(){(0,i.Z)(this,u,{writable:!0,value:void 0}),(0,i.Z)(this,o,{writable:!0,value:void 0}),(0,i.Z)(this,h,{writable:!0,value:void 0}),(0,r.Z)(this,"getTokens",(()=>(0,a.Z)(this,u))),(0,s.Z)(this,u,[]),(0,s.Z)(this,o,0),(0,s.Z)(this,h,"")}handleState(e,t){if("close"===e){var{line:n,position:r,lineStart:i,result:d}=t,c=t.input.substring(i,r);if(c.trim()===(0,a.Z)(this,h).trim())return;(0,s.Z)(this,h,c);var m=n+1,g=n+1,v=r-i-d.length,p=r-i-t.lineIndent;if("string"==typeof d&&/^\s*<%[~=]?\s/.test(d)&&/\s%>\s*$/.test(d)){var b,f=d,Z=null===(b=d.match(/\n/g))||void 0===b?void 0:b.length;if(Z){for(var k=(0,a.Z)(this,o),C=(0,a.Z)(this,o);C<t.input.length;C++)if("\n"===t.input[C]){k=C+1;break}var w=/(\|-|>-)/.test(t.input.substring((0,a.Z)(this,o),r-1));f=t.input.substring(k,r-1),m=t.line-Z+1-Number(w),g=n,v=0,p=0}var y={source:f,startLineNumber:m,endLineNumber:g,startColumn:v,endColumn:p,isString:['"',"'"].includes(t.input[i+v-2])};!(0,a.Z)(this,u).find((e=>(0,l.isEqual)(e,y)))&&(0,a.Z)(this,u).push(y)}(0,s.Z)(this,o,r)}}listen(){return this.handleState.bind(this)}}},9486:(e,t,n)=>{n.d(t,{Z:()=>o});var r=n(33028),i=n(46475),a=n(36023),s=n(65107),l=n(78035),u=(e,t,n)=>{for(var r=[],i=[],a="",s=n,l=t.startColumn;s>0;){var u=e.getValueInRange({startLineNumber:s,endLineNumber:s,startColumn:0,endColumn:1/0}).match(/^([\s|-]*)(\w+)(?=:)/);if(u){var[o,h,d]=u;h.length===t.startColumn-1&&r.unshift(d),h.length<l-1&&(!a&&(a=d),l=h.length,i.unshift(d))}s--}return{curLevelKeys:r,keyList:i,parentKey:a}},o=(e,t)=>(n,o,h,d)=>{var c=n.getWordUntilPosition(o),{word:m,token:g}=((e,t)=>{var n,i=e.getWordUntilPosition(t),a=e.getValueInRange({startLineNumber:t.lineNumber,endLineNumber:t.lineNumber,startColumn:t.column-i.word.length-1,endColumn:t.column-i.word.length}),s=e.getWordAtPosition((0,r.Z)((0,r.Z)({},t),{},{column:t.column-(null==i||null===(n=i.word)||void 0===n?void 0:n.length)-1}));return{word:null==s?void 0:s.word,token:a}})(n,o),v=n.getValueInRange({startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:0,endColumn:1/0}),p={startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:c.startColumn,endColumn:c.endColumn},b=1===c.startColumn,{curLevelKeys:f}=u(n,c,n.getLineCount());if("<"===h.triggerCharacter)return"<"!==n.getValueInRange({startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:o.column-2,endColumn:o.column+2}).trim()?{suggestions:[]}:{suggestions:[{label:"<% %>",detail:"Evalute Body",kind:i.languages.CompletionItemKind.Value,insertText:"% ${0} %>",insertTextRules:i.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:p},{label:"<%= %>",detail:"Track Evalute Body",kind:i.languages.CompletionItemKind.Value,insertText:"%= ${0} %>",insertTextRules:i.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:p}]};if(b)return{suggestions:(null!=e?e:[]).filter((e=>!f.includes(e.label))).map((e=>(0,r.Z)((0,r.Z)({},e),{},{label:e.label,insertText:e.insertText||e.label,kind:i.languages.CompletionItemKind.Keyword,range:p})))};if(":"===h.triggerCharacter||"."===h.triggerCharacter&&m&&!["CTX","STATE","FN"].includes(m)){var Z,k;if("action"===m&&":"===h.triggerCharacter)return{suggestions:null===(Z=null!==(k=(0,l.get)(a,"definitions.BuiltinBrickEventHandler.properties.action.enum"))&&void 0!==k?k:[])||void 0===Z?void 0:Z.map((e=>({label:" ".concat(e),detail:"event action",kind:i.languages.CompletionItemKind.Keyword,insertText:" ".concat(e),range:p})))};var C,w,y=null==t?void 0:t[m],L="";if(y&&!Array.isArray(y)?(C=y.completers,L=y.triggerCharacter):C=y,L?h.triggerCharacter===L&&C:C)return{suggestions:(null!==(w=C)&&void 0!==w?w:[]).map((e=>{var t=":"===L?" ".concat(e.label):e.label;return(0,r.Z)((0,r.Z)({},e),{},{label:t,kind:i.languages.CompletionItemKind.Value,insertText:e.insertText||t,range:p})}))}}if(((e,t)=>{var n=e.getWordUntilPosition(t),r=e.findPreviousMatch("<%",t,!1,!1,null,!1),i=e.findNextMatch("%>",t,!1,!1,null,!1);if((null==r?void 0:r.range.startLineNumber)&&(null==i?void 0:i.range.startLineNumber)&&r.range.startLineNumber<=t.lineNumber&&i.range.endLineNumber>=t.lineNumber){var{parentKey:a}=u(e,r.range,null==r?void 0:r.range.startLineNumber),{parentKey:s}=u(e,i.range,null==i?void 0:i.range.startLineNumber),{keyList:l}=u(e,n,t.lineNumber);if(a===s&&l.includes(a))return!0}return!1})(n,o)){var N,M,E,S;if(m&&["CTX","STATE"].includes(m)&&t)return{suggestions:(null!==(N=null===(M=t[m])||void 0===M?void 0:M.completers)&&void 0!==N?N:[]).map((e=>({label:e.label,insertText:e.label,kind:i.languages.CompletionItemKind.Value,range:p})))};if("FN"===m&&"."===h.triggerCharacter&&t)return{suggestions:(null!==(E=null===(S=t.FN)||void 0===S?void 0:S.completers)&&void 0!==E?E:[]).map((e=>({label:e.label,insertText:e.label,kind:i.languages.CompletionItemKind.Value,range:p})))};if("APP"===m&&"."===h.triggerCharacter){var x=(0,l.get)(a,"definitions.MicroApp.properties"),T=[];for(var[R,W]of Object.entries(x))T.push({label:R,kind:i.languages.CompletionItemKind.Value,documentation:W.description,detail:W.enum?W.enum.join("|"):W.type,insertText:R,range:p});return{suggestions:T}}return[".",":"].includes(g)?{suggestions:[]}:{suggestions:s.fT.map((e=>({label:e,insertText:e,kind:i.languages.CompletionItemKind.Keyword,range:p})))}}return/^[\s|-]*\w$/.test(v)?{suggestions:s.Wu.map((e=>({label:e,insertText:e,kind:i.languages.CompletionItemKind.Keyword,range:p}))).filter((e=>!f.includes(e.label)))}:{suggestions:[]}}},65107:(e,t,n)=>{n.d(t,{Wu:()=>i,aC:()=>a,fT:()=>r});var r=["CTX","STATE","DATA","EVENT","FLAGS","APP","ANCHOR","HASH","INSTALLED_APPS","ITEM","LOCAL_STORAGE","MEDIA","MISC","PARAMS","PATH","PROCESSORS","QUERY","QUERY_ARRAY","SESSION_STORAGE","TPL","SYS","BASE_URL","IMG","FN","I18N","I18N_TEXT","PERMISSIONS","THEME"],i=["target","targetRef","properties","events","method","callback","success","error","action","useProvider","useChildren","useBrick","args","if","then"],a={hit:1,info:2,warn:4,error:8}},76126:(e,t,n)=>{n.d(t,{Z:()=>l});var r=n(39601),i=n.n(r),a=n(82609),s=n.n(a)()(i());s.push([e.id,".highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}",""]);const l=s},53154:(e,t,n)=>{var r=n(46062),i=n.n(r),a=n(44036),s=n.n(a),l=n(96793),u=n.n(l),o=n(17892),h=n.n(o),d=n(11173),c=n.n(d),m=n(42464),g=n.n(m),v=n(76126),p={};p.styleTagTransform=g(),p.setAttributes=h(),p.insert=u().bind(null,"head"),p.domAPI=s(),p.insertStyleElement=c(),i()(v.Z,p),v.Z&&v.Z.locals&&v.Z.locals},81391:(e,t,n)=>{n.d(t,{G:()=>E});var r,i,a,s,l,u,o,h,d=n(53395),c=n(40381),m=n(70687),g=n(72604),v=n(55366),p=n(44511),{method:b,property:f}=(0,v.createDecorators)();r=f({attribute:!1}),a=f({attribute:!1}),l=b(),u=b();var Z=new WeakMap,k=new WeakMap,C=new WeakMap,w=new WeakMap,y=new WeakMap,L=new WeakMap,N=new WeakMap,M=new WeakMap;class E extends p.ReactNextElement{constructor(){super(...arguments),(0,d.Z)(this,L,{get:W,set:I}),(0,d.Z)(this,w,{get:T,set:R}),(0,d.Z)(this,k,{get:S,set:x}),(0,d.Z)(this,Z,{writable:!0,value:!1}),(0,d.Z)(this,C,{writable:!0,value:"normal"}),(0,d.Z)(this,y,{writable:!0,value:!1}),(0,d.Z)(this,N,{writable:!0,value:(o(this),i(this))}),(0,d.Z)(this,M,{writable:!0,value:s(this)})}get isFormItemElement(){return!0}set validateState(e){(0,c.Z)(this,w,e),this._render()}get validateState(){return(0,m.Z)(this,w)}set notRender(e){this.hidden=e,(0,c.Z)(this,k,e),this._render()}get notRender(){return(0,m.Z)(this,k)}get $bindFormItem(){return(0,m.Z)(this,L)}set $bindFormItem(e){(0,c.Z)(this,L,e),this._render()}get helpBrick(){return(0,m.Z)(this,N)}set helpBrick(e){(0,c.Z)(this,N,e)}get labelBrick(){return(0,m.Z)(this,M)}set labelBrick(e){(0,c.Z)(this,M,e)}setNotRender(e){this.notRender=e}getFormElement(){for(var e=this;(e=e.parentNode)&&e&&!e.isFormElement;);return e}}function S(){return(0,m.Z)(this,Z)}function x(e){(0,c.Z)(this,Z,e)}function T(){return(0,m.Z)(this,C)}function R(e){(0,c.Z)(this,C,e)}function W(){return(0,m.Z)(this,y)}function I(e){(0,c.Z)(this,y,e)}h=E,[i,s,o]=(0,g.Z)(h,[[r,1,"helpBrick"],[a,1,"labelBrick"],[l,2,"setNotRender"],[u,2,"getFormElement"]],[],0,void 0,p.ReactNextElement).e}}]);
|
|
2
|
+
//# sourceMappingURL=code-editor.92143cf9.js.map
|