@kubuild/components 0.0.1
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/definitions.d.ts +32 -0
- package/dist/definitions.d.ts.map +1 -0
- package/dist/index.cjs +2439 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2343 -0
- package/dist/index.js.map +1 -0
- package/dist/prop-types.d.ts +10 -0
- package/dist/prop-types.d.ts.map +1 -0
- package/dist/registry.d.ts +96 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/requirements.d.ts +18 -0
- package/dist/requirements.d.ts.map +1 -0
- package/dist/traits.d.ts +137 -0
- package/dist/traits.d.ts.map +1 -0
- package/package.json +58 -0
package/dist/traits.d.ts
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trait metadata (STORA-210).
|
|
3
|
+
*
|
|
4
|
+
* A **trait** is a *functional* prop — it carries behavior, semantics, or
|
|
5
|
+
* identity rather than pure visual styling. Examples: `href`, `target`, `alt`,
|
|
6
|
+
* `title`, `placeholder`, `aria-label`, and a custom `id`.
|
|
7
|
+
*
|
|
8
|
+
* Traits are deliberately separated from styling concerns:
|
|
9
|
+
* - Styling lives in `defaultStyles` (a `ResponsiveStyles` object) and is
|
|
10
|
+
* applied via the style abstraction, never as raw HTML attributes.
|
|
11
|
+
* - Traits describe the *semantic/behavioral* surface of a component and map
|
|
12
|
+
* to real HTML attributes at render time (see `attribute`).
|
|
13
|
+
*
|
|
14
|
+
* This module defines the trait metadata shape plus a set of reusable trait
|
|
15
|
+
* factories so every component definition can declare its traits with clear
|
|
16
|
+
* data types and default values — satisfying STORA-210's acceptance criteria.
|
|
17
|
+
*/
|
|
18
|
+
/** The primitive data types a trait value can take. */
|
|
19
|
+
export type TraitType = 'string' | 'number' | 'boolean' | 'select';
|
|
20
|
+
/** A constrained choice for `select`-typed traits. */
|
|
21
|
+
export interface TraitOption {
|
|
22
|
+
label: string;
|
|
23
|
+
value: unknown;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Logical grouping used to organize traits in an inspector UI. Kept as a
|
|
27
|
+
* closed union so hosts can render a stable, ordered set of trait sections.
|
|
28
|
+
*/
|
|
29
|
+
export type TraitGroup = 'link' | 'media' | 'form' | 'accessibility' | 'identity' | 'behavior' | 'semantic';
|
|
30
|
+
/** Ordered display order for trait groups in an inspector. */
|
|
31
|
+
export declare const TRAIT_GROUP_ORDER: TraitGroup[];
|
|
32
|
+
/** Human-readable labels for each trait group. */
|
|
33
|
+
export declare const TRAIT_GROUP_LABELS: Record<TraitGroup, string>;
|
|
34
|
+
/**
|
|
35
|
+
* Metadata describing a single functional trait on a component.
|
|
36
|
+
*
|
|
37
|
+
* `name` is the prop key on the node's `props` object; `attribute` is the HTML
|
|
38
|
+
* attribute it maps to at render time (when they differ, e.g. `name` → `id`).
|
|
39
|
+
*/
|
|
40
|
+
export interface ComponentTraitDefinition {
|
|
41
|
+
/** Prop key on the node's `props` object (e.g. `'href'`, `'alt'`). */
|
|
42
|
+
name: string;
|
|
43
|
+
/** Human-readable label shown in the inspector. */
|
|
44
|
+
label: string;
|
|
45
|
+
/** Data type of the trait value. */
|
|
46
|
+
type: TraitType;
|
|
47
|
+
/** Default value applied when the trait is not set. */
|
|
48
|
+
defaultValue?: unknown;
|
|
49
|
+
/** Constrained choices for `select`-typed traits. */
|
|
50
|
+
options?: TraitOption[];
|
|
51
|
+
/** Short description of the trait's purpose. */
|
|
52
|
+
description?: string;
|
|
53
|
+
/** The HTML attribute this trait maps to at render time (e.g. `'href'`). */
|
|
54
|
+
attribute?: string;
|
|
55
|
+
/** Whether the trait must be present for the component to be valid. */
|
|
56
|
+
required?: boolean;
|
|
57
|
+
/** Logical grouping for inspector organization. */
|
|
58
|
+
group?: TraitGroup;
|
|
59
|
+
}
|
|
60
|
+
/** Convenience alias for a list of trait definitions. */
|
|
61
|
+
export type ComponentTraits = ComponentTraitDefinition[];
|
|
62
|
+
/** `href` — the destination URL for links, buttons, and form actions. */
|
|
63
|
+
export declare function hrefTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
64
|
+
/** `target` — where the linked resource opens (`_self`, `_blank`, ...). */
|
|
65
|
+
export declare function targetTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
66
|
+
/** `rel` — relationship between the current document and the linked resource. */
|
|
67
|
+
export declare function relTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
68
|
+
/** `alt` — alternative text for media, required for accessibility. */
|
|
69
|
+
export declare function altTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
70
|
+
/** `title` — advisory title shown on hover / used as a fallback label. */
|
|
71
|
+
export declare function titleTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
72
|
+
/** `placeholder` — hint text shown inside an empty form control. */
|
|
73
|
+
export declare function placeholderTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
74
|
+
/** `aria-label` — accessible name for elements without visible text. */
|
|
75
|
+
export declare function ariaLabelTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
76
|
+
/** `id` — a custom, document-unique identifier for the element. */
|
|
77
|
+
export declare function idTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
78
|
+
/** `name` — the form field name submitted with the form data. */
|
|
79
|
+
export declare function fieldNameTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
80
|
+
/** `required` — whether the form field must be filled before submission. */
|
|
81
|
+
export declare function requiredTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
82
|
+
/** `disabled` — whether the control is non-interactive. */
|
|
83
|
+
export declare function disabledTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
84
|
+
/** `readOnly` — whether the control value can be changed by the user. */
|
|
85
|
+
export declare function readOnlyTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
86
|
+
/** `src` — the source URL for media (image, video). */
|
|
87
|
+
export declare function srcTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
88
|
+
/** `poster` — a preview image shown before a video plays. */
|
|
89
|
+
export declare function posterTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
90
|
+
/** `controls` — whether native media controls are shown. */
|
|
91
|
+
export declare function controlsTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
92
|
+
/** `autoplay` — whether media starts playing automatically. */
|
|
93
|
+
export declare function autoplayTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
94
|
+
/** `loop` — whether media restarts from the beginning when it ends. */
|
|
95
|
+
export declare function loopTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
96
|
+
/** `muted` — whether media starts with sound muted. */
|
|
97
|
+
export declare function mutedTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
98
|
+
/** `cite` — the source URL for a blockquote. */
|
|
99
|
+
export declare function citeTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
100
|
+
/** `loading` — native lazy/eager loading hint for images (STORA-213). */
|
|
101
|
+
export declare function loadingTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
102
|
+
/** `action` — the URL a form submits to. */
|
|
103
|
+
export declare function actionTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
104
|
+
/** `method` — the HTTP method a form uses to submit. */
|
|
105
|
+
export declare function methodTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
106
|
+
/** `autoComplete` — whether the browser may autofill the form. */
|
|
107
|
+
export declare function autoCompleteTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
108
|
+
/** `value` — the value submitted for a checkbox/radio when checked. */
|
|
109
|
+
export declare function valueTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
110
|
+
/** `defaultChecked` — whether a checkbox/radio starts checked. */
|
|
111
|
+
export declare function defaultCheckedTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
112
|
+
/** `defaultValue` — the initial value of a form control. */
|
|
113
|
+
export declare function defaultValueTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
114
|
+
/** `rows` — the visible number of lines in a textarea. */
|
|
115
|
+
export declare function rowsTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
116
|
+
/** `colSpan` — the number of columns a table cell spans. */
|
|
117
|
+
export declare function colSpanTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
118
|
+
/** `rowSpan` — the number of rows a table cell spans. */
|
|
119
|
+
export declare function rowSpanTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
120
|
+
/** `tag` — the semantic HTML tag a component renders as (e.g. `ul`/`ol`, `td`/`th`). */
|
|
121
|
+
export declare function tagTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
122
|
+
/** `type` — the input type of a form control (text, email, number, ...). */
|
|
123
|
+
export declare function inputTypeTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
124
|
+
/** `buttonType` — the button's form behavior (`button`, `submit`, `reset`). */
|
|
125
|
+
export declare function buttonTypeTrait(overrides?: Partial<ComponentTraitDefinition>): ComponentTraitDefinition;
|
|
126
|
+
/**
|
|
127
|
+
* Sort a component's traits into a stable, inspector-friendly order:
|
|
128
|
+
* identity first, then the remaining groups in `TRAIT_GROUP_ORDER`, with
|
|
129
|
+
* ungrouped traits last. Preserves relative order within each group.
|
|
130
|
+
*/
|
|
131
|
+
export declare function sortTraits(traits: ComponentTraits): ComponentTraits;
|
|
132
|
+
/**
|
|
133
|
+
* Collect the union of all trait names declared across a set of component
|
|
134
|
+
* definitions. Useful for building a global trait catalog / search index.
|
|
135
|
+
*/
|
|
136
|
+
export declare function collectTraitNames(traitsList: ComponentTraits[]): string[];
|
|
137
|
+
//# sourceMappingURL=traits.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traits.d.ts","sourceRoot":"","sources":["../src/traits.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@kubuild/components",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Component registry and base definitions for KUBUILD",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"require": "./dist/index.cjs"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist"
|
|
18
|
+
],
|
|
19
|
+
"sideEffects": false,
|
|
20
|
+
"publishConfig": {
|
|
21
|
+
"access": "public"
|
|
22
|
+
},
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "tsup && tsc --emitDeclarationOnly",
|
|
25
|
+
"dev": "tsup --watch",
|
|
26
|
+
"typecheck": "tsc --noEmit",
|
|
27
|
+
"lint": "eslint src",
|
|
28
|
+
"test": "vitest run",
|
|
29
|
+
"prepublishOnly": "pnpm run build"
|
|
30
|
+
},
|
|
31
|
+
"repository": {
|
|
32
|
+
"type": "git",
|
|
33
|
+
"url": "git+https://github.com/kustora/kubuild.git"
|
|
34
|
+
},
|
|
35
|
+
"keywords": [
|
|
36
|
+
"page-builder",
|
|
37
|
+
"visual-editor",
|
|
38
|
+
"low-code",
|
|
39
|
+
"website-builder",
|
|
40
|
+
"stora",
|
|
41
|
+
"kubuild"
|
|
42
|
+
],
|
|
43
|
+
"author": "KUBUILD",
|
|
44
|
+
"license": "MIT",
|
|
45
|
+
"bugs": {
|
|
46
|
+
"url": "https://github.com/kustora/kubuild/issues"
|
|
47
|
+
},
|
|
48
|
+
"homepage": "https://github.com/kustora/kubuild#readme",
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"@kubuild/core": "workspace:*",
|
|
51
|
+
"@kubuild/schema": "workspace:*"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"tsup": "^8.3.6",
|
|
55
|
+
"typescript": "^6.0.0",
|
|
56
|
+
"vitest": "^3.0.5"
|
|
57
|
+
}
|
|
58
|
+
}
|