기능 계약
이 페이지는 contracts/features.json에서 생성합니다. 각 기능은 입력, 출력, 상태, 오류, 지원 상태, fixture, 실행 테스트와 문서를 연결합니다. planned와 partial은 미완료 상태입니다.
| 기능 | 상태 | 담당 패키지 | 지원 상태 | 검증 명령 |
|---|---|---|---|---|
compileForm |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
3 command(s) |
bindForm |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
4 command(s) |
bindButtons |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
6 command(s) |
formButtonsHtml |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
5 command(s) |
createForm |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
4 command(s) |
renderForm |
implemented | @polyspec/crudui-generator-html |
javascript-html: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
4 command(s) |
renderList |
implemented | @polyspec/crudui-generator-html |
javascript-html: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
2 command(s) |
buildList |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
2 command(s) |
buildDetail |
implemented | @polyspec/crudui-generator-core |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
2 command(s) |
renderDetail |
implemented | @polyspec/crudui-generator-html |
javascript-html: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
2 command(s) |
validateDetail |
implemented | @polyspec/crudui-validator |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
3 command(s) |
connectForm |
implemented | @polyspec/crudui-generator-core |
javascript-dom: pass react: pass vue: pass svelte: pass |
2 command(s) |
patchContent |
implemented | @polyspec/crudui-generator-core |
javascript-dom: pass | 2 command(s) |
updateView |
implemented | @polyspec/crudui-generator-core |
javascript-dom: pass react: pass vue: pass svelte: pass |
2 command(s) |
buildOutline |
implemented | @polyspec/crudui-generator-core |
javascript: pass javascript-html: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
3 command(s) |
connectOutline |
implemented | @polyspec/crudui-generator-core |
javascript-dom: pass react: pass vue: pass svelte: pass |
1 command(s) |
runAction |
implemented | @polyspec/crudui-generator-core |
javascript: pass javascript-dom: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
6 command(s) |
viewState |
implemented | @polyspec/crudui-generator-core |
javascript: pass javascript-dom: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
7 command(s) |
formHistory |
implemented | @polyspec/crudui-generator-core |
javascript: pass javascript-dom: pass react: pass vue: pass svelte: pass php: pass go: pass rust: pass php-native: pass python: pass |
6 command(s) |
validate |
implemented | @polyspec/crudui-validator |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
2 command(s) |
validateList |
implemented | @polyspec/crudui-validator |
javascript: pass php: pass go: pass rust: pass php-native: pass python: pass |
2 command(s) |
패키지 진입점
각 패키지는 package.json exports의 모든 JavaScript 진입점과 그 값 export를 선언합니다. public 진입점은 공개 API입니다. internal 진입점은 CRUDUI 자체 패키지만 사용합니다. 예제, 테스트와 문서는 이를 가져오지 않으며, 예고 없이 바뀝니다.
| 패키지 | 진입점 | 공개 범위 | 값 export |
|---|---|---|---|
@polyspec/crudui-generator-core |
. |
public | ComposeLoadError, FormInputError, FormInstance, FormRenderOptionsError, FormTemplateError, UnsupportedFieldTypeError, bindButtons, bindForm, buildDetail, buildList, buildOutline, canRedo, canUndo, collapsibleRows, compileForm, connectForm, connectOutline, connectStickyHeaders, createForm, createRowKey, decodeFormRenderOptions, decodeFormTemplate, emptyHistory, formButtonsHtml, formDescription, formMessages, initialView, patchContent, recordChange, redoChange, rekeyRowView, removeRowView, resolveAction, runAction, sequenceRowKey, setAllExpandedView, toggleRowView, undoChange |
@polyspec/crudui-generator-core |
./internal |
internal | CELL_FORMATS, CELL_FORMAT_DEFAULT, CELL_RENDERERS, CONDITION_OPS, WIDGET_CANONICAL, WIDGET_COUNT, WIDGET_KINDS, WIDGET_LAYOUTS, actionHtml, affixHtml, applyConditionAction, applyConditionPart, buildListLayout, choiceLabelClass, choicesHtml, conditionHtml, conditionInnerHtml, detailRenderer, escAttr, escText, formRenderModel, groupButtonHtml, hasEventAttr, isUnsupported, listRenderer, optionSections, paginationPages, parseStyle, rawControl, rawElement, rawOptions, rawVoid, sanitizeUrl, searchHtml, serializeAttrs, sortDir, widgetRootHtml |
@polyspec/crudui-generator-html |
. |
public | renderData, renderDataPanel, renderDetail, renderForm, renderFormView, renderList, renderOutline, renderOutlineView |
@polyspec/crudui-generator-react |
. |
public | Cell, Controls, DataPanel, DataView, Detail, Form, List, Node, Outline, OutlineView, Widget |
@polyspec/crudui-generator-react |
./server |
public | renderDetail, renderForm, renderList |
@polyspec/crudui-generator-vue |
. |
public | DataView, Detail, Form, List, Outline, Widget, controlsVNode, dataVNode, nodeVNode, outlineVNode, renderDetail, renderForm, renderList |
@polyspec/crudui-generator-svelte |
. |
public | Controls, DataPanel, DataView, Detail, Form, List, Node, Outline, OutlineView, Widget, renderDetail, renderForm, renderList |
@polyspec/crudui-form-binding |
. |
public | bindForm |
@polyspec/crudui-validator |
. |
public | ComposeLoadError, FormInputError, hiddenPaths, validate, validateDetail, validateList |
@polyspec/crudui-validator |
./internal |
internal | ARRAY_LEVEL_RULES, FORBIDDEN_META_KEYS, FORBIDDEN_META_KEY_PATTERN, INVALID_TEXT_MESSAGE, LITERAL_PARAM_RULES, Lexer, MAX_EXPRESSION_DEPTH, MEMBERSHIP_PARAM_RULES, MemoryLoader, PATH_REFERENCE_RULES, ParseError, Parser, REGEX_PARAM_RULES, Validator, checkInputText, checkOptionText, checkSpecificationText, checkedComposition, checkedLoader, compareCodePoints, composeProperties, composeSpec, evaluateCondition, evaluateConditionOrFalse, evaluateExpressionValue, evaluateExpressionValueOrFalse, getRuleNames, groupChoices, groupSourceFailure, isConditionExpression, isEmptyValue, isGroupSource, isMultiple, isNumberRange, isScalarText, isStep, parseCondition, parseJsonDocument, scanForbiddenKeys |
구조와 연결은 npm run manifest:check로 검사하고, 선언된 테스트 명령은 npm run manifest:test로 실행합니다.