tembro 2.1.5 → 2.1.7
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/public-component-surface.cjs +1 -1
- package/dist/public-component-surface.js +0 -10
- package/dist/showcase/site-data.cjs +1 -1
- package/dist/showcase/site-data.d.ts +9 -4
- package/dist/showcase/site-data.js +309 -329
- package/dist/showcase/tembro-registry.json.cjs +1 -1
- package/dist/showcase/tembro-registry.json.js +25 -37
- package/package.json +189 -189
- package/packages/cli/dist/index.cjs +30 -30
- package/packages/cli/vendor/src/public-component-surface.ts +0 -2
- package/packages/cli/vendor/src/showcase/site-data.tsx +47 -43
- package/packages/cli/vendor/src/showcase/tembro-registry.json +23 -35
- package/registry.json +23 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={$schema:`https://tembro.dev/registry.schema.json`,name:`tembro`,version:`2.1.
|
|
1
|
+
var e={$schema:`https://tembro.dev/registry.schema.json`,name:`tembro`,version:`2.1.7`,description:`Reusable React + TypeScript UI kit registry`,groups:{ui:[`badge`,`button`,`card`,`checkbox`,`accordion`,`collapse`,`dialog`,`divider`,`dropdown-menu`,`input`,`kbd`,`popover`,`radio-group`,`right-click-menu`,`scroll-box`,`select`,`segmented-control`,`skeleton`,`spinner`,`switch`,`table`,`tabs`,`textarea`,`tooltip`],overlay:[`alert-dialog`,`confirm-dialog`,`drawer`,`modal-shell`,`sheet-shell`],navigation:[`nav-tabs`,`page-tabs`,`pagination`,`stepper-tabs`,`command-bar`],inputs:[`async-select`,`combobox`,`masked-input`,`money-input`,`number-input`,`otp-input`,`password-input`,`phone-input`,`quantity-stepper`,`rating`,`search-input`,`slider`,`tag-input`,`inline-editable`],form:[],feedback:[`alert`,`loading-state`,`page-state`,`data-state`],display:[`activity-feed`,`avatar`,`code-block`,`data-list`,`data-state`,`info-card`,`kanban`,`list`,`metric-grid`,`progress`,`progress-circle`,`property-grid`,`result`,`statistic`,`status-dot`,`status-legend`,`timeline`,`tree-view`,`user-card`,`trend-card`],actions:[`action-menu`,`button-group`,`copy-button`,`quick-action-grid`],layout:[`sidebar`,`breadcrumbs`,`section`],filters:[`filter-bar`,`saved-filter-select`],"data-table":[`data-table`],calendar:[`calendar`,`date-picker`,`date-range-picker`],upload:[`file-upload`,`image-upload`],wizard:[`stepper`,`wizard`],notifications:[`toast`,`notification-center`],command:[],patterns:[`resource-page`,`resource-detail-page`],modern:[`calendar-scheduler`,`dual-list-picker`,`menubar`,`navigation-menu`,`resizable-panel`,`rich-text-editor`,`tour`,`qr-code`,`tag`,`carousel`,`typography`,`json-input`,`time-picker`],hooks:[`use-session-storage-state`,`use-before-unload-when-dirty`,`use-is-mobile`,`use-disclosure`,`use-debounce`,`use-data-table-view-state`],kits:[`dashboard`,`calendar-kit`,`wizard-kit`,`all`]},recommended:`button.input.textarea.checkbox.switch.radio-group.dialog.popover.select.table.badge.card.tabs.collapse.accordion.segmented-control.spinner.tooltip.kbd.sidebar.breadcrumbs.data-state.loading-state.progress.progress-circle.metric-grid.activity-feed.data-list.user-card.action-menu.filter-bar.trend-card.notification-center.command-bar`.split(`.`),recommendedByMode:{foundation:[`button`,`input`,`textarea`,`checkbox`,`switch`,`radio-group`,`dialog`,`popover`,`select`,`table`,`badge`,`card`,`tabs`,`kbd`,`scroll-box`],sourceCopy:[`sidebar`,`breadcrumbs`,`data-state`,`loading-state`,`progress-circle`,`metric-grid`,`activity-feed`,`user-card`,`action-menu`,`filter-bar`,`date-picker`,`date-range-picker`,`file-upload`,`use-data-table-view-state`,`data-table`,`trend-card`,`notification-center`,`command-bar`],system:[`data-table`,`data-table-view-presets`,`sidebar`]},publicSurface:{documented:[`button`,`input`,`select`,`card`,`badge`,`checkbox`,`dialog`,`data-table`,`calendar`,`date-picker`,`date-range-picker`,`alert`,`charts`,`sidebar`,`file-upload`,`progress`],standalone:`accordion.divider.segmented-control.skeleton.spinner.command-bar.quantity-stepper.inline-editable.avatar.code-block.data-state.kanban.list.property-grid.statistic.tree-view.copy-button.section.calendar-scheduler.dual-list-picker.menubar.navigation-menu.resizable-panel.rich-text-editor.tour.qr-code.tag.carousel.typography.json-input.time-picker`.split(`.`)},migrationAliases:{"clearable-input":`input`,"search-input":`input`,"password-input":`input`,"number-input":`input`,"money-input":`input`,"phone-input":`input`,"masked-input":`input`,"quantity-input":`input`,"date-input":`input`,"date-range-input":`input`,"simple-select":`select`,combobox:`select`,"async-multi-select":`async-select`,"form-async-select":`select`,"app-sidebar":`sidebar`,"smart-card":`info-card`,"app-header":`sidebar`,"app-shell":`sidebar`,"copy-field":`copy-button`,"file-dropzone":`file-upload`,"form-field-shell":`input`,"form-input":`input`,"form-select":`select`,"form-switch":`switch`,"form-textarea":`textarea`,"hover-card":`tooltip`,"page-container":`sidebar`,"page-header":`breadcrumbs`,"section-header":`section`,"sidebar-nav":`sidebar`,"stat-card":`metric-grid`,"sticky-footer-bar":`sidebar`}};exports.default=e;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var e = {
|
|
2
2
|
$schema: "https://tembro.dev/registry.schema.json",
|
|
3
3
|
name: "tembro",
|
|
4
|
-
version: "2.1.
|
|
4
|
+
version: "2.1.7",
|
|
5
5
|
description: "Reusable React + TypeScript UI kit registry",
|
|
6
6
|
groups: {
|
|
7
7
|
ui: [
|
|
@@ -53,23 +53,14 @@ var e = {
|
|
|
53
53
|
"otp-input",
|
|
54
54
|
"password-input",
|
|
55
55
|
"phone-input",
|
|
56
|
-
"quantity-input",
|
|
57
56
|
"quantity-stepper",
|
|
58
57
|
"rating",
|
|
59
58
|
"search-input",
|
|
60
|
-
"simple-select",
|
|
61
59
|
"slider",
|
|
62
60
|
"tag-input",
|
|
63
61
|
"inline-editable"
|
|
64
62
|
],
|
|
65
|
-
form: [
|
|
66
|
-
"form-field-shell",
|
|
67
|
-
"form-input",
|
|
68
|
-
"form-select",
|
|
69
|
-
"form-textarea",
|
|
70
|
-
"form-switch",
|
|
71
|
-
"form-async-select"
|
|
72
|
-
],
|
|
63
|
+
form: [],
|
|
73
64
|
feedback: [
|
|
74
65
|
"alert",
|
|
75
66
|
"loading-state",
|
|
@@ -105,15 +96,9 @@ var e = {
|
|
|
105
96
|
"quick-action-grid"
|
|
106
97
|
],
|
|
107
98
|
layout: [
|
|
108
|
-
"app-header",
|
|
109
99
|
"sidebar",
|
|
110
100
|
"breadcrumbs",
|
|
111
|
-
"
|
|
112
|
-
"section",
|
|
113
|
-
"section-header",
|
|
114
|
-
"sidebar-nav",
|
|
115
|
-
"stat-card",
|
|
116
|
-
"sticky-footer-bar"
|
|
101
|
+
"section"
|
|
117
102
|
],
|
|
118
103
|
filters: ["filter-bar", "saved-filter-select"],
|
|
119
104
|
"data-table": ["data-table"],
|
|
@@ -122,11 +107,7 @@ var e = {
|
|
|
122
107
|
"date-picker",
|
|
123
108
|
"date-range-picker"
|
|
124
109
|
],
|
|
125
|
-
upload: [
|
|
126
|
-
"file-upload",
|
|
127
|
-
"image-upload",
|
|
128
|
-
"file-dropzone"
|
|
129
|
-
],
|
|
110
|
+
upload: ["file-upload", "image-upload"],
|
|
130
111
|
wizard: ["stepper", "wizard"],
|
|
131
112
|
notifications: ["toast", "notification-center"],
|
|
132
113
|
command: [],
|
|
@@ -161,7 +142,7 @@ var e = {
|
|
|
161
142
|
"all"
|
|
162
143
|
]
|
|
163
144
|
},
|
|
164
|
-
recommended: /* @__PURE__ */ "button.input.textarea.checkbox.switch.radio-group.dialog.popover.select.table.badge.card.tabs.collapse.accordion.segmented-control.spinner.tooltip.kbd.sidebar.
|
|
145
|
+
recommended: /* @__PURE__ */ "button.input.textarea.checkbox.switch.radio-group.dialog.popover.select.table.badge.card.tabs.collapse.accordion.segmented-control.spinner.tooltip.kbd.sidebar.breadcrumbs.data-state.loading-state.progress.progress-circle.metric-grid.activity-feed.data-list.user-card.action-menu.filter-bar.trend-card.notification-center.command-bar".split("."),
|
|
165
146
|
recommendedByMode: {
|
|
166
147
|
foundation: [
|
|
167
148
|
"button",
|
|
@@ -182,12 +163,10 @@ var e = {
|
|
|
182
163
|
],
|
|
183
164
|
sourceCopy: [
|
|
184
165
|
"sidebar",
|
|
185
|
-
"sidebar-nav",
|
|
186
166
|
"breadcrumbs",
|
|
187
167
|
"data-state",
|
|
188
168
|
"loading-state",
|
|
189
169
|
"progress-circle",
|
|
190
|
-
"stat-card",
|
|
191
170
|
"metric-grid",
|
|
192
171
|
"activity-feed",
|
|
193
172
|
"user-card",
|
|
@@ -196,13 +175,8 @@ var e = {
|
|
|
196
175
|
"date-picker",
|
|
197
176
|
"date-range-picker",
|
|
198
177
|
"file-upload",
|
|
199
|
-
"file-dropzone",
|
|
200
178
|
"use-data-table-view-state",
|
|
201
179
|
"data-table",
|
|
202
|
-
"form-input",
|
|
203
|
-
"form-select",
|
|
204
|
-
"form-textarea",
|
|
205
|
-
"form-switch",
|
|
206
180
|
"trend-card",
|
|
207
181
|
"notification-center",
|
|
208
182
|
"command-bar"
|
|
@@ -210,8 +184,7 @@ var e = {
|
|
|
210
184
|
system: [
|
|
211
185
|
"data-table",
|
|
212
186
|
"data-table-view-presets",
|
|
213
|
-
"sidebar"
|
|
214
|
-
"sidebar-nav"
|
|
187
|
+
"sidebar"
|
|
215
188
|
]
|
|
216
189
|
},
|
|
217
190
|
publicSurface: {
|
|
@@ -223,7 +196,6 @@ var e = {
|
|
|
223
196
|
"badge",
|
|
224
197
|
"checkbox",
|
|
225
198
|
"dialog",
|
|
226
|
-
"form-field-shell",
|
|
227
199
|
"data-table",
|
|
228
200
|
"calendar",
|
|
229
201
|
"date-picker",
|
|
@@ -234,7 +206,7 @@ var e = {
|
|
|
234
206
|
"file-upload",
|
|
235
207
|
"progress"
|
|
236
208
|
],
|
|
237
|
-
standalone: /* @__PURE__ */ "accordion.divider.segmented-control.skeleton.spinner.command-bar.quantity-stepper.inline-editable.avatar.code-block.data-state.kanban.list.property-grid.statistic.tree-view.copy-button.section.
|
|
209
|
+
standalone: /* @__PURE__ */ "accordion.divider.segmented-control.skeleton.spinner.command-bar.quantity-stepper.inline-editable.avatar.code-block.data-state.kanban.list.property-grid.statistic.tree-view.copy-button.section.calendar-scheduler.dual-list-picker.menubar.navigation-menu.resizable-panel.rich-text-editor.tour.qr-code.tag.carousel.typography.json-input.time-picker".split(".")
|
|
238
210
|
},
|
|
239
211
|
migrationAliases: {
|
|
240
212
|
"clearable-input": "input",
|
|
@@ -250,9 +222,25 @@ var e = {
|
|
|
250
222
|
"simple-select": "select",
|
|
251
223
|
combobox: "select",
|
|
252
224
|
"async-multi-select": "async-select",
|
|
253
|
-
"form-async-select": "
|
|
225
|
+
"form-async-select": "select",
|
|
254
226
|
"app-sidebar": "sidebar",
|
|
255
|
-
"smart-card": "info-card"
|
|
227
|
+
"smart-card": "info-card",
|
|
228
|
+
"app-header": "sidebar",
|
|
229
|
+
"app-shell": "sidebar",
|
|
230
|
+
"copy-field": "copy-button",
|
|
231
|
+
"file-dropzone": "file-upload",
|
|
232
|
+
"form-field-shell": "input",
|
|
233
|
+
"form-input": "input",
|
|
234
|
+
"form-select": "select",
|
|
235
|
+
"form-switch": "switch",
|
|
236
|
+
"form-textarea": "textarea",
|
|
237
|
+
"hover-card": "tooltip",
|
|
238
|
+
"page-container": "sidebar",
|
|
239
|
+
"page-header": "breadcrumbs",
|
|
240
|
+
"section-header": "section",
|
|
241
|
+
"sidebar-nav": "sidebar",
|
|
242
|
+
"stat-card": "metric-grid",
|
|
243
|
+
"sticky-footer-bar": "sidebar"
|
|
256
244
|
}
|
|
257
245
|
};
|
|
258
246
|
//#endregion
|
package/package.json
CHANGED
|
@@ -1,189 +1,189 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "tembro",
|
|
3
|
-
"version": "2.1.
|
|
4
|
-
"description": "Reusable React UI kit with dashboard-ready components, CLI registry helpers, and TypeScript support.",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"react",
|
|
7
|
-
"typescript",
|
|
8
|
-
"ui",
|
|
9
|
-
"component-library",
|
|
10
|
-
"design-system",
|
|
11
|
-
"dashboard",
|
|
12
|
-
"tailwindcss",
|
|
13
|
-
"registry",
|
|
14
|
-
"cli"
|
|
15
|
-
],
|
|
16
|
-
"homepage": "https://github.com/AzamatJurayev-dev/tembro#readme",
|
|
17
|
-
"repository": {
|
|
18
|
-
"type": "git",
|
|
19
|
-
"url": "git+https://github.com/AzamatJurayev-dev/tembro.git"
|
|
20
|
-
},
|
|
21
|
-
"bugs": {
|
|
22
|
-
"url": "https://github.com/AzamatJurayev-dev/tembro/issues"
|
|
23
|
-
},
|
|
24
|
-
"license": "MIT",
|
|
25
|
-
"author": "Azamat Jurayev",
|
|
26
|
-
"type": "module",
|
|
27
|
-
"bin": {
|
|
28
|
-
"tembro": "bin/tembro.cjs"
|
|
29
|
-
},
|
|
30
|
-
"publishConfig": {
|
|
31
|
-
"access": "public"
|
|
32
|
-
},
|
|
33
|
-
"engines": {
|
|
34
|
-
"node": ">=18"
|
|
35
|
-
},
|
|
36
|
-
"workspaces": [
|
|
37
|
-
"packages/cli"
|
|
38
|
-
],
|
|
39
|
-
"main": "./dist/index.cjs",
|
|
40
|
-
"module": "./dist/index.js",
|
|
41
|
-
"types": "./dist/index.d.ts",
|
|
42
|
-
"sideEffects": [
|
|
43
|
-
"**/*.css"
|
|
44
|
-
],
|
|
45
|
-
"exports": {
|
|
46
|
-
".": {
|
|
47
|
-
"types": "./dist/index.d.ts",
|
|
48
|
-
"import": "./dist/index.js",
|
|
49
|
-
"require": "./dist/index.cjs"
|
|
50
|
-
},
|
|
51
|
-
"./ui/*": {
|
|
52
|
-
"types": "./dist/components/ui/*.d.ts",
|
|
53
|
-
"import": "./dist/components/ui/*.js",
|
|
54
|
-
"require": "./dist/components/ui/*.cjs"
|
|
55
|
-
},
|
|
56
|
-
"./actions/*": {
|
|
57
|
-
"types": "./dist/components/actions/*.d.ts",
|
|
58
|
-
"import": "./dist/components/actions/*.js",
|
|
59
|
-
"require": "./dist/components/actions/*.cjs"
|
|
60
|
-
},
|
|
61
|
-
"./patterns/*": {
|
|
62
|
-
"types": "./dist/components/patterns/*.d.ts",
|
|
63
|
-
"import": "./dist/components/patterns/*.js",
|
|
64
|
-
"require": "./dist/components/patterns/*.cjs"
|
|
65
|
-
},
|
|
66
|
-
"./display/*": {
|
|
67
|
-
"types": "./dist/components/display/*.d.ts",
|
|
68
|
-
"import": "./dist/components/display/*.js",
|
|
69
|
-
"require": "./dist/components/display/*.cjs"
|
|
70
|
-
},
|
|
71
|
-
"./form/*": {
|
|
72
|
-
"types": "./dist/components/form/*.d.ts",
|
|
73
|
-
"import": "./dist/components/form/*.js",
|
|
74
|
-
"require": "./dist/components/form/*.cjs"
|
|
75
|
-
},
|
|
76
|
-
"./layout/*": {
|
|
77
|
-
"types": "./dist/components/layout/*.d.ts",
|
|
78
|
-
"import": "./dist/components/layout/*.js",
|
|
79
|
-
"require": "./dist/components/layout/*.cjs"
|
|
80
|
-
},
|
|
81
|
-
"./inputs/*": {
|
|
82
|
-
"types": "./dist/components/inputs/*.d.ts",
|
|
83
|
-
"import": "./dist/components/inputs/*.js",
|
|
84
|
-
"require": "./dist/components/inputs/*.cjs"
|
|
85
|
-
},
|
|
86
|
-
"./charts/*": {
|
|
87
|
-
"types": "./dist/components/charts/*.d.ts",
|
|
88
|
-
"import": "./dist/components/charts/*.js",
|
|
89
|
-
"require": "./dist/components/charts/*.cjs"
|
|
90
|
-
},
|
|
91
|
-
"./data-table/*": {
|
|
92
|
-
"types": "./dist/components/data-table/*.d.ts",
|
|
93
|
-
"import": "./dist/components/data-table/*.js",
|
|
94
|
-
"require": "./dist/components/data-table/*.cjs"
|
|
95
|
-
},
|
|
96
|
-
"./showcase": {
|
|
97
|
-
"types": "./dist/showcase/index.d.ts",
|
|
98
|
-
"import": "./dist/showcase/index.js",
|
|
99
|
-
"require": "./dist/showcase/index.cjs"
|
|
100
|
-
},
|
|
101
|
-
"./showcase/*": {
|
|
102
|
-
"types": "./dist/showcase/*.d.ts",
|
|
103
|
-
"import": "./dist/showcase/*.js",
|
|
104
|
-
"require": "./dist/showcase/*.cjs"
|
|
105
|
-
},
|
|
106
|
-
"./registry.json": "./registry.json",
|
|
107
|
-
"./package.json": "./package.json"
|
|
108
|
-
},
|
|
109
|
-
"files": [
|
|
110
|
-
"bin",
|
|
111
|
-
"dist",
|
|
112
|
-
"packages/cli/dist",
|
|
113
|
-
"packages/cli/vendor",
|
|
114
|
-
"registry.json",
|
|
115
|
-
"README.md",
|
|
116
|
-
"CHANGELOG.md",
|
|
117
|
-
"LICENSE"
|
|
118
|
-
],
|
|
119
|
-
"scripts": {
|
|
120
|
-
"prepublishOnly": "npm run release:gate",
|
|
121
|
-
"clean": "node scripts/clean-dist.mjs",
|
|
122
|
-
"build": "npm run clean && vite build && tsc -p tsconfig.build.json && npm run test:build-output",
|
|
123
|
-
"build:lib": "vite build && tsc -p tsconfig.build.json",
|
|
124
|
-
"build:cli": "npm run build --workspace tembro-cli-internal",
|
|
125
|
-
"build:all": "npm run build && npm run build:cli",
|
|
126
|
-
"prepack": "node scripts/prepack-root.mjs",
|
|
127
|
-
"pack:dry-run": "npm pack --dry-run && npm pack --dry-run --workspace tembro-cli-internal",
|
|
128
|
-
"check-version-sync": "node scripts/check-version-sync.mjs",
|
|
129
|
-
"check-neutral-palette": "node scripts/check-neutral-palette.mjs",
|
|
130
|
-
"check:showcase-quality": "node scripts/check-showcase-quality.mjs",
|
|
131
|
-
"test:cli": "node scripts/test-cli.mjs",
|
|
132
|
-
"lint": "eslint .",
|
|
133
|
-
"test:types": "tsc -p tsconfig.test.json --noEmit",
|
|
134
|
-
"test:a11y": "vitest run tests/a11y/render-accessibility.test.tsx --config vitest.config.ts",
|
|
135
|
-
"test:registry": "node scripts/validate-registry.mjs",
|
|
136
|
-
"test:build-output": "node scripts/check-build-output.mjs",
|
|
137
|
-
"test:root-exports": "node scripts/check-root-exports.mjs",
|
|
138
|
-
"test:render": "vitest run --config vitest.config.ts",
|
|
139
|
-
"test:fixtures": "node scripts/fixture-smoke.mjs",
|
|
140
|
-
"test:run": "npm run test:types && npm run test:render && npm run test:a11y && npm run test:registry && npm run test:root-exports && node scripts/ensure-build-output.mjs && npm run test:build-output && npm run check:showcase-quality",
|
|
141
|
-
"release:quick": "npm run test:types && npm run test:registry && npm run test:root-exports && npx vitest run tests/render/async-select.test.tsx tests/render/form-select.test.tsx tests/render/base-primitives.test.tsx tests/render/calendar-upload.test.tsx tests/render/data-table.test.tsx --config vitest.config.ts && npm run build:all && npm run check-version-sync && npm run pack:dry-run",
|
|
142
|
-
"release:gate": "npm run lint && npm run build:all && npm run check-version-sync && npm run test:run && npm run test:cli && npm run test:fixtures && npm run pack:dry-run"
|
|
143
|
-
},
|
|
144
|
-
"peerDependencies": {
|
|
145
|
-
"react": "^18.0.0 || ^19.0.0",
|
|
146
|
-
"react-dom": "^18.0.0 || ^19.0.0",
|
|
147
|
-
"react-hook-form": "^7.0.0"
|
|
148
|
-
},
|
|
149
|
-
"dependencies": {
|
|
150
|
-
"@base-ui/react": "^1.5.0",
|
|
151
|
-
"@tanstack/react-table": "^8.21.3",
|
|
152
|
-
"class-variance-authority": "^0.7.1",
|
|
153
|
-
"clsx": "^2.1.1",
|
|
154
|
-
"cmdk": "^1.1.1",
|
|
155
|
-
"lucide-react": "^1.17.0",
|
|
156
|
-
"tailwind-merge": "^3.6.0"
|
|
157
|
-
},
|
|
158
|
-
"devDependencies": {
|
|
159
|
-
"@babel/core": "^7.29.0",
|
|
160
|
-
"@eslint/js": "^10.0.1",
|
|
161
|
-
"@rolldown/plugin-babel": "^0.2.3",
|
|
162
|
-
"@tailwindcss/vite": "^4.3.0",
|
|
163
|
-
"@testing-library/jest-dom": "^6.9.1",
|
|
164
|
-
"@testing-library/react": "^16.3.2",
|
|
165
|
-
"@testing-library/user-event": "^14.6.1",
|
|
166
|
-
"@types/babel__core": "^7.20.5",
|
|
167
|
-
"@types/fs-extra": "^11.0.4",
|
|
168
|
-
"@types/node": "^24.13.2",
|
|
169
|
-
"@types/react": "^19.2.14",
|
|
170
|
-
"@types/react-dom": "^19.2.3",
|
|
171
|
-
"@vitejs/plugin-react": "^6.0.1",
|
|
172
|
-
"babel-plugin-react-compiler": "^1.0.0",
|
|
173
|
-
"eslint": "^10.3.0",
|
|
174
|
-
"eslint-plugin-react-hooks": "^7.1.1",
|
|
175
|
-
"eslint-plugin-react-refresh": "^0.5.2",
|
|
176
|
-
"execa": "^9.6.1",
|
|
177
|
-
"fs-extra": "^11.3.5",
|
|
178
|
-
"globals": "^17.6.0",
|
|
179
|
-
"jsdom": "^27.4.0",
|
|
180
|
-
"react": "^19.2.6",
|
|
181
|
-
"react-dom": "^19.2.6",
|
|
182
|
-
"react-hook-form": "^7.75.0",
|
|
183
|
-
"tailwindcss": "^4.3.0",
|
|
184
|
-
"typescript": "~6.0.2",
|
|
185
|
-
"typescript-eslint": "^8.59.2",
|
|
186
|
-
"vite": "^8.0.12",
|
|
187
|
-
"vitest": "^3.2.6"
|
|
188
|
-
}
|
|
189
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "tembro",
|
|
3
|
+
"version": "2.1.7",
|
|
4
|
+
"description": "Reusable React UI kit with dashboard-ready components, CLI registry helpers, and TypeScript support.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"react",
|
|
7
|
+
"typescript",
|
|
8
|
+
"ui",
|
|
9
|
+
"component-library",
|
|
10
|
+
"design-system",
|
|
11
|
+
"dashboard",
|
|
12
|
+
"tailwindcss",
|
|
13
|
+
"registry",
|
|
14
|
+
"cli"
|
|
15
|
+
],
|
|
16
|
+
"homepage": "https://github.com/AzamatJurayev-dev/tembro#readme",
|
|
17
|
+
"repository": {
|
|
18
|
+
"type": "git",
|
|
19
|
+
"url": "git+https://github.com/AzamatJurayev-dev/tembro.git"
|
|
20
|
+
},
|
|
21
|
+
"bugs": {
|
|
22
|
+
"url": "https://github.com/AzamatJurayev-dev/tembro/issues"
|
|
23
|
+
},
|
|
24
|
+
"license": "MIT",
|
|
25
|
+
"author": "Azamat Jurayev",
|
|
26
|
+
"type": "module",
|
|
27
|
+
"bin": {
|
|
28
|
+
"tembro": "bin/tembro.cjs"
|
|
29
|
+
},
|
|
30
|
+
"publishConfig": {
|
|
31
|
+
"access": "public"
|
|
32
|
+
},
|
|
33
|
+
"engines": {
|
|
34
|
+
"node": ">=18"
|
|
35
|
+
},
|
|
36
|
+
"workspaces": [
|
|
37
|
+
"packages/cli"
|
|
38
|
+
],
|
|
39
|
+
"main": "./dist/index.cjs",
|
|
40
|
+
"module": "./dist/index.js",
|
|
41
|
+
"types": "./dist/index.d.ts",
|
|
42
|
+
"sideEffects": [
|
|
43
|
+
"**/*.css"
|
|
44
|
+
],
|
|
45
|
+
"exports": {
|
|
46
|
+
".": {
|
|
47
|
+
"types": "./dist/index.d.ts",
|
|
48
|
+
"import": "./dist/index.js",
|
|
49
|
+
"require": "./dist/index.cjs"
|
|
50
|
+
},
|
|
51
|
+
"./ui/*": {
|
|
52
|
+
"types": "./dist/components/ui/*.d.ts",
|
|
53
|
+
"import": "./dist/components/ui/*.js",
|
|
54
|
+
"require": "./dist/components/ui/*.cjs"
|
|
55
|
+
},
|
|
56
|
+
"./actions/*": {
|
|
57
|
+
"types": "./dist/components/actions/*.d.ts",
|
|
58
|
+
"import": "./dist/components/actions/*.js",
|
|
59
|
+
"require": "./dist/components/actions/*.cjs"
|
|
60
|
+
},
|
|
61
|
+
"./patterns/*": {
|
|
62
|
+
"types": "./dist/components/patterns/*.d.ts",
|
|
63
|
+
"import": "./dist/components/patterns/*.js",
|
|
64
|
+
"require": "./dist/components/patterns/*.cjs"
|
|
65
|
+
},
|
|
66
|
+
"./display/*": {
|
|
67
|
+
"types": "./dist/components/display/*.d.ts",
|
|
68
|
+
"import": "./dist/components/display/*.js",
|
|
69
|
+
"require": "./dist/components/display/*.cjs"
|
|
70
|
+
},
|
|
71
|
+
"./form/*": {
|
|
72
|
+
"types": "./dist/components/form/*.d.ts",
|
|
73
|
+
"import": "./dist/components/form/*.js",
|
|
74
|
+
"require": "./dist/components/form/*.cjs"
|
|
75
|
+
},
|
|
76
|
+
"./layout/*": {
|
|
77
|
+
"types": "./dist/components/layout/*.d.ts",
|
|
78
|
+
"import": "./dist/components/layout/*.js",
|
|
79
|
+
"require": "./dist/components/layout/*.cjs"
|
|
80
|
+
},
|
|
81
|
+
"./inputs/*": {
|
|
82
|
+
"types": "./dist/components/inputs/*.d.ts",
|
|
83
|
+
"import": "./dist/components/inputs/*.js",
|
|
84
|
+
"require": "./dist/components/inputs/*.cjs"
|
|
85
|
+
},
|
|
86
|
+
"./charts/*": {
|
|
87
|
+
"types": "./dist/components/charts/*.d.ts",
|
|
88
|
+
"import": "./dist/components/charts/*.js",
|
|
89
|
+
"require": "./dist/components/charts/*.cjs"
|
|
90
|
+
},
|
|
91
|
+
"./data-table/*": {
|
|
92
|
+
"types": "./dist/components/data-table/*.d.ts",
|
|
93
|
+
"import": "./dist/components/data-table/*.js",
|
|
94
|
+
"require": "./dist/components/data-table/*.cjs"
|
|
95
|
+
},
|
|
96
|
+
"./showcase": {
|
|
97
|
+
"types": "./dist/showcase/index.d.ts",
|
|
98
|
+
"import": "./dist/showcase/index.js",
|
|
99
|
+
"require": "./dist/showcase/index.cjs"
|
|
100
|
+
},
|
|
101
|
+
"./showcase/*": {
|
|
102
|
+
"types": "./dist/showcase/*.d.ts",
|
|
103
|
+
"import": "./dist/showcase/*.js",
|
|
104
|
+
"require": "./dist/showcase/*.cjs"
|
|
105
|
+
},
|
|
106
|
+
"./registry.json": "./registry.json",
|
|
107
|
+
"./package.json": "./package.json"
|
|
108
|
+
},
|
|
109
|
+
"files": [
|
|
110
|
+
"bin",
|
|
111
|
+
"dist",
|
|
112
|
+
"packages/cli/dist",
|
|
113
|
+
"packages/cli/vendor",
|
|
114
|
+
"registry.json",
|
|
115
|
+
"README.md",
|
|
116
|
+
"CHANGELOG.md",
|
|
117
|
+
"LICENSE"
|
|
118
|
+
],
|
|
119
|
+
"scripts": {
|
|
120
|
+
"prepublishOnly": "npm run release:gate",
|
|
121
|
+
"clean": "node scripts/clean-dist.mjs",
|
|
122
|
+
"build": "npm run clean && vite build && tsc -p tsconfig.build.json && npm run test:build-output",
|
|
123
|
+
"build:lib": "vite build && tsc -p tsconfig.build.json",
|
|
124
|
+
"build:cli": "npm run build --workspace tembro-cli-internal",
|
|
125
|
+
"build:all": "npm run build && npm run build:cli",
|
|
126
|
+
"prepack": "node scripts/prepack-root.mjs",
|
|
127
|
+
"pack:dry-run": "npm pack --dry-run && npm pack --dry-run --workspace tembro-cli-internal",
|
|
128
|
+
"check-version-sync": "node scripts/check-version-sync.mjs",
|
|
129
|
+
"check-neutral-palette": "node scripts/check-neutral-palette.mjs",
|
|
130
|
+
"check:showcase-quality": "node scripts/check-showcase-quality.mjs",
|
|
131
|
+
"test:cli": "node scripts/test-cli.mjs",
|
|
132
|
+
"lint": "eslint .",
|
|
133
|
+
"test:types": "tsc -p tsconfig.test.json --noEmit",
|
|
134
|
+
"test:a11y": "vitest run tests/a11y/render-accessibility.test.tsx --config vitest.config.ts",
|
|
135
|
+
"test:registry": "node scripts/validate-registry.mjs",
|
|
136
|
+
"test:build-output": "node scripts/check-build-output.mjs",
|
|
137
|
+
"test:root-exports": "node scripts/check-root-exports.mjs",
|
|
138
|
+
"test:render": "vitest run --config vitest.config.ts",
|
|
139
|
+
"test:fixtures": "node scripts/fixture-smoke.mjs",
|
|
140
|
+
"test:run": "npm run test:types && npm run test:render && npm run test:a11y && npm run test:registry && npm run test:root-exports && node scripts/ensure-build-output.mjs && npm run test:build-output && npm run check:showcase-quality",
|
|
141
|
+
"release:quick": "npm run test:types && npm run test:registry && npm run test:root-exports && npx vitest run tests/render/async-select.test.tsx tests/render/form-select.test.tsx tests/render/base-primitives.test.tsx tests/render/calendar-upload.test.tsx tests/render/data-table.test.tsx --config vitest.config.ts && npm run build:all && npm run check-version-sync && npm run pack:dry-run",
|
|
142
|
+
"release:gate": "npm run lint && npm run build:all && npm run check-version-sync && npm run test:run && npm run test:cli && npm run test:fixtures && npm run pack:dry-run"
|
|
143
|
+
},
|
|
144
|
+
"peerDependencies": {
|
|
145
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
146
|
+
"react-dom": "^18.0.0 || ^19.0.0",
|
|
147
|
+
"react-hook-form": "^7.0.0"
|
|
148
|
+
},
|
|
149
|
+
"dependencies": {
|
|
150
|
+
"@base-ui/react": "^1.5.0",
|
|
151
|
+
"@tanstack/react-table": "^8.21.3",
|
|
152
|
+
"class-variance-authority": "^0.7.1",
|
|
153
|
+
"clsx": "^2.1.1",
|
|
154
|
+
"cmdk": "^1.1.1",
|
|
155
|
+
"lucide-react": "^1.17.0",
|
|
156
|
+
"tailwind-merge": "^3.6.0"
|
|
157
|
+
},
|
|
158
|
+
"devDependencies": {
|
|
159
|
+
"@babel/core": "^7.29.0",
|
|
160
|
+
"@eslint/js": "^10.0.1",
|
|
161
|
+
"@rolldown/plugin-babel": "^0.2.3",
|
|
162
|
+
"@tailwindcss/vite": "^4.3.0",
|
|
163
|
+
"@testing-library/jest-dom": "^6.9.1",
|
|
164
|
+
"@testing-library/react": "^16.3.2",
|
|
165
|
+
"@testing-library/user-event": "^14.6.1",
|
|
166
|
+
"@types/babel__core": "^7.20.5",
|
|
167
|
+
"@types/fs-extra": "^11.0.4",
|
|
168
|
+
"@types/node": "^24.13.2",
|
|
169
|
+
"@types/react": "^19.2.14",
|
|
170
|
+
"@types/react-dom": "^19.2.3",
|
|
171
|
+
"@vitejs/plugin-react": "^6.0.1",
|
|
172
|
+
"babel-plugin-react-compiler": "^1.0.0",
|
|
173
|
+
"eslint": "^10.3.0",
|
|
174
|
+
"eslint-plugin-react-hooks": "^7.1.1",
|
|
175
|
+
"eslint-plugin-react-refresh": "^0.5.2",
|
|
176
|
+
"execa": "^9.6.1",
|
|
177
|
+
"fs-extra": "^11.3.5",
|
|
178
|
+
"globals": "^17.6.0",
|
|
179
|
+
"jsdom": "^27.4.0",
|
|
180
|
+
"react": "^19.2.6",
|
|
181
|
+
"react-dom": "^19.2.6",
|
|
182
|
+
"react-hook-form": "^7.75.0",
|
|
183
|
+
"tailwindcss": "^4.3.0",
|
|
184
|
+
"typescript": "~6.0.2",
|
|
185
|
+
"typescript-eslint": "^8.59.2",
|
|
186
|
+
"vite": "^8.0.12",
|
|
187
|
+
"vitest": "^3.2.6"
|
|
188
|
+
}
|
|
189
|
+
}
|