@multiplatform.one/components 6.4.3 → 6.7.0
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/cjs/Avatar/index.cjs +4 -0
- package/dist/cjs/Avatar/index.native.js +4 -0
- package/dist/cjs/Avatar/index.native.js.map +1 -1
- package/dist/cjs/Badge/index.cjs +3 -0
- package/dist/cjs/Badge/index.native.js +3 -0
- package/dist/cjs/Badge/index.native.js.map +1 -1
- package/dist/cjs/Carousel/index.cjs +28 -15
- package/dist/cjs/Carousel/index.native.js +34 -17
- package/dist/cjs/Carousel/index.native.js.map +1 -1
- package/dist/cjs/DotIndicator/index.cjs +92 -35
- package/dist/cjs/DotIndicator/index.native.js +93 -35
- package/dist/cjs/DotIndicator/index.native.js.map +1 -1
- package/dist/cjs/Pagination.cjs +112 -167
- package/dist/cjs/Pagination.native.js +125 -180
- package/dist/cjs/Pagination.native.js.map +1 -1
- package/dist/cjs/ProgressSteps/index.cjs +2 -1
- package/dist/cjs/ProgressSteps/index.native.js +2 -1
- package/dist/cjs/ProgressSteps/index.native.js.map +1 -1
- package/dist/cjs/charts/PieChart.cjs +1 -1
- package/dist/cjs/charts/PieChart.native.js +7 -2
- package/dist/cjs/charts/PieChart.native.js.map +1 -1
- package/dist/cjs/feedback/ConfirmDialog.cjs +1 -3
- package/dist/cjs/feedback/ConfirmDialog.native.js +1 -3
- package/dist/cjs/feedback/ConfirmDialog.native.js.map +1 -1
- package/dist/cjs/index.cjs +1 -0
- package/dist/cjs/index.native.js +1 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/layouts/ViewSwitcher.cjs +4 -5
- package/dist/cjs/layouts/ViewSwitcher.native.js +13 -7
- package/dist/cjs/layouts/ViewSwitcher.native.js.map +1 -1
- package/dist/cjs/layouts/attachments.cjs +4 -8
- package/dist/cjs/layouts/attachments.native.js +5 -8
- package/dist/cjs/layouts/attachments.native.js.map +1 -1
- package/dist/cjs/layouts/page.cjs +1 -0
- package/dist/cjs/layouts/page.native.js +4 -1
- package/dist/cjs/layouts/page.native.js.map +1 -1
- package/dist/cjs/layouts/tags.cjs +1 -0
- package/dist/cjs/layouts/tags.native.js +2 -0
- package/dist/cjs/layouts/tags.native.js.map +1 -1
- package/dist/cjs/layouts/timeline.cjs +0 -6
- package/dist/cjs/layouts/timeline.native.js +0 -6
- package/dist/cjs/layouts/timeline.native.js.map +1 -1
- package/dist/cjs/surfaces.cjs +21 -0
- package/dist/cjs/surfaces.native.js +22 -0
- package/dist/cjs/surfaces.native.js.map +1 -1
- package/dist/cjs/views/Calendar.cjs +2 -0
- package/dist/cjs/views/Calendar.native.js +8 -2
- package/dist/cjs/views/Calendar.native.js.map +1 -1
- package/dist/cjs/views/Kanban.cjs +22 -13
- package/dist/cjs/views/Kanban.native.js +1 -0
- package/dist/cjs/views/Kanban.native.js.map +1 -1
- package/dist/cjs/views/ReportBuilder.cjs +12 -2
- package/dist/cjs/views/ReportBuilder.native.js +12 -2
- package/dist/cjs/views/ReportBuilder.native.js.map +1 -1
- package/dist/esm/Avatar/index.mjs +5 -1
- package/dist/esm/Avatar/index.mjs.map +1 -1
- package/dist/esm/Avatar/index.native.js +5 -1
- package/dist/esm/Avatar/index.native.js.map +1 -1
- package/dist/esm/Badge/index.mjs +4 -1
- package/dist/esm/Badge/index.mjs.map +1 -1
- package/dist/esm/Badge/index.native.js +4 -1
- package/dist/esm/Badge/index.native.js.map +1 -1
- package/dist/esm/Carousel/index.mjs +28 -15
- package/dist/esm/Carousel/index.mjs.map +1 -1
- package/dist/esm/Carousel/index.native.js +34 -17
- package/dist/esm/Carousel/index.native.js.map +1 -1
- package/dist/esm/DotIndicator/index.mjs +93 -36
- package/dist/esm/DotIndicator/index.mjs.map +1 -1
- package/dist/esm/DotIndicator/index.native.js +94 -36
- package/dist/esm/DotIndicator/index.native.js.map +1 -1
- package/dist/esm/Pagination.mjs +113 -168
- package/dist/esm/Pagination.mjs.map +1 -1
- package/dist/esm/Pagination.native.js +126 -181
- package/dist/esm/Pagination.native.js.map +1 -1
- package/dist/esm/ProgressSteps/index.mjs +2 -1
- package/dist/esm/ProgressSteps/index.mjs.map +1 -1
- package/dist/esm/ProgressSteps/index.native.js +2 -1
- package/dist/esm/ProgressSteps/index.native.js.map +1 -1
- package/dist/esm/charts/PieChart.mjs +1 -1
- package/dist/esm/charts/PieChart.mjs.map +1 -1
- package/dist/esm/charts/PieChart.native.js +7 -2
- package/dist/esm/charts/PieChart.native.js.map +1 -1
- package/dist/esm/feedback/ConfirmDialog.mjs +2 -4
- package/dist/esm/feedback/ConfirmDialog.mjs.map +1 -1
- package/dist/esm/feedback/ConfirmDialog.native.js +2 -4
- package/dist/esm/feedback/ConfirmDialog.native.js.map +1 -1
- package/dist/esm/index.mjs +2 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/layouts/ViewSwitcher.mjs +4 -5
- package/dist/esm/layouts/ViewSwitcher.mjs.map +1 -1
- package/dist/esm/layouts/ViewSwitcher.native.js +13 -7
- package/dist/esm/layouts/ViewSwitcher.native.js.map +1 -1
- package/dist/esm/layouts/attachments.mjs +4 -8
- package/dist/esm/layouts/attachments.mjs.map +1 -1
- package/dist/esm/layouts/attachments.native.js +5 -8
- package/dist/esm/layouts/attachments.native.js.map +1 -1
- package/dist/esm/layouts/page.mjs +2 -1
- package/dist/esm/layouts/page.mjs.map +1 -1
- package/dist/esm/layouts/page.native.js +5 -2
- package/dist/esm/layouts/page.native.js.map +1 -1
- package/dist/esm/layouts/tags.mjs +1 -0
- package/dist/esm/layouts/tags.mjs.map +1 -1
- package/dist/esm/layouts/tags.native.js +2 -0
- package/dist/esm/layouts/tags.native.js.map +1 -1
- package/dist/esm/layouts/timeline.mjs +0 -6
- package/dist/esm/layouts/timeline.mjs.map +1 -1
- package/dist/esm/layouts/timeline.native.js +0 -6
- package/dist/esm/layouts/timeline.native.js.map +1 -1
- package/dist/esm/surfaces.mjs +21 -1
- package/dist/esm/surfaces.mjs.map +1 -1
- package/dist/esm/surfaces.native.js +22 -1
- package/dist/esm/surfaces.native.js.map +1 -1
- package/dist/esm/views/Calendar.mjs +3 -1
- package/dist/esm/views/Calendar.mjs.map +1 -1
- package/dist/esm/views/Calendar.native.js +9 -3
- package/dist/esm/views/Calendar.native.js.map +1 -1
- package/dist/esm/views/Kanban.mjs +23 -14
- package/dist/esm/views/Kanban.mjs.map +1 -1
- package/dist/esm/views/Kanban.native.js +2 -1
- package/dist/esm/views/Kanban.native.js.map +1 -1
- package/dist/esm/views/ReportBuilder.mjs +13 -3
- package/dist/esm/views/ReportBuilder.mjs.map +1 -1
- package/dist/esm/views/ReportBuilder.native.js +13 -3
- package/dist/esm/views/ReportBuilder.native.js.map +1 -1
- package/dist/jsx/Avatar/index.mjs +5 -1
- package/dist/jsx/Avatar/index.mjs.map +1 -1
- package/dist/jsx/Avatar/index.native.js +4 -0
- package/dist/jsx/Avatar/index.native.js.map +1 -1
- package/dist/jsx/Badge/index.mjs +4 -1
- package/dist/jsx/Badge/index.mjs.map +1 -1
- package/dist/jsx/Badge/index.native.js +3 -0
- package/dist/jsx/Badge/index.native.js.map +1 -1
- package/dist/jsx/Carousel/index.mjs +28 -15
- package/dist/jsx/Carousel/index.mjs.map +1 -1
- package/dist/jsx/Carousel/index.native.js +34 -17
- package/dist/jsx/Carousel/index.native.js.map +1 -1
- package/dist/jsx/DotIndicator/index.mjs +93 -36
- package/dist/jsx/DotIndicator/index.mjs.map +1 -1
- package/dist/jsx/DotIndicator/index.native.js +93 -35
- package/dist/jsx/DotIndicator/index.native.js.map +1 -1
- package/dist/jsx/Pagination.mjs +113 -168
- package/dist/jsx/Pagination.mjs.map +1 -1
- package/dist/jsx/Pagination.native.js +125 -180
- package/dist/jsx/Pagination.native.js.map +1 -1
- package/dist/jsx/ProgressSteps/index.mjs +2 -1
- package/dist/jsx/ProgressSteps/index.mjs.map +1 -1
- package/dist/jsx/ProgressSteps/index.native.js +2 -1
- package/dist/jsx/ProgressSteps/index.native.js.map +1 -1
- package/dist/jsx/charts/PieChart.mjs +1 -1
- package/dist/jsx/charts/PieChart.mjs.map +1 -1
- package/dist/jsx/charts/PieChart.native.js +7 -2
- package/dist/jsx/charts/PieChart.native.js.map +1 -1
- package/dist/jsx/feedback/ConfirmDialog.mjs +2 -4
- package/dist/jsx/feedback/ConfirmDialog.mjs.map +1 -1
- package/dist/jsx/feedback/ConfirmDialog.native.js +1 -3
- package/dist/jsx/feedback/ConfirmDialog.native.js.map +1 -1
- package/dist/jsx/index.js +2 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +2 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +1 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/layouts/ViewSwitcher.mjs +4 -5
- package/dist/jsx/layouts/ViewSwitcher.mjs.map +1 -1
- package/dist/jsx/layouts/ViewSwitcher.native.js +13 -7
- package/dist/jsx/layouts/ViewSwitcher.native.js.map +1 -1
- package/dist/jsx/layouts/attachments.mjs +4 -8
- package/dist/jsx/layouts/attachments.mjs.map +1 -1
- package/dist/jsx/layouts/attachments.native.js +5 -8
- package/dist/jsx/layouts/attachments.native.js.map +1 -1
- package/dist/jsx/layouts/page.mjs +2 -1
- package/dist/jsx/layouts/page.mjs.map +1 -1
- package/dist/jsx/layouts/page.native.js +4 -1
- package/dist/jsx/layouts/page.native.js.map +1 -1
- package/dist/jsx/layouts/tags.mjs +1 -0
- package/dist/jsx/layouts/tags.mjs.map +1 -1
- package/dist/jsx/layouts/tags.native.js +2 -0
- package/dist/jsx/layouts/tags.native.js.map +1 -1
- package/dist/jsx/layouts/timeline.mjs +0 -6
- package/dist/jsx/layouts/timeline.mjs.map +1 -1
- package/dist/jsx/layouts/timeline.native.js +0 -6
- package/dist/jsx/layouts/timeline.native.js.map +1 -1
- package/dist/jsx/surfaces.mjs +21 -1
- package/dist/jsx/surfaces.mjs.map +1 -1
- package/dist/jsx/surfaces.native.js +22 -0
- package/dist/jsx/surfaces.native.js.map +1 -1
- package/dist/jsx/views/Calendar.mjs +3 -1
- package/dist/jsx/views/Calendar.mjs.map +1 -1
- package/dist/jsx/views/Calendar.native.js +8 -2
- package/dist/jsx/views/Calendar.native.js.map +1 -1
- package/dist/jsx/views/Kanban.mjs +23 -14
- package/dist/jsx/views/Kanban.mjs.map +1 -1
- package/dist/jsx/views/Kanban.native.js +1 -0
- package/dist/jsx/views/Kanban.native.js.map +1 -1
- package/dist/jsx/views/ReportBuilder.mjs +13 -3
- package/dist/jsx/views/ReportBuilder.mjs.map +1 -1
- package/dist/jsx/views/ReportBuilder.native.js +12 -2
- package/dist/jsx/views/ReportBuilder.native.js.map +1 -1
- package/package.json +10 -10
- package/src/Accordion/Accordion.stories.tsx +7 -2
- package/src/Avatar/Avatar.spec.tsx +31 -0
- package/src/Avatar/index.tsx +19 -1
- package/src/Badge/Badge.stories.tsx +3 -1
- package/src/Badge/index.tsx +4 -1
- package/src/Carousel/Carousel.spec.tsx +271 -0
- package/src/Carousel/Carousel.stories.tsx +35 -0
- package/src/Carousel/index.tsx +45 -20
- package/src/DialogContent.stories.tsx +2 -2
- package/src/DotIndicator/dotIndicator.spec.tsx +43 -1
- package/src/DotIndicator/index.tsx +169 -35
- package/src/Pagination.api.spec.tsx +345 -0
- package/src/Pagination.tsx +138 -176
- package/src/Panel.stories.tsx +4 -4
- package/src/ProgressSteps/ProgressSteps.spec.tsx +40 -1
- package/src/ProgressSteps/ProgressSteps.stories.tsx +3 -1
- package/src/ProgressSteps/index.tsx +6 -1
- package/src/charts/PieChart.tsx +4 -1
- package/src/feedback/ConfirmDialog.tsx +2 -2
- package/src/index.ts +1 -0
- package/src/layouts/PageHeader.stories.tsx +21 -3
- package/src/layouts/ScreenToolbar.stories.tsx +12 -5
- package/src/layouts/ViewSwitcher.tsx +25 -6
- package/src/layouts/attachments.tsx +4 -1
- package/src/layouts/layouts.spec.tsx +77 -1
- package/src/layouts/page.tsx +5 -1
- package/src/layouts/pageTitleScale.spec.tsx +70 -0
- package/src/layouts/tags.tsx +2 -0
- package/src/layouts/timeline-radius.spec.tsx +21 -0
- package/src/layouts/timeline.tsx +7 -18
- package/src/shared/t.spec.ts +47 -0
- package/src/surfaces.tsx +33 -0
- package/src/views/Calendar.stories.tsx +4 -2
- package/src/views/Calendar.tsx +6 -1
- package/src/views/Gantt.stories.tsx +2 -2
- package/src/views/Kanban.native.tsx +8 -2
- package/src/views/Kanban.stories.tsx +3 -1
- package/src/views/Kanban.tsx +42 -13
- package/src/views/ReportBuilder.tsx +15 -2
- package/types/Avatar/index.d.ts.map +1 -1
- package/types/Badge/index.d.ts.map +1 -1
- package/types/Carousel/index.d.ts.map +1 -1
- package/types/DotIndicator/index.d.ts +44 -3
- package/types/DotIndicator/index.d.ts.map +1 -1
- package/types/Pagination.d.ts +6 -1
- package/types/Pagination.d.ts.map +1 -1
- package/types/ProgressSteps/index.d.ts.map +1 -1
- package/types/charts/PieChart.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/layouts/ViewSwitcher.d.ts.map +1 -1
- package/types/layouts/attachments.d.ts.map +1 -1
- package/types/layouts/page.d.ts.map +1 -1
- package/types/layouts/tags.d.ts.map +1 -1
- package/types/layouts/timeline.d.ts.map +1 -1
- package/types/surfaces.d.ts +17 -0
- package/types/surfaces.d.ts.map +1 -1
- package/types/views/Calendar.d.ts.map +1 -1
- package/types/views/Kanban.d.ts +13 -1
- package/types/views/Kanban.d.ts.map +1 -1
- package/types/views/ReportBuilder.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ReportBuilder_exports","ReportBuilder","module","exports","import_jsx_runtime","require","import_BarChart","import_componentColors","import_AsyncBoundary","import_page","import_theme","import_forms","import_react","import_react_i18next","import_tamagui","numericFieldTypes","Set","reportTextSizeMap","$3","$4","$5","aggregationLabels","count","sum","avg","min","max","isNumericFieldType","fieldtype","has","formatCellValue","formatCurrency","formatNumber","maximumFractionDigits","formatPercent","precision","Number","String","SimpleBarChart","param","data","height","knobProps","useResolvedKnobs","length","jsx","Card","size","sizeToken","backgroundColor","componentColors","surface","background","padding","overflow","children","BarChart","columns","groupBy","groupByProp","onGroupByChange","onColumnsChange","onExport","onRowPress","showChart","isLoading","error","onRetry","hasActiveFilters","stackProps","_reportTextSizeMap_knobProps_sizeToken","t","useTranslation","reportFontSize","hasError","resolveAsyncStatus","isInitialLoading","enabledColumnSet","setEnabledColumnSet","useState","filter","c","enabled","map","fieldname","enabledColumns","useMemo","_numericColumns","_toggleColumn","useCallback","prev","next","delete","add","Array","internalGroupBy","setInternalGroupBy","_handleGroupByChange","config","collapsedGroups","setCollapsedGroups","groupedData","groups","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","row","_row_groupBy_field","field","rows","aggregationValue","push","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","group","_step1","aggregation","aggregationField","reduce","acc","row2","field1","field2","Math","field3","_iterator1","values","chartData","entries","param2","label","chartVisible","setChartVisible","toggleGroup","groupKey","handleExport","exportData","filtered","col","renderHeaderRow","renderHeaderRow2","XStack","borderBottomWidth","borderBottomColor","Text","flex","fontWeight","fontSize","color","paddingHorizontal","numberOfLines","renderDataRow","renderDataRow2","index","isGrouped","arguments","_row_name","divider","hoverStyle","paddingInlineStart","panelPadding","cursor","onPress"],"sources":["../../../src/views/ReportBuilder.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ReportBuilder_exports","ReportBuilder","module","exports","import_jsx_runtime","require","import_BarChart","import_componentColors","import_AsyncBoundary","import_page","import_theme","import_forms","import_react","import_react_i18next","import_tamagui","numericFieldTypes","Set","reportTextSizeMap","$3","$4","$5","aggregationLabels","count","sum","avg","min","max","isNumericFieldType","fieldtype","has","formatCellValue","formatCurrency","formatNumber","maximumFractionDigits","formatPercent","precision","Number","formatAbsoluteDate","formatAbsoluteDateTime","formatTimeOfDay","String","SimpleBarChart","param","data","height","knobProps","useResolvedKnobs","length","jsx","Card","size","sizeToken","backgroundColor","componentColors","surface","background","padding","overflow","children","BarChart","columns","groupBy","groupByProp","onGroupByChange","onColumnsChange","onExport","onRowPress","showChart","isLoading","error","onRetry","hasActiveFilters","stackProps","_reportTextSizeMap_knobProps_sizeToken","t","useTranslation","reportFontSize","hasError","resolveAsyncStatus","isInitialLoading","enabledColumnSet","setEnabledColumnSet","useState","filter","c","enabled","map","fieldname","enabledColumns","useMemo","_numericColumns","_toggleColumn","useCallback","prev","next","delete","add","Array","internalGroupBy","setInternalGroupBy","_handleGroupByChange","config","collapsedGroups","setCollapsedGroups","groupedData","groups","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","row","_row_groupBy_field","field","rows","aggregationValue","push","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","group","_step1","aggregation","aggregationField","reduce","acc","row2","field1","field2","Math","field3","_iterator1","values","chartData","entries","param2","label","chartVisible","setChartVisible","toggleGroup","groupKey","handleExport","exportData","filtered","col","renderHeaderRow","renderHeaderRow2","XStack","borderBottomWidth","borderBottomColor","Text","flex","fontWeight","fontSize","color","paddingHorizontal","numberOfLines","renderDataRow","renderDataRow2","index","isGrouped","arguments","_row_name","divider","hoverStyle","paddingInlineStart","panelPadding","cursor","onPress"],"sources":["../../../src/views/ReportBuilder.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/components",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.7.0",
|
|
4
4
|
"description": "multiplatform.one ui components",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"components",
|
|
@@ -74,11 +74,11 @@
|
|
|
74
74
|
"link": "^2.1.2",
|
|
75
75
|
"shiki": "^4.0.2",
|
|
76
76
|
"tamagui": "2.0.0-rc.41",
|
|
77
|
-
"@multiplatform.one/
|
|
78
|
-
"@multiplatform.one/
|
|
79
|
-
"@multiplatform.one/
|
|
80
|
-
"@multiplatform.one/
|
|
81
|
-
"@multiplatform.one/
|
|
77
|
+
"@multiplatform.one/platform": "6.7.0",
|
|
78
|
+
"@multiplatform.one/router": "6.7.0",
|
|
79
|
+
"@multiplatform.one/theme": "6.7.0",
|
|
80
|
+
"@multiplatform.one/i18n": "6.7.0",
|
|
81
|
+
"@multiplatform.one/forms": "6.7.0"
|
|
82
82
|
},
|
|
83
83
|
"devDependencies": {
|
|
84
84
|
"@tamagui/build": "2.0.0-rc.41",
|
|
@@ -96,9 +96,9 @@
|
|
|
96
96
|
"react-native-svg": "15.15.4",
|
|
97
97
|
"react-native-web": "^0.21.2",
|
|
98
98
|
"vitest": "^4.1.5",
|
|
99
|
-
"@multiplatform.one/config": "6.
|
|
100
|
-
"@multiplatform.one/
|
|
101
|
-
"@multiplatform.one/
|
|
99
|
+
"@multiplatform.one/config": "6.7.0",
|
|
100
|
+
"@multiplatform.one/storybook": "6.7.0",
|
|
101
|
+
"@multiplatform.one/test-utils": "6.7.0"
|
|
102
102
|
},
|
|
103
103
|
"peerDependencies": {
|
|
104
104
|
"@mdx-js/mdx": "^3.1.1",
|
|
@@ -180,6 +180,6 @@
|
|
|
180
180
|
"scripts": {
|
|
181
181
|
"build": "rm -rf dist types 2>/dev/null && tamagui-build --ts-project ./tsconfig.build.json --exclude '\\.spec\\.|\\.test\\.|\\.stories\\.'",
|
|
182
182
|
"test": "vitest run --coverage --coverage.provider=v8 --coverage.reporter=text --coverage.reporter=lcov --coverage.reporter=html",
|
|
183
|
-
"typecheck": "
|
|
183
|
+
"typecheck": "tsgo --noEmit"
|
|
184
184
|
}
|
|
185
185
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { action } from "@multiplatform.one/storybook";
|
|
2
|
-
|
|
2
|
+
// Catalog Button (LC-56 story honesty): stories compose catalog controls, never raw tamagui ones.
|
|
3
|
+
import { Button, Checkbox, FormGrid, Input, Select, TextArea } from "@multiplatform.one/forms";
|
|
3
4
|
import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
|
|
4
5
|
import { useState } from "react";
|
|
5
|
-
import { Text, XStack, YStack
|
|
6
|
+
import { Text, XStack, YStack } from "tamagui";
|
|
6
7
|
import { Accordion, type AccordionProps } from "./index";
|
|
7
8
|
|
|
8
9
|
const meta: Meta<typeof Accordion> = {
|
|
@@ -130,10 +131,14 @@ export const WithFormContent: Story = {
|
|
|
130
131
|
name="country"
|
|
131
132
|
label="Country"
|
|
132
133
|
placeholder="Select country"
|
|
134
|
+
// >5 options: shorter single-select lists trip `select-too-few-options` (DG-CTRL-01).
|
|
133
135
|
options={[
|
|
134
136
|
{ label: "United States", value: "us" },
|
|
135
137
|
{ label: "India", value: "in" },
|
|
136
138
|
{ label: "Germany", value: "de" },
|
|
139
|
+
{ label: "Japan", value: "jp" },
|
|
140
|
+
{ label: "Brazil", value: "br" },
|
|
141
|
+
{ label: "Australia", value: "au" },
|
|
137
142
|
]}
|
|
138
143
|
/>
|
|
139
144
|
</FormGrid>
|
|
@@ -43,3 +43,34 @@ describe("Avatar", () => {
|
|
|
43
43
|
expect(container.textContent).toContain("OK");
|
|
44
44
|
});
|
|
45
45
|
});
|
|
46
|
+
|
|
47
|
+
// D-09 / LC-60: Avatar is the spec's declared R-IDENTITY part. Knob immunity
|
|
48
|
+
// is only legitimate when it is declared, so the declaration is part of the
|
|
49
|
+
// contract — the `radius:none` sweep reads it off the DOM and matches it
|
|
50
|
+
// against the registry generated from the spec's radius-class table.
|
|
51
|
+
describe("Avatar identity-shape declaration (LC-60)", () => {
|
|
52
|
+
const declaration = (container: HTMLElement) => container.querySelector("[data-radius-class]");
|
|
53
|
+
|
|
54
|
+
it("declares R-IDENTITY / Avatar while it is a circle", () => {
|
|
55
|
+
const { container } = renderWithProviders(<Avatar name="Ada Lovelace" />);
|
|
56
|
+
const el = declaration(container);
|
|
57
|
+
expect(el?.getAttribute("data-radius-class")).toBe("R-IDENTITY");
|
|
58
|
+
expect(el?.getAttribute("data-radius-part")).toBe("Avatar");
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
it("declares on the compound branch too", () => {
|
|
62
|
+
const { container } = renderWithProviders(
|
|
63
|
+
<Avatar size="$3">
|
|
64
|
+
<Avatar.Fallback>
|
|
65
|
+
<span>OK</span>
|
|
66
|
+
</Avatar.Fallback>
|
|
67
|
+
</Avatar>,
|
|
68
|
+
);
|
|
69
|
+
expect(declaration(container)?.getAttribute("data-radius-class")).toBe("R-IDENTITY");
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it("drops the declaration when a consumer ejects to circular={false}", () => {
|
|
73
|
+
const { container } = renderWithProviders(<Avatar name="Ada Lovelace" circular={false} />);
|
|
74
|
+
expect(declaration(container)).toBeNull();
|
|
75
|
+
});
|
|
76
|
+
});
|
package/src/Avatar/index.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
-
import { useReadableTextOn, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
2
|
+
import { radiusClassProps, useReadableTextOn, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
3
3
|
import type { GetProps, SizeTokens } from "tamagui";
|
|
4
4
|
import { Avatar as TamaguiAvatar, SizableText, withStaticProperties } from "tamagui";
|
|
5
5
|
import { componentColors } from "../componentColors";
|
|
@@ -43,6 +43,21 @@ const avatarSizeMap: Record<string, SizeTokens> = {
|
|
|
43
43
|
$5: "$4",
|
|
44
44
|
};
|
|
45
45
|
|
|
46
|
+
// ── Identity-shape declaration (D-09 / LC-60) ─────────────────
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Avatar is declared R-IDENTITY in the spec's radius-class table: a circular
|
|
50
|
+
* avatar is a recognized object class, not a styled box, so it keeps its
|
|
51
|
+
* circle at `borderRadius:none`. Knob immunity is only legitimate when it is
|
|
52
|
+
* DECLARED — the `radius:none` sweep generates its allowlist from that table
|
|
53
|
+
* and reads this declaration off the DOM, so an undeclared knob-immune shape
|
|
54
|
+
* stays an LC-18 KNOB-TOTALITY defect.
|
|
55
|
+
*
|
|
56
|
+
* The declaration rides `circular`: a consumer that ejects to `circular=false`
|
|
57
|
+
* has opted the part back onto the radius channel and must not be exempt.
|
|
58
|
+
*/
|
|
59
|
+
const identityShapeProps = radiusClassProps("R-IDENTITY", "Avatar");
|
|
60
|
+
|
|
46
61
|
// ── Size → font mapping ───────────────────────────────────────
|
|
47
62
|
|
|
48
63
|
function initialsFontSize(size: AvatarSize | undefined): SizeTokens {
|
|
@@ -94,12 +109,14 @@ function AvatarRoot({
|
|
|
94
109
|
// dark; paper/ink-on-fill lands the readable anchor (dark ink → 4.02+).
|
|
95
110
|
const onAccentInitials = useReadableTextOn("$accentBackground");
|
|
96
111
|
const size = sizeProp ?? avatarSizeMap[knobProps.sizeToken] ?? "$3";
|
|
112
|
+
const identityProps = circular ? identityShapeProps : null;
|
|
97
113
|
if (children != null) {
|
|
98
114
|
return (
|
|
99
115
|
<TamaguiAvatar
|
|
100
116
|
circular={circular}
|
|
101
117
|
size={size}
|
|
102
118
|
backgroundColor={backgroundColor ?? fallbackBackgroundColor}
|
|
119
|
+
{...identityProps}
|
|
103
120
|
{...props}
|
|
104
121
|
>
|
|
105
122
|
{children}
|
|
@@ -118,6 +135,7 @@ function AvatarRoot({
|
|
|
118
135
|
size={size}
|
|
119
136
|
backgroundColor={backgroundColor ?? fallbackBackgroundColor}
|
|
120
137
|
aria-label={label}
|
|
138
|
+
{...identityProps}
|
|
121
139
|
{...props}
|
|
122
140
|
>
|
|
123
141
|
{src ? <TamaguiAvatar.Image src={src} alt={label} /> : null}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
|
|
2
2
|
import { BellIcon, EnvelopeIcon, ShoppingCartIcon, UserIcon } from "@phosphor-icons/react";
|
|
3
|
-
|
|
3
|
+
// Catalog Button (LC-56 story honesty): stories compose catalog controls, never raw tamagui ones.
|
|
4
|
+
import { Button } from "@multiplatform.one/forms";
|
|
5
|
+
import { XStack, YStack, Text, View } from "tamagui";
|
|
4
6
|
import { Badge, type BadgeColor, type BadgePosition } from "./index";
|
|
5
7
|
|
|
6
8
|
const meta: Meta<typeof Badge> = {
|
package/src/Badge/index.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
-
import { useResolvedKnobs } from "@multiplatform.one/theme";
|
|
2
|
+
import { radiusClassProps, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
3
3
|
import type { ColorTokens, GetProps } from "tamagui";
|
|
4
4
|
import { Text, View, styled } from "tamagui";
|
|
5
5
|
import { componentColors } from "../componentColors";
|
|
@@ -76,6 +76,9 @@ const BadgeWrapper = styled(View, {
|
|
|
76
76
|
|
|
77
77
|
const BadgeIndicator = styled(View, {
|
|
78
78
|
name: "BadgeIndicator",
|
|
79
|
+
// R-PILL (D-09 / LC-60): the count/dot indicator is a pill at every radius
|
|
80
|
+
// value; the knob moves its size and padding, never its shape.
|
|
81
|
+
...radiusClassProps("R-PILL", "Badge count/dot"),
|
|
79
82
|
position: "absolute",
|
|
80
83
|
alignItems: "center",
|
|
81
84
|
justifyContent: "center",
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Carousel geometry contract specs (LC-62 SLIDE-VIEWPORT-WIDTH): slides size
|
|
3
|
+
* from the MEASURED scroll viewport — never percent-of-track — and every
|
|
4
|
+
* paging offset is index × (slideWidth + gap), so slide N is actually
|
|
5
|
+
* reachable at the offset the dots promise. Also locks the re-anchor on
|
|
6
|
+
* re-measure (resize) and the scroll → active-dot mapping at the same pitch.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { act, fireEvent } from "@testing-library/react";
|
|
10
|
+
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
11
|
+
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
12
|
+
import { Text, View, getTokens } from "tamagui";
|
|
13
|
+
import { Carousel } from "./index";
|
|
14
|
+
|
|
15
|
+
// ── happy-dom layout plumbing ─────────────────────────────────
|
|
16
|
+
// react-native-web's onLayout rides a module-level ResizeObserver singleton
|
|
17
|
+
// captured on first use, so the stub must exist before the first render and
|
|
18
|
+
// stay installed for the whole file. `observe` fires immediately (mount
|
|
19
|
+
// measure); `fireResize` re-fires for every observed node (resize). The
|
|
20
|
+
// measure callback itself reads offsetWidth via a setTimeout(0), hence the
|
|
21
|
+
// prototype getter and the flushMeasure() helper.
|
|
22
|
+
|
|
23
|
+
let layoutWidth = 400;
|
|
24
|
+
|
|
25
|
+
type ObserverRecord = { cb: ResizeObserverCallback; targets: Set<Element> };
|
|
26
|
+
const observerRecords: ObserverRecord[] = [];
|
|
27
|
+
|
|
28
|
+
function makeEntry(target: Element): ResizeObserverEntry {
|
|
29
|
+
return {
|
|
30
|
+
target,
|
|
31
|
+
contentRect: { width: layoutWidth, height: 240 } as DOMRectReadOnly,
|
|
32
|
+
borderBoxSize: [],
|
|
33
|
+
contentBoxSize: [],
|
|
34
|
+
devicePixelContentBoxSize: [],
|
|
35
|
+
} as unknown as ResizeObserverEntry;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
vi.stubGlobal(
|
|
39
|
+
"ResizeObserver",
|
|
40
|
+
class {
|
|
41
|
+
record: ObserverRecord;
|
|
42
|
+
constructor(cb: ResizeObserverCallback) {
|
|
43
|
+
this.record = { cb, targets: new Set() };
|
|
44
|
+
observerRecords.push(this.record);
|
|
45
|
+
}
|
|
46
|
+
observe(target: Element) {
|
|
47
|
+
this.record.targets.add(target);
|
|
48
|
+
this.record.cb([makeEntry(target)], this as unknown as ResizeObserver);
|
|
49
|
+
}
|
|
50
|
+
unobserve(target: Element) {
|
|
51
|
+
this.record.targets.delete(target);
|
|
52
|
+
}
|
|
53
|
+
disconnect() {
|
|
54
|
+
this.record.targets.clear();
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
|
|
60
|
+
configurable: true,
|
|
61
|
+
get() {
|
|
62
|
+
return layoutWidth;
|
|
63
|
+
},
|
|
64
|
+
});
|
|
65
|
+
Object.defineProperty(HTMLElement.prototype, "offsetHeight", {
|
|
66
|
+
configurable: true,
|
|
67
|
+
get() {
|
|
68
|
+
return 240;
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
// react-native-web's scrollTo lands on the DOM node's scroll(); capture it.
|
|
73
|
+
const scrollCalls: Array<{ left?: number; top?: number; behavior?: string }> = [];
|
|
74
|
+
Object.defineProperty(HTMLElement.prototype, "scroll", {
|
|
75
|
+
configurable: true,
|
|
76
|
+
writable: true,
|
|
77
|
+
value(options: { left?: number; top?: number; behavior?: string }) {
|
|
78
|
+
scrollCalls.push(options);
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
/** Flush UIManager.measure's setTimeout(0) so onLayout commits. */
|
|
83
|
+
async function flushMeasure() {
|
|
84
|
+
await act(async () => {
|
|
85
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
function fireResize(width: number) {
|
|
90
|
+
layoutWidth = width;
|
|
91
|
+
for (const record of observerRecords) {
|
|
92
|
+
for (const target of record.targets) {
|
|
93
|
+
record.cb([makeEntry(target)], undefined as unknown as ResizeObserver);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function slides(container: HTMLElement) {
|
|
99
|
+
return container.querySelectorAll("[data-carousel-slide]");
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Tamagui materializes dynamic numeric widths as atomic CSS classes, not
|
|
104
|
+
* inline style — resolve whether any class on the node carries the width, in
|
|
105
|
+
* inline style, <style> text, CSSOM rules, or adopted sheets.
|
|
106
|
+
*/
|
|
107
|
+
function elementCarriesWidth(node: HTMLElement, widthPx: number): boolean {
|
|
108
|
+
const needle = `${widthPx}px`;
|
|
109
|
+
const inline = node.getAttribute("style") ?? "";
|
|
110
|
+
if (inline.includes(needle)) return true;
|
|
111
|
+
const ruleTexts: string[] = [];
|
|
112
|
+
for (const styleTag of Array.from(document.querySelectorAll("style"))) {
|
|
113
|
+
ruleTexts.push(styleTag.textContent ?? "");
|
|
114
|
+
}
|
|
115
|
+
const sheets = [
|
|
116
|
+
...Array.from(document.styleSheets),
|
|
117
|
+
...Array.from(
|
|
118
|
+
(document as unknown as { adoptedStyleSheets?: CSSStyleSheet[] }).adoptedStyleSheets ?? [],
|
|
119
|
+
),
|
|
120
|
+
];
|
|
121
|
+
for (const sheet of sheets) {
|
|
122
|
+
try {
|
|
123
|
+
for (const rule of Array.from((sheet as CSSStyleSheet).cssRules)) {
|
|
124
|
+
ruleTexts.push(rule.cssText);
|
|
125
|
+
}
|
|
126
|
+
} catch {
|
|
127
|
+
// Unreadable sheet — nothing Tamagui inserts is.
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return Array.from(node.classList).some((className) =>
|
|
131
|
+
ruleTexts.some((text) => text.includes(`.${className}`) && text.includes(needle)),
|
|
132
|
+
);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
function dots(container: HTMLElement) {
|
|
136
|
+
return container.querySelectorAll("[role='button'][aria-label^='Go to item']");
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
beforeEach(() => {
|
|
140
|
+
layoutWidth = 400;
|
|
141
|
+
scrollCalls.length = 0;
|
|
142
|
+
});
|
|
143
|
+
|
|
144
|
+
const Slide = ({ index }: { index: number }) => (
|
|
145
|
+
<View height={100}>
|
|
146
|
+
<Text>Slide {index + 1}</Text>
|
|
147
|
+
</View>
|
|
148
|
+
);
|
|
149
|
+
|
|
150
|
+
describe("Carousel geometry (LC-62)", () => {
|
|
151
|
+
it("sizes each slide from the measured viewport, never percent-of-track", async () => {
|
|
152
|
+
const { container } = renderWithProviders(
|
|
153
|
+
<Carousel gap={0}>
|
|
154
|
+
{[0, 1, 2].map((index) => (
|
|
155
|
+
<Slide key={index} index={index} />
|
|
156
|
+
))}
|
|
157
|
+
</Carousel>,
|
|
158
|
+
);
|
|
159
|
+
await flushMeasure();
|
|
160
|
+
const slideNodes = slides(container);
|
|
161
|
+
expect(slideNodes).toHaveLength(3);
|
|
162
|
+
for (const node of slideNodes) {
|
|
163
|
+
expect(elementCarriesWidth(node as HTMLElement, 400)).toBe(true);
|
|
164
|
+
expect((node as HTMLElement).getAttribute("style") ?? "").not.toContain("100%");
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
|
|
168
|
+
it("pages to index × slideWidth when gap is 0", async () => {
|
|
169
|
+
const { container } = renderWithProviders(
|
|
170
|
+
<Carousel gap={0}>
|
|
171
|
+
{[0, 1, 2].map((index) => (
|
|
172
|
+
<Slide key={index} index={index} />
|
|
173
|
+
))}
|
|
174
|
+
</Carousel>,
|
|
175
|
+
);
|
|
176
|
+
await flushMeasure();
|
|
177
|
+
// First measure anchors the initial slide without animating.
|
|
178
|
+
expect(scrollCalls[0]).toMatchObject({ left: 0, behavior: "auto" });
|
|
179
|
+
fireEvent.click(dots(container)[2]);
|
|
180
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 800, behavior: "smooth" });
|
|
181
|
+
fireEvent.click(dots(container)[1]);
|
|
182
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 400, behavior: "smooth" });
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
it("includes the inter-slide gap in the pitch: index × (slideWidth + gap)", async () => {
|
|
186
|
+
const { container } = renderWithProviders(
|
|
187
|
+
<Carousel gap={16}>
|
|
188
|
+
{[0, 1, 2, 3, 4].map((index) => (
|
|
189
|
+
<Slide key={index} index={index} />
|
|
190
|
+
))}
|
|
191
|
+
</Carousel>,
|
|
192
|
+
);
|
|
193
|
+
await flushMeasure();
|
|
194
|
+
fireEvent.click(dots(container)[4]);
|
|
195
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 4 * (400 + 16), behavior: "smooth" });
|
|
196
|
+
});
|
|
197
|
+
|
|
198
|
+
it("resolves token gaps into the offset math", async () => {
|
|
199
|
+
const tokenGap = (getTokens().space as Record<string, { val?: number } | undefined>)?.$4?.val;
|
|
200
|
+
expect(typeof tokenGap).toBe("number");
|
|
201
|
+
expect(tokenGap!).toBeGreaterThan(0);
|
|
202
|
+
const { container } = renderWithProviders(
|
|
203
|
+
<Carousel gap="$4">
|
|
204
|
+
{[0, 1, 2].map((index) => (
|
|
205
|
+
<Slide key={index} index={index} />
|
|
206
|
+
))}
|
|
207
|
+
</Carousel>,
|
|
208
|
+
);
|
|
209
|
+
await flushMeasure();
|
|
210
|
+
fireEvent.click(dots(container)[2]);
|
|
211
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 2 * (400 + tokenGap!), behavior: "smooth" });
|
|
212
|
+
});
|
|
213
|
+
|
|
214
|
+
it("re-anchors the active slide when the viewport re-measures", async () => {
|
|
215
|
+
const { container } = renderWithProviders(
|
|
216
|
+
<Carousel gap={16}>
|
|
217
|
+
{[0, 1, 2].map((index) => (
|
|
218
|
+
<Slide key={index} index={index} />
|
|
219
|
+
))}
|
|
220
|
+
</Carousel>,
|
|
221
|
+
);
|
|
222
|
+
await flushMeasure();
|
|
223
|
+
fireEvent.click(dots(container)[2]);
|
|
224
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 2 * (400 + 16), behavior: "smooth" });
|
|
225
|
+
fireResize(600);
|
|
226
|
+
await flushMeasure();
|
|
227
|
+
// Same slide, new pitch, no animation.
|
|
228
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 2 * (600 + 16), behavior: "auto" });
|
|
229
|
+
expect(elementCarriesWidth(slides(container)[0] as HTMLElement, 600)).toBe(true);
|
|
230
|
+
});
|
|
231
|
+
|
|
232
|
+
it("maps scroll offsets back to the active dot at the same pitch", async () => {
|
|
233
|
+
const { container } = renderWithProviders(
|
|
234
|
+
<Carousel gap={16}>
|
|
235
|
+
{[0, 1, 2].map((index) => (
|
|
236
|
+
<Slide key={index} index={index} />
|
|
237
|
+
))}
|
|
238
|
+
</Carousel>,
|
|
239
|
+
);
|
|
240
|
+
await flushMeasure();
|
|
241
|
+
const track = container.querySelector("[data-carousel-track]") as HTMLElement;
|
|
242
|
+
expect(track).toBeTruthy();
|
|
243
|
+
Object.defineProperty(track, "scrollLeft", { configurable: true, value: 2 * (400 + 16) });
|
|
244
|
+
fireEvent.scroll(track);
|
|
245
|
+
expect(dots(container)[2].getAttribute("aria-current")).toBe("true");
|
|
246
|
+
});
|
|
247
|
+
|
|
248
|
+
it("renders a single slide without dots or arrows (N=1)", async () => {
|
|
249
|
+
const { container } = renderWithProviders(
|
|
250
|
+
<Carousel gap={0}>
|
|
251
|
+
<Slide index={0} />
|
|
252
|
+
</Carousel>,
|
|
253
|
+
);
|
|
254
|
+
await flushMeasure();
|
|
255
|
+
expect(slides(container)).toHaveLength(1);
|
|
256
|
+
expect(dots(container)).toHaveLength(0);
|
|
257
|
+
expect(container.querySelector("[aria-label='Next slide']")).toBeNull();
|
|
258
|
+
});
|
|
259
|
+
|
|
260
|
+
it("lands initialSlide at its pitch offset on first measure", async () => {
|
|
261
|
+
renderWithProviders(
|
|
262
|
+
<Carousel gap={0} initialSlide={2}>
|
|
263
|
+
{[0, 1, 2, 3].map((index) => (
|
|
264
|
+
<Slide key={index} index={index} />
|
|
265
|
+
))}
|
|
266
|
+
</Carousel>,
|
|
267
|
+
);
|
|
268
|
+
await flushMeasure();
|
|
269
|
+
expect(scrollCalls.at(-1)).toMatchObject({ left: 2 * 400, behavior: "auto" });
|
|
270
|
+
});
|
|
271
|
+
});
|
|
@@ -207,6 +207,41 @@ export const SingleSlide: Story = {
|
|
|
207
207
|
),
|
|
208
208
|
};
|
|
209
209
|
|
|
210
|
+
/**
|
|
211
|
+
* LC-62 SLIDE-VIEWPORT-WIDTH VERIFY arm. The failure this locks against:
|
|
212
|
+
* percent-of-track slide sizing inflates N fixed-width slides to N×W each, so
|
|
213
|
+
* every slide past the first lands beyond max scroll while the dots animate
|
|
214
|
+
* at nothing — dots alone can never catch it, only the geometry check can.
|
|
215
|
+
*/
|
|
216
|
+
export const SlideGeometry: Story = {
|
|
217
|
+
parameters: {
|
|
218
|
+
docs: {
|
|
219
|
+
description: {
|
|
220
|
+
story:
|
|
221
|
+
"LC-62 VERIFY: fixed 400px viewport, four fixed-width slides, default (non-zero) " +
|
|
222
|
+
"gap. Probe: for every N, click the dot `[aria-label='Go to item N']`, wait for " +
|
|
223
|
+
"the smooth scroll to settle, and assert `[data-carousel-slide]` N's bounding box " +
|
|
224
|
+
"intersects the `[data-carousel-track]` viewport box by ≥90% — the pitch must be " +
|
|
225
|
+
"index × (slideWidth + gap), sized from the MEASURED viewport, never " +
|
|
226
|
+
"percent-of-track.",
|
|
227
|
+
},
|
|
228
|
+
},
|
|
229
|
+
},
|
|
230
|
+
render: () => (
|
|
231
|
+
<View width={400}>
|
|
232
|
+
<Carousel onSlideChange={action("onSlideChange")}>
|
|
233
|
+
{colors.slice(0, 4).map((color, i) => (
|
|
234
|
+
// Fixed-width slide content (the pokemon-gallery shape that exposed
|
|
235
|
+
// the inflation): content exactly as wide as the viewport.
|
|
236
|
+
<View key={i} width={400}>
|
|
237
|
+
<SlideContent index={i} color={color} />
|
|
238
|
+
</View>
|
|
239
|
+
))}
|
|
240
|
+
</Carousel>
|
|
241
|
+
</View>
|
|
242
|
+
),
|
|
243
|
+
};
|
|
244
|
+
|
|
210
245
|
export const AllStates: Story = {
|
|
211
246
|
render: () => (
|
|
212
247
|
<YStack gap="$6">
|