@ng-forge/dynamic-form-mcp 0.9.0-next.1 → 0.9.0-next.10
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/bin/ng-forge-mcp.js
CHANGED
|
@@ -1309,6 +1309,12 @@ var DOCUMENTATION = [
|
|
|
1309
1309
|
url: `${BASE_URL}/validation/custom-validators`
|
|
1310
1310
|
},
|
|
1311
1311
|
{ id: "validation-reference", title: "Validation Reference", category: "validation", url: `${BASE_URL}/validation/reference` },
|
|
1312
|
+
{
|
|
1313
|
+
id: "validation-hidden-fields",
|
|
1314
|
+
title: "Validation for Hidden Fields",
|
|
1315
|
+
category: "validation",
|
|
1316
|
+
url: `${BASE_URL}/validation/hidden-fields`
|
|
1317
|
+
},
|
|
1312
1318
|
// Dynamic Behavior
|
|
1313
1319
|
{ id: "conditional-logic", title: "Conditional Logic", category: "dynamic-behavior", url: `${BASE_URL}/dynamic-behavior/overview` },
|
|
1314
1320
|
{ id: "value-derivation", title: "Value Derivation", category: "dynamic-behavior", url: `${BASE_URL}/dynamic-behavior/derivation` },
|
|
@@ -1396,7 +1402,7 @@ var DOCUMENTATION = [
|
|
|
1396
1402
|
// packages/dynamic-form-mcp/src/registry/wrappers.ts
|
|
1397
1403
|
var WRAPPER_AUTHORING_CONTRACT = `All wrapper components MUST:
|
|
1398
1404
|
|
|
1399
|
-
1. Implement \`
|
|
1405
|
+
1. Implement \`FieldWrapper\` from \`@ng-forge/dynamic-forms\`.
|
|
1400
1406
|
2. Expose \`readonly fieldComponent = viewChild.required('fieldComponent', { read: ViewContainerRef });\`
|
|
1401
1407
|
\u2014 this is the slot where the inner wrapper (or the field) is rendered
|
|
1402
1408
|
imperatively by the outlet.
|
|
@@ -3976,7 +3982,12 @@ var BaseFieldDefSchema = z14.object({
|
|
|
3976
3982
|
* Whether to exclude this field's value from submission output when readonly.
|
|
3977
3983
|
* Overrides both the global and form-level settings.
|
|
3978
3984
|
*/
|
|
3979
|
-
excludeValueIfReadonly: z14.boolean().optional()
|
|
3985
|
+
excludeValueIfReadonly: z14.boolean().optional(),
|
|
3986
|
+
/**
|
|
3987
|
+
* Whether to run validation when this field is hidden.
|
|
3988
|
+
* Inherited from the parent field (and form/global defaults). Defaults to false.
|
|
3989
|
+
*/
|
|
3990
|
+
validateWhenHidden: z14.boolean().optional()
|
|
3980
3991
|
});
|
|
3981
3992
|
|
|
3982
3993
|
// internal/dynamic-forms-zod/src/lib/schemas/field/field-with-validation.schema.ts
|
|
@@ -4950,7 +4961,13 @@ var FormOptionsSchema = z38.object({
|
|
|
4950
4961
|
* Whether to exclude values of readonly fields from submission output.
|
|
4951
4962
|
* Overrides the global withValueExclusionDefaults() setting for this form.
|
|
4952
4963
|
*/
|
|
4953
|
-
excludeValueIfReadonly: z38.boolean().optional()
|
|
4964
|
+
excludeValueIfReadonly: z38.boolean().optional(),
|
|
4965
|
+
/**
|
|
4966
|
+
* Whether to run validation while a field is hidden.
|
|
4967
|
+
* Acts as the root inherited value for the form. Per-field
|
|
4968
|
+
* validateWhenHidden overrides cascade through the field tree.
|
|
4969
|
+
*/
|
|
4970
|
+
validateWhenHidden: z38.boolean().optional()
|
|
4954
4971
|
});
|
|
4955
4972
|
|
|
4956
4973
|
// internal/dynamic-forms-zod/src/lib/schemas/form/schema-definition.schema.ts
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ng-forge/dynamic-form-mcp",
|
|
3
|
-
"version": "0.9.0-next.
|
|
3
|
+
"version": "0.9.0-next.10",
|
|
4
4
|
"description": "MCP server for ng-forge dynamic forms - AI-assisted form schema generation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -51,11 +51,11 @@
|
|
|
51
51
|
"zod": "^3.25.76"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
|
-
"@ng-forge/dynamic-forms": "^0.9.0-next.
|
|
55
|
-
"@ng-forge/dynamic-forms-bootstrap": "^0.9.0-next.
|
|
56
|
-
"@ng-forge/dynamic-forms-ionic": "^0.9.0-next.
|
|
57
|
-
"@ng-forge/dynamic-forms-material": "^0.9.0-next.
|
|
58
|
-
"@ng-forge/dynamic-forms-primeng": "^0.9.0-next.
|
|
54
|
+
"@ng-forge/dynamic-forms": "^0.9.0-next.10",
|
|
55
|
+
"@ng-forge/dynamic-forms-bootstrap": "^0.9.0-next.10",
|
|
56
|
+
"@ng-forge/dynamic-forms-ionic": "^0.9.0-next.10",
|
|
57
|
+
"@ng-forge/dynamic-forms-material": "^0.9.0-next.10",
|
|
58
|
+
"@ng-forge/dynamic-forms-primeng": "^0.9.0-next.10",
|
|
59
59
|
"tsx": "^4.19.0"
|
|
60
60
|
}
|
|
61
61
|
}
|
package/src/index.js
CHANGED
|
@@ -1307,6 +1307,12 @@ var DOCUMENTATION = [
|
|
|
1307
1307
|
url: `${BASE_URL}/validation/custom-validators`
|
|
1308
1308
|
},
|
|
1309
1309
|
{ id: "validation-reference", title: "Validation Reference", category: "validation", url: `${BASE_URL}/validation/reference` },
|
|
1310
|
+
{
|
|
1311
|
+
id: "validation-hidden-fields",
|
|
1312
|
+
title: "Validation for Hidden Fields",
|
|
1313
|
+
category: "validation",
|
|
1314
|
+
url: `${BASE_URL}/validation/hidden-fields`
|
|
1315
|
+
},
|
|
1310
1316
|
// Dynamic Behavior
|
|
1311
1317
|
{ id: "conditional-logic", title: "Conditional Logic", category: "dynamic-behavior", url: `${BASE_URL}/dynamic-behavior/overview` },
|
|
1312
1318
|
{ id: "value-derivation", title: "Value Derivation", category: "dynamic-behavior", url: `${BASE_URL}/dynamic-behavior/derivation` },
|
|
@@ -1394,7 +1400,7 @@ var DOCUMENTATION = [
|
|
|
1394
1400
|
// packages/dynamic-form-mcp/src/registry/wrappers.ts
|
|
1395
1401
|
var WRAPPER_AUTHORING_CONTRACT = `All wrapper components MUST:
|
|
1396
1402
|
|
|
1397
|
-
1. Implement \`
|
|
1403
|
+
1. Implement \`FieldWrapper\` from \`@ng-forge/dynamic-forms\`.
|
|
1398
1404
|
2. Expose \`readonly fieldComponent = viewChild.required('fieldComponent', { read: ViewContainerRef });\`
|
|
1399
1405
|
\u2014 this is the slot where the inner wrapper (or the field) is rendered
|
|
1400
1406
|
imperatively by the outlet.
|
|
@@ -3981,7 +3987,12 @@ var BaseFieldDefSchema = z14.object({
|
|
|
3981
3987
|
* Whether to exclude this field's value from submission output when readonly.
|
|
3982
3988
|
* Overrides both the global and form-level settings.
|
|
3983
3989
|
*/
|
|
3984
|
-
excludeValueIfReadonly: z14.boolean().optional()
|
|
3990
|
+
excludeValueIfReadonly: z14.boolean().optional(),
|
|
3991
|
+
/**
|
|
3992
|
+
* Whether to run validation when this field is hidden.
|
|
3993
|
+
* Inherited from the parent field (and form/global defaults). Defaults to false.
|
|
3994
|
+
*/
|
|
3995
|
+
validateWhenHidden: z14.boolean().optional()
|
|
3985
3996
|
});
|
|
3986
3997
|
|
|
3987
3998
|
// internal/dynamic-forms-zod/src/lib/schemas/field/field-with-validation.schema.ts
|
|
@@ -4955,7 +4966,13 @@ var FormOptionsSchema = z38.object({
|
|
|
4955
4966
|
* Whether to exclude values of readonly fields from submission output.
|
|
4956
4967
|
* Overrides the global withValueExclusionDefaults() setting for this form.
|
|
4957
4968
|
*/
|
|
4958
|
-
excludeValueIfReadonly: z38.boolean().optional()
|
|
4969
|
+
excludeValueIfReadonly: z38.boolean().optional(),
|
|
4970
|
+
/**
|
|
4971
|
+
* Whether to run validation while a field is hidden.
|
|
4972
|
+
* Acts as the root inherited value for the form. Per-field
|
|
4973
|
+
* validateWhenHidden overrides cascade through the field tree.
|
|
4974
|
+
*/
|
|
4975
|
+
validateWhenHidden: z38.boolean().optional()
|
|
4959
4976
|
});
|
|
4960
4977
|
|
|
4961
4978
|
// internal/dynamic-forms-zod/src/lib/schemas/form/schema-definition.schema.ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documentation.d.ts","sourceRoot":"","sources":["../../../../../packages/dynamic-form-mcp/src/registry/documentation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,aAAa,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"documentation.d.ts","sourceRoot":"","sources":["../../../../../packages/dynamic-form-mcp/src/registry/documentation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,aAAa,EAAE,OAAO,EAgIlC,CAAC"}
|
|
@@ -21,6 +21,6 @@ import type { WrapperInfo } from './index.js';
|
|
|
21
21
|
* Surfaced by `ngforge_lookup topic="wrappers"` and any wrapper-scoped
|
|
22
22
|
* lookup so consumers can't miss them.
|
|
23
23
|
*/
|
|
24
|
-
export declare const WRAPPER_AUTHORING_CONTRACT = "All wrapper components MUST:\n\n1. Implement `
|
|
24
|
+
export declare const WRAPPER_AUTHORING_CONTRACT = "All wrapper components MUST:\n\n1. Implement `FieldWrapper` from `@ng-forge/dynamic-forms`.\n2. Expose `readonly fieldComponent = viewChild.required('fieldComponent', { read: ViewContainerRef });`\n \u2014 this is the slot where the inner wrapper (or the field) is rendered\n imperatively by the outlet.\n3. Place the `#fieldComponent` template ref UNCONDITIONALLY. It cannot\n live inside `@if`, `@defer`, `@for`, `@switch`, `<ng-template>`,\n or any structural directive that delays view creation. The outlet reads\n the `ViewContainerRef` immediately after creation \u2014 if the slot isn't\n materialised yet, `viewChild.required` throws `NG0951`\n (REQUIRED_QUERY_NO_VALUE), the wrapper chain is torn down, and the field\n renders bare.\n4. Declare every config key the wrapper consumes as an Angular `input()`.\n Unknown keys are silently dropped \u2014 the outlet probes\n `reflectComponentType(...).inputs` before calling `setInput()`.\n Runtime typos in config will NOT throw; rely on TypeScript (via\n `FieldRegistryWrappers` module augmentation) to catch them.\n5. Optionally accept `fieldInputs: input<WrapperFieldInputs>()` to read\n the wrapped field's mapper outputs and read-only form state.";
|
|
25
25
|
export declare const WRAPPERS: WrapperInfo[];
|
|
26
26
|
//# sourceMappingURL=wrappers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrappers.d.ts","sourceRoot":"","sources":["../../../../../packages/dynamic-form-mcp/src/registry/wrappers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,
|
|
1
|
+
{"version":3,"file":"wrappers.d.ts","sourceRoot":"","sources":["../../../../../packages/dynamic-form-mcp/src/registry/wrappers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,stCAmByB,CAAC;AAEjE,eAAO,MAAM,QAAQ,EAAE,WAAW,EAwIjC,CAAC"}
|