xmlui 0.11.3 → 0.11.6
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/bin/index.cjs +8836 -0
- package/dist/bin/index.js +8825 -0
- package/dist/lib/{apiInterceptorWorker-QiltRtq1.js → apiInterceptorWorker-dwrAyq6l.js} +126 -151
- package/dist/lib/{index-DSUDwtWN.js → index-x4orhWfi.js} +2054 -2285
- package/dist/lib/index.css +1 -1
- package/dist/lib/{initMock-DdH1iCH-.js → initMock-DrUirixi.js} +19 -22
- package/dist/lib/language-server-web-worker.js +13 -5
- package/dist/lib/language-server.js +11 -3
- package/dist/lib/{metadata-utils-D27cn-XB.js → metadata-utils-2bsMr4Gd.js} +57 -26
- package/dist/lib/{server-common-hq0poDwA.js → server-common-DI3W4cob.js} +4140 -3741
- package/dist/lib/syntax-textmate.js +8 -2472
- package/dist/lib/testing.d.ts +1 -0
- package/dist/lib/testing.js +20 -23
- package/dist/lib/{transform-Tooy42EB.js → transform-CQ_6R-43.js} +174 -127
- package/dist/lib/vite-xmlui-plugin.d.ts +10 -0
- package/dist/lib/vite-xmlui-plugin.js +8316 -0
- package/dist/lib/{xmlui-parser-BZZ430Wm.js → xmlui-parser-CW8YmGjO.js} +10 -11
- package/dist/lib/xmlui-parser.d.ts +2 -0
- package/dist/lib/xmlui-parser.js +2 -2
- package/dist/lib/{xmlui-serializer-D9D2mQ8m.js → xmlui-serializer-CeCcgdVR.js} +19 -19
- package/dist/lib/xmlui.d.ts +124 -2
- package/dist/lib/xmlui.js +8 -3
- package/dist/metadata/{apiInterceptorWorker-Dql7QGw2.js → apiInterceptorWorker-Wgm2_zjg.js} +124 -149
- package/dist/metadata/{collectedComponentMetadata-C8Lr9TFe.js → collectedComponentMetadata-BGdap_gu.js} +2100 -2276
- package/dist/metadata/{initMock-CWwgOjW_.js → initMock-DlJ0S4Uy.js} +19 -22
- package/dist/metadata/xmlui-metadata.css +1 -0
- package/dist/metadata/xmlui-metadata.js +1 -1
- package/dist/metadata/xmlui-metadata.umd.cjs +3 -3
- package/dist/standalone/xmlui-standalone.es.d.ts +175 -4
- package/dist/standalone/xmlui-standalone.umd.js +36 -37
- package/package.json +20 -50
- package/dist/lib/vite-xmlui-plugin/index.js +0 -13968
- package/dist/lib/vite-xmlui-plugin/package.json +0 -3
- package/dist/metadata/style.css +0 -1
- package/dist/scripts/bin/bootstrap.cjs +0 -4
- package/dist/scripts/bin/build-lib.js +0 -126
- package/dist/scripts/bin/build.js +0 -266
- package/dist/scripts/bin/index.js +0 -167
- package/dist/scripts/bin/preview.js +0 -44
- package/dist/scripts/bin/start.js +0 -52
- package/dist/scripts/bin/vite-xmlui-plugin.js +0 -109
- package/dist/scripts/bin/viteConfig.js +0 -144
- package/dist/scripts/package.json +0 -285
- package/dist/scripts/src/abstractions/ActionDefs.js +0 -2
- package/dist/scripts/src/abstractions/AppContextDefs.js +0 -4
- package/dist/scripts/src/abstractions/ComponentDefs.js +0 -2
- package/dist/scripts/src/abstractions/ContainerDefs.js +0 -2
- package/dist/scripts/src/abstractions/ExtensionDefs.js +0 -2
- package/dist/scripts/src/abstractions/FunctionDefs.js +0 -2
- package/dist/scripts/src/abstractions/RendererDefs.js +0 -2
- package/dist/scripts/src/abstractions/ThemingDefs.js +0 -2
- package/dist/scripts/src/abstractions/scripting/BlockScope.js +0 -2
- package/dist/scripts/src/abstractions/scripting/Compilation.js +0 -2
- package/dist/scripts/src/abstractions/scripting/LogicalThread.js +0 -2
- package/dist/scripts/src/abstractions/scripting/LoopScope.js +0 -2
- package/dist/scripts/src/abstractions/scripting/ScriptParserError.js +0 -2
- package/dist/scripts/src/abstractions/scripting/Token.js +0 -2
- package/dist/scripts/src/abstractions/scripting/TryScope.js +0 -2
- package/dist/scripts/src/abstractions/scripting/TryScopeExp.js +0 -2
- package/dist/scripts/src/abstractions/scripting/modules.js +0 -2
- package/dist/scripts/src/components/APICall/APICall.js +0 -130
- package/dist/scripts/src/components/APICall/APICall.spec.js +0 -910
- package/dist/scripts/src/components/APICall/APICallNative.js +0 -36
- package/dist/scripts/src/components/Accordion/Accordion.js +0 -97
- package/dist/scripts/src/components/Accordion/Accordion.spec.js +0 -969
- package/dist/scripts/src/components/Accordion/AccordionContext.js +0 -20
- package/dist/scripts/src/components/Accordion/AccordionItem.js +0 -35
- package/dist/scripts/src/components/Accordion/AccordionItemNative.js +0 -95
- package/dist/scripts/src/components/Accordion/AccordionNative.js +0 -141
- package/dist/scripts/src/components/Animation/AnimationNative.js +0 -263
- package/dist/scripts/src/components/App/App.js +0 -581
- package/dist/scripts/src/components/App/App.spec.js +0 -331
- package/dist/scripts/src/components/App/AppLayoutContext.js +0 -49
- package/dist/scripts/src/components/App/AppNative.js +0 -308
- package/dist/scripts/src/components/App/AppStateContext.js +0 -9
- package/dist/scripts/src/components/App/IndexerContext.js +0 -44
- package/dist/scripts/src/components/App/LinkInfoContext.js +0 -9
- package/dist/scripts/src/components/App/SearchContext.js +0 -35
- package/dist/scripts/src/components/App/Sheet.js +0 -99
- package/dist/scripts/src/components/AppHeader/AppHeader.js +0 -58
- package/dist/scripts/src/components/AppHeader/AppHeader.spec.js +0 -169
- package/dist/scripts/src/components/AppHeader/AppHeaderNative.js +0 -72
- package/dist/scripts/src/components/AppState/AppState.js +0 -75
- package/dist/scripts/src/components/AppState/AppState.spec.js +0 -292
- package/dist/scripts/src/components/AppState/AppStateNative.js +0 -51
- package/dist/scripts/src/components/AutoComplete/AutoComplete.js +0 -109
- package/dist/scripts/src/components/AutoComplete/AutoComplete.spec.js +0 -433
- package/dist/scripts/src/components/AutoComplete/AutoCompleteContext.js +0 -19
- package/dist/scripts/src/components/AutoComplete/AutoCompleteNative.js +0 -498
- package/dist/scripts/src/components/Avatar/Avatar.js +0 -55
- package/dist/scripts/src/components/Avatar/Avatar.spec.js +0 -1514
- package/dist/scripts/src/components/Avatar/AvatarNative.js +0 -58
- package/dist/scripts/src/components/Backdrop/Backdrop.js +0 -40
- package/dist/scripts/src/components/Backdrop/Backdrop.spec.js +0 -131
- package/dist/scripts/src/components/Backdrop/BackdropNative.js +0 -25
- package/dist/scripts/src/components/Badge/Badge.js +0 -81
- package/dist/scripts/src/components/Badge/Badge.spec.js +0 -2214
- package/dist/scripts/src/components/Badge/BadgeNative.js +0 -46
- package/dist/scripts/src/components/Bookmark/Bookmark.js +0 -48
- package/dist/scripts/src/components/Bookmark/Bookmark.spec.js +0 -230
- package/dist/scripts/src/components/Bookmark/BookmarkNative.js +0 -55
- package/dist/scripts/src/components/Breakout/Breakout.js +0 -17
- package/dist/scripts/src/components/Breakout/Breakout.spec.js +0 -56
- package/dist/scripts/src/components/Breakout/BreakoutNative.js +0 -24
- package/dist/scripts/src/components/Button/Button-style.spec.js +0 -274
- package/dist/scripts/src/components/Button/Button.js +0 -171
- package/dist/scripts/src/components/Button/Button.spec.js +0 -425
- package/dist/scripts/src/components/Button/ButtonNative.js +0 -109
- package/dist/scripts/src/components/Card/Card.js +0 -89
- package/dist/scripts/src/components/Card/Card.spec.js +0 -150
- package/dist/scripts/src/components/Card/CardNative.js +0 -41
- package/dist/scripts/src/components/Carousel/Carousel.js +0 -133
- package/dist/scripts/src/components/Carousel/Carousel.spec.js +0 -557
- package/dist/scripts/src/components/Carousel/CarouselContext.js +0 -57
- package/dist/scripts/src/components/Carousel/CarouselItem.js +0 -15
- package/dist/scripts/src/components/Carousel/CarouselItemNative.js +0 -40
- package/dist/scripts/src/components/Carousel/CarouselNative.js +0 -195
- package/dist/scripts/src/components/ChangeListener/ChangeListener.js +0 -34
- package/dist/scripts/src/components/ChangeListener/ChangeListener.spec.js +0 -169
- package/dist/scripts/src/components/ChangeListener/ChangeListenerNative.js +0 -30
- package/dist/scripts/src/components/Charts/AreaChart/AreaChart.js +0 -92
- package/dist/scripts/src/components/Charts/AreaChart/AreaChart.spec.js +0 -999
- package/dist/scripts/src/components/Charts/AreaChart/AreaChartNative.js +0 -127
- package/dist/scripts/src/components/Charts/BarChart/BarChart.js +0 -97
- package/dist/scripts/src/components/Charts/BarChart/BarChart.spec.js +0 -597
- package/dist/scripts/src/components/Charts/BarChart/BarChartNative.js +0 -317
- package/dist/scripts/src/components/Charts/DonutChart/DonutChart.js +0 -60
- package/dist/scripts/src/components/Charts/DonutChart/DonutChart.spec.js +0 -608
- package/dist/scripts/src/components/Charts/LabelList/LabelList.js +0 -41
- package/dist/scripts/src/components/Charts/LabelList/LabelList.spec.js +0 -539
- package/dist/scripts/src/components/Charts/LabelList/LabelListNative.js +0 -25
- package/dist/scripts/src/components/Charts/Legend/Legend.js +0 -33
- package/dist/scripts/src/components/Charts/Legend/Legend.spec.js +0 -558
- package/dist/scripts/src/components/Charts/Legend/LegendNative.js +0 -64
- package/dist/scripts/src/components/Charts/LineChart/LineChart.js +0 -94
- package/dist/scripts/src/components/Charts/LineChart/LineChart.spec.js +0 -450
- package/dist/scripts/src/components/Charts/LineChart/LineChartNative.js +0 -192
- package/dist/scripts/src/components/Charts/PieChart/PieChart.js +0 -64
- package/dist/scripts/src/components/Charts/PieChart/PieChart.spec.js +0 -584
- package/dist/scripts/src/components/Charts/PieChart/PieChartNative.js +0 -167
- package/dist/scripts/src/components/Charts/RadarChart/RadarChart.js +0 -92
- package/dist/scripts/src/components/Charts/RadarChart/RadarChart.spec.js +0 -571
- package/dist/scripts/src/components/Charts/RadarChart/RadarChartNative.js +0 -125
- package/dist/scripts/src/components/Charts/Tooltip/TooltipContent.js +0 -27
- package/dist/scripts/src/components/Charts/Tooltip/TooltipContent.spec.js +0 -451
- package/dist/scripts/src/components/Charts/utils/ChartProvider.js +0 -65
- package/dist/scripts/src/components/Charts/utils/abstractions.js +0 -26
- package/dist/scripts/src/components/Checkbox/Checkbox.js +0 -81
- package/dist/scripts/src/components/Checkbox/Checkbox.spec.js +0 -969
- package/dist/scripts/src/components/CodeBlock/CodeBlock.js +0 -42
- package/dist/scripts/src/components/CodeBlock/CodeBlock.spec.js +0 -196
- package/dist/scripts/src/components/CodeBlock/CodeBlockNative.js +0 -127
- package/dist/scripts/src/components/CodeBlock/highlight-code.js +0 -273
- package/dist/scripts/src/components/ColorPicker/ColorPicker.js +0 -54
- package/dist/scripts/src/components/ColorPicker/ColorPicker.spec.js +0 -312
- package/dist/scripts/src/components/ColorPicker/ColorPickerNative.js +0 -86
- package/dist/scripts/src/components/Column/Column.js +0 -89
- package/dist/scripts/src/components/Column/ColumnNative.js +0 -49
- package/dist/scripts/src/components/Column/TableContext.js +0 -12
- package/dist/scripts/src/components/Column/doc-resources/list-component-data.js +0 -53
- package/dist/scripts/src/components/ComponentProvider.js +0 -811
- package/dist/scripts/src/components/ComponentRegistryContext.js +0 -44
- package/dist/scripts/src/components/ContentSeparator/ContentSeparator.js +0 -51
- package/dist/scripts/src/components/ContentSeparator/ContentSeparator.spec.js +0 -531
- package/dist/scripts/src/components/ContentSeparator/ContentSeparatorNative.js +0 -31
- package/dist/scripts/src/components/DataSource/DataSource.js +0 -124
- package/dist/scripts/src/components/DateInput/DateInput.js +0 -197
- package/dist/scripts/src/components/DateInput/DateInput.spec.js +0 -952
- package/dist/scripts/src/components/DateInput/DateInputNative.js +0 -734
- package/dist/scripts/src/components/DatePicker/DatePicker.js +0 -146
- package/dist/scripts/src/components/DatePicker/DatePicker.spec.js +0 -394
- package/dist/scripts/src/components/DatePicker/DatePickerNative.js +0 -326
- package/dist/scripts/src/components/DropdownMenu/DropdownMenu.js +0 -196
- package/dist/scripts/src/components/DropdownMenu/DropdownMenu.spec.js +0 -331
- package/dist/scripts/src/components/DropdownMenu/DropdownMenuNative.js +0 -146
- package/dist/scripts/src/components/EmojiSelector/EmojiSelector.js +0 -26
- package/dist/scripts/src/components/EmojiSelector/EmojiSelector.spec.js +0 -29
- package/dist/scripts/src/components/EmojiSelector/EmojiSelectorNative.js +0 -71
- package/dist/scripts/src/components/ExpandableItem/ExpandableItem.js +0 -101
- package/dist/scripts/src/components/ExpandableItem/ExpandableItem.spec.js +0 -435
- package/dist/scripts/src/components/ExpandableItem/ExpandableItemNative.js +0 -109
- package/dist/scripts/src/components/FileInput/FileInput.js +0 -80
- package/dist/scripts/src/components/FileInput/FileInput.spec.js +0 -285
- package/dist/scripts/src/components/FileInput/FileInputNative.js +0 -161
- package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZone.js +0 -58
- package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZone.spec.js +0 -296
- package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZoneNative.js +0 -134
- package/dist/scripts/src/components/FlowLayout/FlowLayout.js +0 -65
- package/dist/scripts/src/components/FlowLayout/FlowLayout.spec.js +0 -518
- package/dist/scripts/src/components/FlowLayout/FlowLayoutNative.js +0 -153
- package/dist/scripts/src/components/Footer/Footer.js +0 -45
- package/dist/scripts/src/components/Footer/Footer.spec.js +0 -991
- package/dist/scripts/src/components/Footer/FooterNative.js +0 -35
- package/dist/scripts/src/components/Form/Form.js +0 -161
- package/dist/scripts/src/components/Form/Form.spec.js +0 -1719
- package/dist/scripts/src/components/Form/FormContext.js +0 -124
- package/dist/scripts/src/components/Form/FormNative.js +0 -463
- package/dist/scripts/src/components/Form/formActions.js +0 -115
- package/dist/scripts/src/components/FormItem/FormItem.js +0 -231
- package/dist/scripts/src/components/FormItem/FormItem.spec.js +0 -1022
- package/dist/scripts/src/components/FormItem/FormItemNative.js +0 -255
- package/dist/scripts/src/components/FormItem/HelperText.js +0 -27
- package/dist/scripts/src/components/FormItem/ItemWithLabel.js +0 -52
- package/dist/scripts/src/components/FormItem/Validations.js +0 -389
- package/dist/scripts/src/components/FormSection/FormSection.js +0 -56
- package/dist/scripts/src/components/Fragment/Fragment.js +0 -24
- package/dist/scripts/src/components/Fragment/Fragment.spec.js +0 -50
- package/dist/scripts/src/components/Heading/H1.spec.js +0 -66
- package/dist/scripts/src/components/Heading/H2.spec.js +0 -66
- package/dist/scripts/src/components/Heading/H3.spec.js +0 -66
- package/dist/scripts/src/components/Heading/H4.spec.js +0 -66
- package/dist/scripts/src/components/Heading/H5.spec.js +0 -66
- package/dist/scripts/src/components/Heading/H6.spec.js +0 -66
- package/dist/scripts/src/components/Heading/Heading.js +0 -396
- package/dist/scripts/src/components/Heading/Heading.spec.js +0 -966
- package/dist/scripts/src/components/Heading/HeadingNative.js +0 -98
- package/dist/scripts/src/components/Heading/abstractions.js +0 -4
- package/dist/scripts/src/components/HoverCard/HoverCard.js +0 -18
- package/dist/scripts/src/components/HoverCard/HovercardNative.js +0 -44
- package/dist/scripts/src/components/HtmlTags/HtmlTags.js +0 -1441
- package/dist/scripts/src/components/HtmlTags/HtmlTags.spec.js +0 -69
- package/dist/scripts/src/components/IFrame/IFrame.js +0 -77
- package/dist/scripts/src/components/IFrame/IFrame.spec.js +0 -527
- package/dist/scripts/src/components/IFrame/IFrameNative.js +0 -46
- package/dist/scripts/src/components/Icon/AdmonitionDanger.js +0 -10
- package/dist/scripts/src/components/Icon/AdmonitionInfo.js +0 -10
- package/dist/scripts/src/components/Icon/AdmonitionNote.js +0 -10
- package/dist/scripts/src/components/Icon/AdmonitionTip.js +0 -10
- package/dist/scripts/src/components/Icon/AdmonitionWarning.js +0 -10
- package/dist/scripts/src/components/Icon/ApiIcon.js +0 -10
- package/dist/scripts/src/components/Icon/ArrowDropDown.js +0 -11
- package/dist/scripts/src/components/Icon/ArrowDropUp.js +0 -11
- package/dist/scripts/src/components/Icon/ArrowLeft.js +0 -11
- package/dist/scripts/src/components/Icon/ArrowRight.js +0 -11
- package/dist/scripts/src/components/Icon/Attach.js +0 -10
- package/dist/scripts/src/components/Icon/Binding.js +0 -11
- package/dist/scripts/src/components/Icon/BoardIcon.js +0 -7
- package/dist/scripts/src/components/Icon/BoxIcon.js +0 -10
- package/dist/scripts/src/components/Icon/CheckIcon.js +0 -7
- package/dist/scripts/src/components/Icon/ChevronDownIcon.js +0 -7
- package/dist/scripts/src/components/Icon/ChevronLeft.js +0 -7
- package/dist/scripts/src/components/Icon/ChevronRight.js +0 -7
- package/dist/scripts/src/components/Icon/ChevronUpIcon.js +0 -7
- package/dist/scripts/src/components/Icon/CodeFileIcon.js +0 -10
- package/dist/scripts/src/components/Icon/CodeSandbox.js +0 -10
- package/dist/scripts/src/components/Icon/CompactListIcon.js +0 -7
- package/dist/scripts/src/components/Icon/ContentCopyIcon.js +0 -7
- package/dist/scripts/src/components/Icon/DarkToLightIcon.js +0 -10
- package/dist/scripts/src/components/Icon/DatabaseIcon.js +0 -11
- package/dist/scripts/src/components/Icon/DocFileIcon.js +0 -10
- package/dist/scripts/src/components/Icon/DocIcon.js +0 -10
- package/dist/scripts/src/components/Icon/DotMenuHorizontalIcon.js +0 -7
- package/dist/scripts/src/components/Icon/DotMenuIcon.js +0 -7
- package/dist/scripts/src/components/Icon/EmailIcon.js +0 -7
- package/dist/scripts/src/components/Icon/EmptyFolderIcon.js +0 -10
- package/dist/scripts/src/components/Icon/ErrorIcon.js +0 -7
- package/dist/scripts/src/components/Icon/ExpressionIcon.js +0 -10
- package/dist/scripts/src/components/Icon/FillPlusCricleIcon.js +0 -7
- package/dist/scripts/src/components/Icon/FilterIcon.js +0 -10
- package/dist/scripts/src/components/Icon/FolderIcon.js +0 -10
- package/dist/scripts/src/components/Icon/GlobeIcon.js +0 -7
- package/dist/scripts/src/components/Icon/HomeIcon.js +0 -7
- package/dist/scripts/src/components/Icon/HyperLinkIcon.js +0 -7
- package/dist/scripts/src/components/Icon/Icon.js +0 -42
- package/dist/scripts/src/components/Icon/Icon.spec.js +0 -527
- package/dist/scripts/src/components/Icon/IconNative.js +0 -127
- package/dist/scripts/src/components/Icon/ImageFileIcon.js +0 -10
- package/dist/scripts/src/components/Icon/Inspect.js +0 -10
- package/dist/scripts/src/components/Icon/LightToDark.js +0 -10
- package/dist/scripts/src/components/Icon/LinkIcon.js +0 -7
- package/dist/scripts/src/components/Icon/ListIcon.js +0 -7
- package/dist/scripts/src/components/Icon/LooseListIcon.js +0 -7
- package/dist/scripts/src/components/Icon/MoonIcon.js +0 -10
- package/dist/scripts/src/components/Icon/MoreOptionsIcon.js +0 -7
- package/dist/scripts/src/components/Icon/NoSortIcon.js +0 -8
- package/dist/scripts/src/components/Icon/PDFIcon.js +0 -10
- package/dist/scripts/src/components/Icon/PenIcon.js +0 -7
- package/dist/scripts/src/components/Icon/PhoneIcon.js +0 -7
- package/dist/scripts/src/components/Icon/PhotoIcon.js +0 -10
- package/dist/scripts/src/components/Icon/PlusIcon.js +0 -7
- package/dist/scripts/src/components/Icon/SearchIcon.js +0 -7
- package/dist/scripts/src/components/Icon/ShareIcon.js +0 -10
- package/dist/scripts/src/components/Icon/SortAscendingIcon.js +0 -8
- package/dist/scripts/src/components/Icon/SortDescendingIcon.js +0 -8
- package/dist/scripts/src/components/Icon/StarsIcon.js +0 -10
- package/dist/scripts/src/components/Icon/SunIcon.js +0 -10
- package/dist/scripts/src/components/Icon/TableDeleteColumnIcon.js +0 -7
- package/dist/scripts/src/components/Icon/TableDeleteRowIcon.js +0 -7
- package/dist/scripts/src/components/Icon/TableInsertColumnIcon.js +0 -7
- package/dist/scripts/src/components/Icon/TableInsertRowIcon.js +0 -7
- package/dist/scripts/src/components/Icon/TrashIcon.js +0 -7
- package/dist/scripts/src/components/Icon/TrendingDownIcon.js +0 -10
- package/dist/scripts/src/components/Icon/TrendingLevelIcon.js +0 -10
- package/dist/scripts/src/components/Icon/TrendingUpIcon.js +0 -10
- package/dist/scripts/src/components/Icon/TxtIcon.js +0 -10
- package/dist/scripts/src/components/Icon/UnknownFileIcon.js +0 -10
- package/dist/scripts/src/components/Icon/UnlinkIcon.js +0 -10
- package/dist/scripts/src/components/Icon/UserIcon.js +0 -7
- package/dist/scripts/src/components/Icon/WarningIcon.js +0 -7
- package/dist/scripts/src/components/Icon/XlsIcon.js +0 -10
- package/dist/scripts/src/components/IconProvider.js +0 -300
- package/dist/scripts/src/components/IconRegistryContext.js +0 -318
- package/dist/scripts/src/components/Image/Image.js +0 -52
- package/dist/scripts/src/components/Image/Image.spec.js +0 -198
- package/dist/scripts/src/components/Image/ImageNative.js +0 -73
- package/dist/scripts/src/components/Input/InputAdornment.js +0 -28
- package/dist/scripts/src/components/Input/InputDivider.js +0 -35
- package/dist/scripts/src/components/Input/InputLabel.js +0 -25
- package/dist/scripts/src/components/Input/PartialInput.js +0 -155
- package/dist/scripts/src/components/Input/index.js +0 -5
- package/dist/scripts/src/components/InspectButton/InspectButton.js +0 -35
- package/dist/scripts/src/components/Items/Items.js +0 -39
- package/dist/scripts/src/components/Items/Items.spec.js +0 -397
- package/dist/scripts/src/components/Items/ItemsNative.js +0 -33
- package/dist/scripts/src/components/Link/Link.js +0 -82
- package/dist/scripts/src/components/Link/Link.spec.js +0 -894
- package/dist/scripts/src/components/Link/LinkNative.js +0 -48
- package/dist/scripts/src/components/List/List.js +0 -130
- package/dist/scripts/src/components/List/List.spec.js +0 -927
- package/dist/scripts/src/components/List/ListNative.js +0 -433
- package/dist/scripts/src/components/List/doc-resources/list-component-data.js +0 -53
- package/dist/scripts/src/components/Logo/Logo.js +0 -30
- package/dist/scripts/src/components/Logo/LogoNative.js +0 -32
- package/dist/scripts/src/components/Markdown/CodeText.js +0 -38
- package/dist/scripts/src/components/Markdown/Markdown.js +0 -143
- package/dist/scripts/src/components/Markdown/Markdown.spec.js +0 -188
- package/dist/scripts/src/components/Markdown/MarkdownNative.js +0 -476
- package/dist/scripts/src/components/Markdown/parse-binding-expr.js +0 -60
- package/dist/scripts/src/components/Markdown/utils.js +0 -389
- package/dist/scripts/src/components/ModalDialog/ConfirmationModalContextProvider.js +0 -111
- package/dist/scripts/src/components/ModalDialog/Dialog.js +0 -20
- package/dist/scripts/src/components/ModalDialog/ModalDialog.js +0 -83
- package/dist/scripts/src/components/ModalDialog/ModalDialog.spec.js +0 -181
- package/dist/scripts/src/components/ModalDialog/ModalDialogNative.js +0 -217
- package/dist/scripts/src/components/ModalDialog/ModalVisibilityContext.js +0 -60
- package/dist/scripts/src/components/NavGroup/NavGroup.js +0 -70
- package/dist/scripts/src/components/NavGroup/NavGroup.spec.js +0 -304
- package/dist/scripts/src/components/NavGroup/NavGroupContext.js +0 -13
- package/dist/scripts/src/components/NavGroup/NavGroupNative.js +0 -133
- package/dist/scripts/src/components/NavLink/NavLink.js +0 -86
- package/dist/scripts/src/components/NavLink/NavLink.spec.js +0 -864
- package/dist/scripts/src/components/NavLink/NavLinkNative.js +0 -73
- package/dist/scripts/src/components/NavPanel/NavPanel.js +0 -53
- package/dist/scripts/src/components/NavPanel/NavPanel.spec.js +0 -864
- package/dist/scripts/src/components/NavPanel/NavPanelNative.js +0 -222
- package/dist/scripts/src/components/NestedApp/AppWithCodeView.js +0 -91
- package/dist/scripts/src/components/NestedApp/AppWithCodeViewNative.js +0 -84
- package/dist/scripts/src/components/NestedApp/NestedApp.js +0 -86
- package/dist/scripts/src/components/NestedApp/NestedAppNative.js +0 -231
- package/dist/scripts/src/components/NestedApp/Tooltip.js +0 -46
- package/dist/scripts/src/components/NestedApp/defaultProps.js +0 -12
- package/dist/scripts/src/components/NestedApp/utils.js +0 -67
- package/dist/scripts/src/components/NoResult/NoResult.js +0 -46
- package/dist/scripts/src/components/NoResult/NoResult.spec.js +0 -863
- package/dist/scripts/src/components/NoResult/NoResultNative.js +0 -31
- package/dist/scripts/src/components/NumberBox/NumberBox.js +0 -123
- package/dist/scripts/src/components/NumberBox/NumberBox.spec.js +0 -954
- package/dist/scripts/src/components/NumberBox/NumberBoxNative.js +0 -513
- package/dist/scripts/src/components/NumberBox/numberbox-abstractions.js +0 -109
- package/dist/scripts/src/components/Option/Option.js +0 -44
- package/dist/scripts/src/components/Option/Option.spec.js +0 -474
- package/dist/scripts/src/components/Option/OptionNative.js +0 -29
- package/dist/scripts/src/components/Option/OptionTypeProvider.js +0 -16
- package/dist/scripts/src/components/PageMetaTitle/PageMetaTilteNative.js +0 -13
- package/dist/scripts/src/components/PageMetaTitle/PageMetaTitle.js +0 -22
- package/dist/scripts/src/components/PageMetaTitle/PageMetaTitle.spec.js +0 -80
- package/dist/scripts/src/components/Pages/Pages.js +0 -54
- package/dist/scripts/src/components/Pages/PagesNative.js +0 -57
- package/dist/scripts/src/components/Pagination/Pagination.js +0 -107
- package/dist/scripts/src/components/Pagination/Pagination.spec.js +0 -1008
- package/dist/scripts/src/components/Pagination/PaginationNative.js +0 -157
- package/dist/scripts/src/components/PositionedContainer/PositionedContainer.js +0 -24
- package/dist/scripts/src/components/PositionedContainer/PositionedContainerNative.js +0 -14
- package/dist/scripts/src/components/ProfileMenu/ProfileMenu.js +0 -20
- package/dist/scripts/src/components/ProgressBar/ProgressBar.js +0 -38
- package/dist/scripts/src/components/ProgressBar/ProgressBar.spec.js +0 -166
- package/dist/scripts/src/components/ProgressBar/ProgressBarNative.js +0 -28
- package/dist/scripts/src/components/Queue/Queue.js +0 -85
- package/dist/scripts/src/components/Queue/Queue.spec.js +0 -624
- package/dist/scripts/src/components/Queue/QueueNative.js +0 -342
- package/dist/scripts/src/components/Queue/queueActions.js +0 -87
- package/dist/scripts/src/components/RadioGroup/RadioGroup.js +0 -61
- package/dist/scripts/src/components/RadioGroup/RadioGroup.spec.js +0 -488
- package/dist/scripts/src/components/RadioGroup/RadioGroupNative.js +0 -158
- package/dist/scripts/src/components/RadioGroup/RadioItem.js +0 -28
- package/dist/scripts/src/components/RadioGroup/RadioItemNative.js +0 -62
- package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapter.js +0 -24
- package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapterNative.js +0 -135
- package/dist/scripts/src/components/Redirect/Redirect.js +0 -31
- package/dist/scripts/src/components/Redirect/Redirect.spec.js +0 -527
- package/dist/scripts/src/components/ResponsiveBar/ResponsiveBar.js +0 -60
- package/dist/scripts/src/components/ResponsiveBar/ResponsiveBar.spec.js +0 -76
- package/dist/scripts/src/components/ResponsiveBar/ResponsiveBarNative.js +0 -313
- package/dist/scripts/src/components/Select/HiddenOption.js +0 -20
- package/dist/scripts/src/components/Select/OptionContext.js +0 -12
- package/dist/scripts/src/components/Select/Select.js +0 -131
- package/dist/scripts/src/components/Select/Select.spec.js +0 -671
- package/dist/scripts/src/components/Select/SelectContext.js +0 -16
- package/dist/scripts/src/components/Select/SelectNative.js +0 -440
- package/dist/scripts/src/components/SelectionStore/SelectionStore.js +0 -25
- package/dist/scripts/src/components/SelectionStore/SelectionStoreNative.js +0 -103
- package/dist/scripts/src/components/Slider/Slider.js +0 -115
- package/dist/scripts/src/components/Slider/Slider.spec.js +0 -643
- package/dist/scripts/src/components/Slider/SliderNative.js +0 -237
- package/dist/scripts/src/components/Slot/Slot.js +0 -17
- package/dist/scripts/src/components/Slot/Slot.spec.js +0 -368
- package/dist/scripts/src/components/SlotItem.js +0 -32
- package/dist/scripts/src/components/SpaceFiller/SpaceFiller.js +0 -20
- package/dist/scripts/src/components/SpaceFiller/SpaceFiller.spec.js +0 -184
- package/dist/scripts/src/components/SpaceFiller/SpaceFillerNative.js +0 -10
- package/dist/scripts/src/components/Spinner/Spinner.js +0 -39
- package/dist/scripts/src/components/Spinner/Spinner.spec.js +0 -161
- package/dist/scripts/src/components/Spinner/SpinnerNative.js +0 -48
- package/dist/scripts/src/components/Splitter/HSplitter.spec.js +0 -104
- package/dist/scripts/src/components/Splitter/Splitter.js +0 -114
- package/dist/scripts/src/components/Splitter/Splitter.spec.js +0 -631
- package/dist/scripts/src/components/Splitter/SplitterNative.js +0 -203
- package/dist/scripts/src/components/Splitter/VSplitter.spec.js +0 -104
- package/dist/scripts/src/components/Splitter/utils.js +0 -22
- package/dist/scripts/src/components/Stack/CHStack.spec.js +0 -86
- package/dist/scripts/src/components/Stack/CVStack.spec.js +0 -86
- package/dist/scripts/src/components/Stack/HStack.spec.js +0 -67
- package/dist/scripts/src/components/Stack/Stack.js +0 -156
- package/dist/scripts/src/components/Stack/Stack.spec.js +0 -654
- package/dist/scripts/src/components/Stack/StackNative.js +0 -45
- package/dist/scripts/src/components/Stack/VStack.spec.js +0 -67
- package/dist/scripts/src/components/StickyBox/StickyBox.js +0 -34
- package/dist/scripts/src/components/StickyBox/StickyBoxNative.js +0 -42
- package/dist/scripts/src/components/Switch/Switch.js +0 -80
- package/dist/scripts/src/components/Switch/Switch.spec.js +0 -836
- package/dist/scripts/src/components/Table/Table.js +0 -268
- package/dist/scripts/src/components/Table/Table.spec.js +0 -827
- package/dist/scripts/src/components/Table/TableNative.js +0 -670
- package/dist/scripts/src/components/Table/doc-resources/list-component-data.js +0 -53
- package/dist/scripts/src/components/Table/useRowSelection.js +0 -454
- package/dist/scripts/src/components/TableOfContents/TableOfContents.js +0 -76
- package/dist/scripts/src/components/TableOfContents/TableOfContents.spec.js +0 -838
- package/dist/scripts/src/components/TableOfContents/TableOfContentsNative.js +0 -81
- package/dist/scripts/src/components/Tabs/TabContext.js +0 -58
- package/dist/scripts/src/components/Tabs/TabItem.js +0 -44
- package/dist/scripts/src/components/Tabs/TabItemNative.js +0 -53
- package/dist/scripts/src/components/Tabs/Tabs.js +0 -95
- package/dist/scripts/src/components/Tabs/Tabs.spec.js +0 -1237
- package/dist/scripts/src/components/Tabs/TabsNative.js +0 -137
- package/dist/scripts/src/components/Text/Text.js +0 -181
- package/dist/scripts/src/components/Text/Text.spec.js +0 -1676
- package/dist/scripts/src/components/Text/TextNative.js +0 -244
- package/dist/scripts/src/components/TextArea/TextArea.js +0 -103
- package/dist/scripts/src/components/TextArea/TextArea.spec.js +0 -794
- package/dist/scripts/src/components/TextArea/TextAreaNative.js +0 -196
- package/dist/scripts/src/components/TextArea/TextAreaResizable.js +0 -73
- package/dist/scripts/src/components/TextArea/useComposedRef.js +0 -60
- package/dist/scripts/src/components/TextBox/TextBox.js +0 -131
- package/dist/scripts/src/components/TextBox/TextBox.spec.js +0 -725
- package/dist/scripts/src/components/TextBox/TextBoxNative.js +0 -142
- package/dist/scripts/src/components/Theme/NotificationToast.js +0 -64
- package/dist/scripts/src/components/Theme/Theme.js +0 -47
- package/dist/scripts/src/components/Theme/Theme.spec.js +0 -390
- package/dist/scripts/src/components/Theme/ThemeNative.js +0 -162
- package/dist/scripts/src/components/TimeInput/TimeInput.js +0 -149
- package/dist/scripts/src/components/TimeInput/TimeInput.spec.js +0 -1160
- package/dist/scripts/src/components/TimeInput/TimeInputNative.js +0 -650
- package/dist/scripts/src/components/TimeInput/utils.js +0 -197
- package/dist/scripts/src/components/Timer/Timer.js +0 -62
- package/dist/scripts/src/components/Timer/Timer.spec.js +0 -328
- package/dist/scripts/src/components/Timer/TimerNative.js +0 -178
- package/dist/scripts/src/components/Toggle/Toggle.js +0 -172
- package/dist/scripts/src/components/ToneChangerButton/ToneChangerButton.js +0 -63
- package/dist/scripts/src/components/ToneChangerButton/ToneChangerButton.spec.js +0 -414
- package/dist/scripts/src/components/ToneSwitch/ToneSwitch.js +0 -51
- package/dist/scripts/src/components/ToneSwitch/ToneSwitch.spec.js +0 -89
- package/dist/scripts/src/components/ToneSwitch/ToneSwitchNative.js +0 -42
- package/dist/scripts/src/components/Tooltip/Tooltip.js +0 -118
- package/dist/scripts/src/components/Tooltip/Tooltip.spec.js +0 -418
- package/dist/scripts/src/components/Tooltip/TooltipNative.js +0 -160
- package/dist/scripts/src/components/Tree/Tree-dynamic.spec.js +0 -2894
- package/dist/scripts/src/components/Tree/Tree-icons.spec.js +0 -206
- package/dist/scripts/src/components/Tree/Tree.spec.js +0 -2839
- package/dist/scripts/src/components/Tree/TreeComponent.js +0 -324
- package/dist/scripts/src/components/Tree/TreeNative.js +0 -1129
- package/dist/scripts/src/components/Tree/testData.js +0 -296
- package/dist/scripts/src/components/TreeDisplay/TreeDisplay.js +0 -49
- package/dist/scripts/src/components/TreeDisplay/TreeDisplayNative.js +0 -104
- package/dist/scripts/src/components/ValidationSummary/ValidationSummary.js +0 -64
- package/dist/scripts/src/components/VisuallyHidden.js +0 -21
- package/dist/scripts/src/components/abstractions.js +0 -341
- package/dist/scripts/src/components/chart-color-schemes.js +0 -43
- package/dist/scripts/src/components/collectedComponentMetadata.js +0 -316
- package/dist/scripts/src/components/component-utils.js +0 -29
- package/dist/scripts/src/components/container-helpers.js +0 -26
- package/dist/scripts/src/components/metadata-helpers.js +0 -269
- package/dist/scripts/src/components-core/ApiBoundComponent.js +0 -227
- package/dist/scripts/src/components-core/AppContext.js +0 -16
- package/dist/scripts/src/components-core/ComponentDecorator.js +0 -74
- package/dist/scripts/src/components-core/ComponentViewer.js +0 -69
- package/dist/scripts/src/components-core/CompoundComponent.js +0 -145
- package/dist/scripts/src/components-core/DebugViewProvider.js +0 -43
- package/dist/scripts/src/components-core/EngineError.js +0 -91
- package/dist/scripts/src/components-core/InspectorContext.js +0 -248
- package/dist/scripts/src/components-core/LoaderComponent.js +0 -109
- package/dist/scripts/src/components-core/RestApiProxy.js +0 -468
- package/dist/scripts/src/components-core/StandaloneApp.js +0 -821
- package/dist/scripts/src/components-core/StandaloneExtensionManager.js +0 -44
- package/dist/scripts/src/components-core/TableOfContentsContext.js +0 -168
- package/dist/scripts/src/components-core/abstractions/ComponentRenderer.js +0 -2
- package/dist/scripts/src/components-core/abstractions/LoaderRenderer.js +0 -2
- package/dist/scripts/src/components-core/abstractions/standalone.js +0 -2
- package/dist/scripts/src/components-core/abstractions/treeAbstractions.js +0 -2
- package/dist/scripts/src/components-core/action/APICall.js +0 -284
- package/dist/scripts/src/components-core/action/FileDownloadAction.js +0 -80
- package/dist/scripts/src/components-core/action/FileUploadAction.js +0 -88
- package/dist/scripts/src/components-core/action/NavigateAction.js +0 -20
- package/dist/scripts/src/components-core/action/TimedAction.js +0 -21
- package/dist/scripts/src/components-core/action/actions.js +0 -15
- package/dist/scripts/src/components-core/appContext/date-functions.js +0 -24
- package/dist/scripts/src/components-core/appContext/math-function.js +0 -27
- package/dist/scripts/src/components-core/appContext/misc-utils.js +0 -14
- package/dist/scripts/src/components-core/behaviors/Behavior.js +0 -2
- package/dist/scripts/src/components-core/behaviors/CoreBehaviors.js +0 -200
- package/dist/scripts/src/components-core/component-hooks.js +0 -25
- package/dist/scripts/src/components-core/constants.js +0 -18
- package/dist/scripts/src/components-core/descriptorHelper.js +0 -96
- package/dist/scripts/src/components-core/devtools/InspectorDialog.js +0 -135
- package/dist/scripts/src/components-core/devtools/InspectorDialogVisibilityContext.js +0 -8
- package/dist/scripts/src/components-core/event-handlers.js +0 -46
- package/dist/scripts/src/components-core/interception/ApiInterceptor.js +0 -247
- package/dist/scripts/src/components-core/interception/ApiInterceptorProvider.js +0 -167
- package/dist/scripts/src/components-core/interception/Backend.js +0 -141
- package/dist/scripts/src/components-core/interception/Errors.js +0 -129
- package/dist/scripts/src/components-core/interception/InMemoryDb.js +0 -41
- package/dist/scripts/src/components-core/interception/IndexedDb.js +0 -205
- package/dist/scripts/src/components-core/interception/ReadonlyCollection.js +0 -145
- package/dist/scripts/src/components-core/interception/abstractions.js +0 -2
- package/dist/scripts/src/components-core/interception/apiInterceptorWorker.js +0 -44
- package/dist/scripts/src/components-core/interception/initMock.js +0 -20
- package/dist/scripts/src/components-core/interception/useApiInterceptorContext.js +0 -9
- package/dist/scripts/src/components-core/loader/ApiLoader.js +0 -54
- package/dist/scripts/src/components-core/loader/DataLoader.js +0 -330
- package/dist/scripts/src/components-core/loader/ExternalDataLoader.js +0 -60
- package/dist/scripts/src/components-core/loader/Loader.js +0 -159
- package/dist/scripts/src/components-core/loader/MockLoaderRenderer.js +0 -43
- package/dist/scripts/src/components-core/loader/PageableLoader.js +0 -272
- package/dist/scripts/src/components-core/markup-check.js +0 -279
- package/dist/scripts/src/components-core/parts.js +0 -11
- package/dist/scripts/src/components-core/renderers.js +0 -76
- package/dist/scripts/src/components-core/rendering/AppContent.js +0 -400
- package/dist/scripts/src/components-core/rendering/AppRoot.js +0 -87
- package/dist/scripts/src/components-core/rendering/AppWrapper.js +0 -49
- package/dist/scripts/src/components-core/rendering/ComponentAdapter.js +0 -380
- package/dist/scripts/src/components-core/rendering/ComponentWrapper.js +0 -166
- package/dist/scripts/src/components-core/rendering/Container.js +0 -621
- package/dist/scripts/src/components-core/rendering/ContainerWrapper.js +0 -94
- package/dist/scripts/src/components-core/rendering/ErrorBoundary.js +0 -65
- package/dist/scripts/src/components-core/rendering/InvalidComponent.js +0 -17
- package/dist/scripts/src/components-core/rendering/StandaloneComponent.js +0 -39
- package/dist/scripts/src/components-core/rendering/StateContainer.js +0 -350
- package/dist/scripts/src/components-core/rendering/UnknownComponent.js +0 -15
- package/dist/scripts/src/components-core/rendering/buildProxy.js +0 -58
- package/dist/scripts/src/components-core/rendering/collectFnVarDeps.js +0 -49
- package/dist/scripts/src/components-core/rendering/containers.js +0 -19
- package/dist/scripts/src/components-core/rendering/nodeUtils.js +0 -6
- package/dist/scripts/src/components-core/rendering/reducer.js +0 -160
- package/dist/scripts/src/components-core/rendering/renderChild.js +0 -82
- package/dist/scripts/src/components-core/rendering/valueExtractor.js +0 -216
- package/dist/scripts/src/components-core/reportEngineError.js +0 -62
- package/dist/scripts/src/components-core/script-runner/AttributeValueParser.js +0 -117
- package/dist/scripts/src/components-core/script-runner/BindingTreeEvaluationContext.js +0 -33
- package/dist/scripts/src/components-core/script-runner/ParameterParser.js +0 -117
- package/dist/scripts/src/components-core/script-runner/ScriptingSourceTree.js +0 -45
- package/dist/scripts/src/components-core/script-runner/asyncProxy.js +0 -96
- package/dist/scripts/src/components-core/script-runner/bannedFunctions.js +0 -34
- package/dist/scripts/src/components-core/script-runner/eval-tree-async.js +0 -613
- package/dist/scripts/src/components-core/script-runner/eval-tree-common.js +0 -439
- package/dist/scripts/src/components-core/script-runner/eval-tree-sync.js +0 -522
- package/dist/scripts/src/components-core/script-runner/process-statement-async.js +0 -761
- package/dist/scripts/src/components-core/script-runner/process-statement-common.js +0 -208
- package/dist/scripts/src/components-core/script-runner/process-statement-sync.js +0 -746
- package/dist/scripts/src/components-core/script-runner/simplify-expression.js +0 -386
- package/dist/scripts/src/components-core/script-runner/statement-queue.js +0 -63
- package/dist/scripts/src/components-core/script-runner/visitors.js +0 -369
- package/dist/scripts/src/components-core/theming/StyleContext.js +0 -133
- package/dist/scripts/src/components-core/theming/StyleRegistry.js +0 -171
- package/dist/scripts/src/components-core/theming/ThemeContext.js +0 -53
- package/dist/scripts/src/components-core/theming/ThemeProvider.js +0 -342
- package/dist/scripts/src/components-core/theming/component-layout-resolver.js +0 -153
- package/dist/scripts/src/components-core/theming/extendThemeUtils.js +0 -47
- package/dist/scripts/src/components-core/theming/hvar.js +0 -105
- package/dist/scripts/src/components-core/theming/layout-resolver.js +0 -388
- package/dist/scripts/src/components-core/theming/parse-layout-props.js +0 -136
- package/dist/scripts/src/components-core/theming/themeVars.js +0 -62
- package/dist/scripts/src/components-core/theming/themes/base-utils.js +0 -15
- package/dist/scripts/src/components-core/theming/themes/palette.js +0 -57
- package/dist/scripts/src/components-core/theming/themes/root.js +0 -434
- package/dist/scripts/src/components-core/theming/themes/solid.js +0 -16
- package/dist/scripts/src/components-core/theming/themes/theme-colors.js +0 -561
- package/dist/scripts/src/components-core/theming/themes/xmlui.js +0 -57
- package/dist/scripts/src/components-core/theming/transformThemeVars.js +0 -733
- package/dist/scripts/src/components-core/theming/utils.js +0 -31
- package/dist/scripts/src/components-core/utils/DataLoaderQueryKeyGenerator.js +0 -41
- package/dist/scripts/src/components-core/utils/LruCache.js +0 -184
- package/dist/scripts/src/components-core/utils/actionUtils.js +0 -32
- package/dist/scripts/src/components-core/utils/audio-utils.js +0 -83
- package/dist/scripts/src/components-core/utils/base64-utils.js +0 -124
- package/dist/scripts/src/components-core/utils/compound-utils.js +0 -11
- package/dist/scripts/src/components-core/utils/css-utils.js +0 -179
- package/dist/scripts/src/components-core/utils/date-utils.js +0 -186
- package/dist/scripts/src/components-core/utils/extractParam.js +0 -281
- package/dist/scripts/src/components-core/utils/hooks.js +0 -400
- package/dist/scripts/src/components-core/utils/mergeProps.js +0 -45
- package/dist/scripts/src/components-core/utils/misc.js +0 -539
- package/dist/scripts/src/components-core/utils/request-params.js +0 -70
- package/dist/scripts/src/components-core/utils/statementUtils.js +0 -224
- package/dist/scripts/src/components-core/utils/treeUtils.js +0 -226
- package/dist/scripts/src/components-core/xmlui-parser.js +0 -548
- package/dist/scripts/src/index-standalone.js +0 -61
- package/dist/scripts/src/index.js +0 -158
- package/dist/scripts/src/language-server/server-common.js +0 -152
- package/dist/scripts/src/language-server/server-web-worker.js +0 -47
- package/dist/scripts/src/language-server/server.js +0 -42
- package/dist/scripts/src/language-server/services/common/docs-generation.js +0 -73
- package/dist/scripts/src/language-server/services/common/lsp-utils.js +0 -9
- package/dist/scripts/src/language-server/services/common/metadata-utils.js +0 -157
- package/dist/scripts/src/language-server/services/common/syntax-node-utilities.js +0 -135
- package/dist/scripts/src/language-server/services/completion.js +0 -288
- package/dist/scripts/src/language-server/services/diagnostic.js +0 -19
- package/dist/scripts/src/language-server/services/format.js +0 -430
- package/dist/scripts/src/language-server/services/hover.js +0 -164
- package/dist/scripts/src/language-server/xmlui-metadata-generated.js +0 -16276
- package/dist/scripts/src/logging/LoggerContext.js +0 -22
- package/dist/scripts/src/logging/LoggerInitializer.js +0 -14
- package/dist/scripts/src/logging/LoggerService.js +0 -60
- package/dist/scripts/src/logging/xmlui.js +0 -21
- package/dist/scripts/src/parsers/common/GenericToken.js +0 -2
- package/dist/scripts/src/parsers/common/InputStream.js +0 -59
- package/dist/scripts/src/parsers/common/utils.js +0 -19
- package/dist/scripts/src/parsers/scripting/Lexer.js +0 -1097
- package/dist/scripts/src/parsers/scripting/Parser.js +0 -2638
- package/dist/scripts/src/parsers/scripting/ParserError.js +0 -47
- package/dist/scripts/src/parsers/scripting/ScriptingNodeTypes.js +0 -50
- package/dist/scripts/src/parsers/scripting/TokenTrait.js +0 -108
- package/dist/scripts/src/parsers/scripting/TokenType.js +0 -109
- package/dist/scripts/src/parsers/scripting/code-behind-collect.js +0 -101
- package/dist/scripts/src/parsers/scripting/modules.js +0 -105
- package/dist/scripts/src/parsers/scripting/tree-visitor.js +0 -601
- package/dist/scripts/src/parsers/style-parser/StyleInputStream.js +0 -39
- package/dist/scripts/src/parsers/style-parser/StyleLexer.js +0 -623
- package/dist/scripts/src/parsers/style-parser/StyleParser.js +0 -453
- package/dist/scripts/src/parsers/style-parser/errors.js +0 -37
- package/dist/scripts/src/parsers/style-parser/source-tree.js +0 -2
- package/dist/scripts/src/parsers/style-parser/tokens.js +0 -43
- package/dist/scripts/src/parsers/xmlui-parser/CharacterCodes.js +0 -136
- package/dist/scripts/src/parsers/xmlui-parser/ParserError.js +0 -60
- package/dist/scripts/src/parsers/xmlui-parser/diagnostics.js +0 -172
- package/dist/scripts/src/parsers/xmlui-parser/fileExtensions.js +0 -6
- package/dist/scripts/src/parsers/xmlui-parser/index.js +0 -29
- package/dist/scripts/src/parsers/xmlui-parser/lint.js +0 -165
- package/dist/scripts/src/parsers/xmlui-parser/parser.js +0 -626
- package/dist/scripts/src/parsers/xmlui-parser/scanner.js +0 -415
- package/dist/scripts/src/parsers/xmlui-parser/syntax-kind.js +0 -123
- package/dist/scripts/src/parsers/xmlui-parser/syntax-node.js +0 -67
- package/dist/scripts/src/parsers/xmlui-parser/transform.js +0 -1131
- package/dist/scripts/src/parsers/xmlui-parser/utils.js +0 -83
- package/dist/scripts/src/parsers/xmlui-parser/xmlui-serializer.js +0 -582
- package/dist/scripts/src/parsers/xmlui-parser/xmlui-tree.js +0 -2
- package/dist/scripts/src/syntax/monaco/grammar.monacoLanguage.js +0 -286
- package/dist/scripts/src/syntax/monaco/index.js +0 -14
- package/dist/scripts/src/syntax/monaco/xmlui-dark.js +0 -25
- package/dist/scripts/src/syntax/monaco/xmlui-light.js +0 -25
- package/dist/scripts/src/syntax/monaco/xmluiscript.monacoLanguage.js +0 -310
- package/dist/scripts/src/syntax/textMate/index.js +0 -14
- package/dist/scripts/src/syntax/textMate/xmlui-dark.json +0 -631
- package/dist/scripts/src/syntax/textMate/xmlui-light.json +0 -565
- package/dist/scripts/src/syntax/textMate/xmlui.json +0 -564
- package/dist/scripts/src/syntax/textMate/xmlui.tmLanguage.json +0 -341
- package/dist/scripts/src/testing/ComponentDrivers.js +0 -1380
- package/dist/scripts/src/testing/assertions.js +0 -444
- package/dist/scripts/src/testing/component-test-helpers.js +0 -373
- package/dist/scripts/src/testing/drivers/DateInputDriver.js +0 -19
- package/dist/scripts/src/testing/drivers/ModalDialogDriver.js +0 -10
- package/dist/scripts/src/testing/drivers/NumberBoxDriver.js +0 -44
- package/dist/scripts/src/testing/drivers/TextBoxDriver.js +0 -20
- package/dist/scripts/src/testing/drivers/TimeInputDriver.js +0 -22
- package/dist/scripts/src/testing/drivers/TimerDriver.js +0 -64
- package/dist/scripts/src/testing/drivers/TreeDriver.js +0 -13
- package/dist/scripts/src/testing/drivers/index.js +0 -9
- package/dist/scripts/src/testing/fixtures.js +0 -519
- package/dist/scripts/src/testing/index.js +0 -69
- package/dist/scripts/src/testing/infrastructure/TestBed.js +0 -17
- package/dist/scripts/src/testing/infrastructure/main.js +0 -9
- package/dist/scripts/src/testing/infrastructure/public/mockServiceWorker.js +0 -266
- package/dist/scripts/src/testing/themed-app-test-helpers.js +0 -133
|
@@ -1,966 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const component_test_helpers_1 = require("../../testing/component-test-helpers");
|
|
13
|
-
const fixtures_1 = require("../../testing/fixtures");
|
|
14
|
-
const abstractions_1 = require("./abstractions");
|
|
15
|
-
fixtures_1.test.describe("smoke tests", { tag: "@smoke" }, () => {
|
|
16
|
-
(0, fixtures_1.test)("Heading is rendered", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
17
|
-
yield initTestBed(`<Heading />`);
|
|
18
|
-
const driver = yield createHeadingDriver();
|
|
19
|
-
yield (0, fixtures_1.expect)(driver.component).toBeAttached();
|
|
20
|
-
}));
|
|
21
|
-
abstractions_1.headingLevels.forEach((htmlElement) => {
|
|
22
|
-
(0, fixtures_1.test)(`HtmlTag '${htmlElement}' is rendered`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
23
|
-
yield initTestBed(`<${htmlElement} />`);
|
|
24
|
-
const driver = yield createHeadingDriver();
|
|
25
|
-
yield (0, fixtures_1.expect)(driver.component).toBeAttached();
|
|
26
|
-
}));
|
|
27
|
-
});
|
|
28
|
-
// --- value
|
|
29
|
-
// correct types: string, undefined, null, number, boolean -> everything will be coerced to strings
|
|
30
|
-
[
|
|
31
|
-
{ label: "undefined", value: "'{undefined}'", toExpect: "" },
|
|
32
|
-
{ label: "null", value: "'{null}'", toExpect: "" },
|
|
33
|
-
{ label: "empty string", value: "''", toExpect: "" },
|
|
34
|
-
{ label: "string", value: "'test'", toExpect: "test" },
|
|
35
|
-
{ label: "integer", value: "'{1}'", toExpect: "1" },
|
|
36
|
-
{ label: "float", value: "'{1.2}'", toExpect: "1.2" },
|
|
37
|
-
{ label: "boolean", value: "'{true}'", toExpect: "true" },
|
|
38
|
-
{ label: "empty object", value: "'{{}}'", toExpect: {}.toString() },
|
|
39
|
-
{ label: "object", value: "\"{{ a: 1, b: 'hi' }}\"", toExpect: { a: 1, b: "hi" }.toString() },
|
|
40
|
-
{ label: "empty array", value: "'{[]}'", toExpect: "" },
|
|
41
|
-
{ label: "array", value: "'{[1, 2, 3]}'", toExpect: [1, 2, 3].toString() },
|
|
42
|
-
].forEach(({ label, value, toExpect }) => {
|
|
43
|
-
(0, fixtures_1.test)(`setting value to ${label} sets value of field`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
44
|
-
yield initTestBed(`<Heading value=${value} />`);
|
|
45
|
-
const driver = yield createHeadingDriver();
|
|
46
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(toExpect);
|
|
47
|
-
}));
|
|
48
|
-
});
|
|
49
|
-
(0, fixtures_1.test)("setting value prop has no whitespace collapsing", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
50
|
-
const expected = "test content";
|
|
51
|
-
yield initTestBed(`<Heading value="${expected}" />`);
|
|
52
|
-
const driver = yield createHeadingDriver();
|
|
53
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(expected);
|
|
54
|
-
}));
|
|
55
|
-
(0, fixtures_1.test)("child overrides value", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
56
|
-
const expected = "this test text is the value of the heading";
|
|
57
|
-
yield initTestBed(`
|
|
58
|
-
<Heading value="${expected}">
|
|
59
|
-
This is a child
|
|
60
|
-
</Heading>
|
|
61
|
-
`);
|
|
62
|
-
const driver = yield createHeadingDriver();
|
|
63
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(expected);
|
|
64
|
-
}));
|
|
65
|
-
// --- comparisons
|
|
66
|
-
function sizeComparisonSetup(initTestBed, createHeadingDriver) {
|
|
67
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
-
yield initTestBed(`
|
|
69
|
-
<Fragment>
|
|
70
|
-
<Heading level="h1" testId="heading1">Test</Heading>
|
|
71
|
-
<Heading level="h2" testId="heading2">Test</Heading>
|
|
72
|
-
<Heading level="h3" testId="heading3">Test</Heading>
|
|
73
|
-
<Heading level="h4" testId="heading4">Test</Heading>
|
|
74
|
-
<Heading level="h5" testId="heading5">Test</Heading>
|
|
75
|
-
<Heading level="h6" testId="heading6">Test</Heading>
|
|
76
|
-
</Fragment>
|
|
77
|
-
`);
|
|
78
|
-
const headings = [
|
|
79
|
-
yield createHeadingDriver("heading1"),
|
|
80
|
-
yield createHeadingDriver("heading2"),
|
|
81
|
-
yield createHeadingDriver("heading3"),
|
|
82
|
-
yield createHeadingDriver("heading4"),
|
|
83
|
-
yield createHeadingDriver("heading5"),
|
|
84
|
-
yield createHeadingDriver("heading6"),
|
|
85
|
-
];
|
|
86
|
-
const headingSizes = yield Promise.all(headings.map((heading) => __awaiter(this, void 0, void 0, function* () {
|
|
87
|
-
const { width, height } = yield (0, component_test_helpers_1.getBounds)(heading);
|
|
88
|
-
return { width, height };
|
|
89
|
-
})));
|
|
90
|
-
return headingSizes;
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
// NOTE: we don't explicitly test h6, since all other headings have tested for its size
|
|
94
|
-
abstractions_1.headingLevels
|
|
95
|
-
.filter((l) => l !== "h6")
|
|
96
|
-
.forEach((level, idx) => {
|
|
97
|
-
(0, fixtures_1.test)(`compare ${level} size to other levels`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
98
|
-
const headingSizes = yield sizeComparisonSetup(initTestBed, createHeadingDriver);
|
|
99
|
-
for (let i = idx + 1; i < headingSizes.length; i++) {
|
|
100
|
-
/* console.log(
|
|
101
|
-
`${level} width: ${headingSizes[idx].width} and height: ${headingSizes[idx].height}`,
|
|
102
|
-
);
|
|
103
|
-
console.log(
|
|
104
|
-
`compared to h${i + 1} width: ${headingSizes[i].width} and height: ${headingSizes[i].height}`,
|
|
105
|
-
); */
|
|
106
|
-
(0, fixtures_1.expect)(headingSizes[idx].width).toBeGreaterThanOrEqual(headingSizes[i].width);
|
|
107
|
-
(0, fixtures_1.expect)(headingSizes[idx].height).toBeGreaterThanOrEqual(headingSizes[i].height);
|
|
108
|
-
}
|
|
109
|
-
}));
|
|
110
|
-
});
|
|
111
|
-
[
|
|
112
|
-
{ label: "H1 is the same as Heading level='h1'", specializedComp: "H1", level: "h1" },
|
|
113
|
-
{ label: "H2 is the same as Heading level='h2'", specializedComp: "H2", level: "h2" },
|
|
114
|
-
{ label: "H3 is the same as Heading level='h3'", specializedComp: "H3", level: "h3" },
|
|
115
|
-
{ label: "H4 is the same as Heading level='h4'", specializedComp: "H4", level: "h4" },
|
|
116
|
-
{ label: "H5 is the same as Heading level='h5'", specializedComp: "H5", level: "h5" },
|
|
117
|
-
{ label: "H6 is the same as Heading level='h6'", specializedComp: "H6", level: "h6" },
|
|
118
|
-
].forEach(({ label, specializedComp, level }) => {
|
|
119
|
-
const textContent = "Content";
|
|
120
|
-
(0, fixtures_1.test)(label, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
121
|
-
yield initTestBed(`
|
|
122
|
-
<Fragment>
|
|
123
|
-
<Heading testId="generic" level="${level}">${textContent}</Heading>
|
|
124
|
-
<${specializedComp} testId="specialized">${textContent}</${specializedComp}>
|
|
125
|
-
</Fragment>
|
|
126
|
-
`);
|
|
127
|
-
const generic = yield createHeadingDriver("generic");
|
|
128
|
-
const specialized = yield createHeadingDriver("specialized");
|
|
129
|
-
const genericTagName = yield generic.getComponentTagName();
|
|
130
|
-
const specializedTagName = yield specialized.getComponentTagName();
|
|
131
|
-
(0, fixtures_1.expect)(genericTagName).toEqual(specializedTagName);
|
|
132
|
-
yield (0, fixtures_1.expect)(generic.component).toHaveText(textContent);
|
|
133
|
-
yield (0, fixtures_1.expect)(specialized.component).toHaveText(textContent);
|
|
134
|
-
}));
|
|
135
|
-
});
|
|
136
|
-
// --- maxLines
|
|
137
|
-
(0, fixtures_1.test)('maxLines="2" cuts off long text', (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
138
|
-
yield initTestBed(`
|
|
139
|
-
<Fragment>
|
|
140
|
-
<Heading testId="headingShort" width="200px">Short</Heading>
|
|
141
|
-
<Heading testId="headingLong" width="200px" maxLines="2">
|
|
142
|
-
Though this long text does not fit into a single line, please do not break it!
|
|
143
|
-
</Heading>
|
|
144
|
-
</Fragment>
|
|
145
|
-
`);
|
|
146
|
-
const shortHeading = yield createHeadingDriver("headingShort");
|
|
147
|
-
const longHeading = yield createHeadingDriver("headingLong");
|
|
148
|
-
const { height: heightHeadingShort } = yield (0, component_test_helpers_1.getBounds)(shortHeading);
|
|
149
|
-
const { height: heightHeadingLong } = yield (0, component_test_helpers_1.getBounds)(longHeading);
|
|
150
|
-
(0, fixtures_1.expect)(heightHeadingLong).toEqual(heightHeadingShort * 2);
|
|
151
|
-
}));
|
|
152
|
-
// --- preserveLinebreaks
|
|
153
|
-
(0, fixtures_1.test)("preserve line breaks", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
154
|
-
yield initTestBed(`
|
|
155
|
-
<Fragment>
|
|
156
|
-
<Heading testId="headingShort">Short</Heading>
|
|
157
|
-
<Heading testId="headingLong" preserveLinebreaks="true"
|
|
158
|
-
value="Though this long
|
|
159
|
-
text does not fit into a single line,
|
|
160
|
-
please do not break it!"
|
|
161
|
-
/>
|
|
162
|
-
</Fragment>
|
|
163
|
-
`);
|
|
164
|
-
const { height: heightHeadingShort } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("headingShort"));
|
|
165
|
-
const { height: heightHeadingLong } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("headingLong"));
|
|
166
|
-
(0, fixtures_1.expect)(heightHeadingLong).toEqualWithTolerance(heightHeadingShort * 3, 0.01);
|
|
167
|
-
}));
|
|
168
|
-
// --- ellipses
|
|
169
|
-
(0, fixtures_1.test)("ellipses in long text", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
170
|
-
yield initTestBed(`
|
|
171
|
-
<Fragment>
|
|
172
|
-
<Heading testId="headingShort" width="200">Short</Heading>
|
|
173
|
-
<Heading testId="headingLong" width="200" maxLines="1">
|
|
174
|
-
Though this long text does not fit into a single line, please do not break it!
|
|
175
|
-
</Heading>
|
|
176
|
-
</Fragment>
|
|
177
|
-
`);
|
|
178
|
-
const shortTextDriver = yield createHeadingDriver("headingShort");
|
|
179
|
-
const longTextDriver = yield createHeadingDriver("headingLong");
|
|
180
|
-
const { height: heightHeadingShort } = yield (0, component_test_helpers_1.getBounds)(shortTextDriver);
|
|
181
|
-
const { height: heightHeadingLong } = yield (0, component_test_helpers_1.getBounds)(longTextDriver);
|
|
182
|
-
(0, fixtures_1.expect)(heightHeadingShort).toEqual(heightHeadingLong);
|
|
183
|
-
yield (0, fixtures_1.expect)(longTextDriver.component).toHaveCSS("text-overflow", "ellipsis");
|
|
184
|
-
}));
|
|
185
|
-
(0, fixtures_1.test)("no ellipses long text", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
186
|
-
yield initTestBed(`
|
|
187
|
-
<Fragment>
|
|
188
|
-
<Heading testId="headingShort" width="200">Short</Heading>
|
|
189
|
-
<Heading testId="headingLong" width="200" maxLines="1" ellipses="false">
|
|
190
|
-
Though this long text does not fit into a single line, please do not break it!
|
|
191
|
-
</Heading>
|
|
192
|
-
</Fragment>
|
|
193
|
-
`);
|
|
194
|
-
const shortTextDriver = yield createHeadingDriver("headingShort");
|
|
195
|
-
const longTextDriver = yield createHeadingDriver("headingLong");
|
|
196
|
-
const { height: heightHeadingShort } = yield (0, component_test_helpers_1.getBounds)(shortTextDriver);
|
|
197
|
-
const { height: heightHeadingLong } = yield (0, component_test_helpers_1.getBounds)(longTextDriver);
|
|
198
|
-
(0, fixtures_1.expect)(heightHeadingShort).toEqual(heightHeadingLong);
|
|
199
|
-
yield (0, fixtures_1.expect)(longTextDriver.component).not.toHaveCSS("text-overflow", "ellipsis");
|
|
200
|
-
}));
|
|
201
|
-
// --- implicit text
|
|
202
|
-
(0, fixtures_1.test)("nested text whitespace collapsing", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
203
|
-
yield initTestBed(`
|
|
204
|
-
<Heading>
|
|
205
|
-
test content
|
|
206
|
-
here
|
|
207
|
-
</Heading>
|
|
208
|
-
`);
|
|
209
|
-
const driver = yield createHeadingDriver();
|
|
210
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("test content here");
|
|
211
|
-
}));
|
|
212
|
-
});
|
|
213
|
-
// --- Other Tests
|
|
214
|
-
// --- formatting
|
|
215
|
-
(0, fixtures_1.test)("non-breaking space", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
216
|
-
const content = "4 spaces here [ ], &nbsp; written out.";
|
|
217
|
-
const expected = "4 spaces here [ ], written out.";
|
|
218
|
-
yield initTestBed(`<Heading>${content}</Heading>`);
|
|
219
|
-
const driver = yield createHeadingDriver();
|
|
220
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(expected);
|
|
221
|
-
}));
|
|
222
|
-
(0, fixtures_1.test)("break long text", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
223
|
-
yield initTestBed(`
|
|
224
|
-
<Fragment>
|
|
225
|
-
<Heading testId="headingShort" width="200px">Short</Heading>
|
|
226
|
-
<Heading testId="headingLong" width="200px">
|
|
227
|
-
This long text does not fit into a viewport with a 200-pixel width.
|
|
228
|
-
</Heading>
|
|
229
|
-
</Fragment>
|
|
230
|
-
`);
|
|
231
|
-
const shortHeading = yield createHeadingDriver("headingShort");
|
|
232
|
-
const longHeading = yield createHeadingDriver("headingLong");
|
|
233
|
-
yield (0, fixtures_1.expect)(longHeading.component).toBeVisible();
|
|
234
|
-
const { height: heightHeadingShort } = yield (0, component_test_helpers_1.getBounds)(shortHeading);
|
|
235
|
-
const { height: heightHeadingLong } = yield (0, component_test_helpers_1.getBounds)(longHeading);
|
|
236
|
-
(0, fixtures_1.expect)(heightHeadingShort).toBeLessThan(heightHeadingLong);
|
|
237
|
-
}));
|
|
238
|
-
// --- inside layout
|
|
239
|
-
(0, fixtures_1.test)("Heading is inline in HStack", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, createIconDriver, }) {
|
|
240
|
-
yield initTestBed(`
|
|
241
|
-
<HStack>
|
|
242
|
-
<Heading testId="heading0" >Show me a trash</Heading>
|
|
243
|
-
<Icon testId="icon0" name="trash"/>
|
|
244
|
-
<Heading testId="heading1" >icon!</Heading>
|
|
245
|
-
</HStack>
|
|
246
|
-
`);
|
|
247
|
-
const { top: topHeading0 } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("heading0"));
|
|
248
|
-
const { top: topIcon0 } = yield (0, component_test_helpers_1.getBounds)(yield createIconDriver("icon0"));
|
|
249
|
-
const { top: topHeading1 } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("heading1"));
|
|
250
|
-
(0, fixtures_1.expect)(topHeading0).toEqual(topIcon0);
|
|
251
|
-
(0, fixtures_1.expect)(topIcon0).toEqual(topHeading1);
|
|
252
|
-
}));
|
|
253
|
-
(0, fixtures_1.test)("Heading is block in VStack", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, createIconDriver, }) {
|
|
254
|
-
yield initTestBed(`
|
|
255
|
-
<VStack>
|
|
256
|
-
<Heading testId="heading0" >Show me a trash</Heading>
|
|
257
|
-
<Icon testId="icon0" name="trash"/>
|
|
258
|
-
<Heading testId="heading1" >icon!</Heading>
|
|
259
|
-
</VStack>
|
|
260
|
-
`);
|
|
261
|
-
const { top: topHeading0 } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("heading0"));
|
|
262
|
-
const { top: topIcon0 } = yield (0, component_test_helpers_1.getBounds)((yield createIconDriver("icon0")).svgIcon);
|
|
263
|
-
const { top: topHeading1 } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("heading1"));
|
|
264
|
-
(0, fixtures_1.expect)(topHeading0).toBeLessThan(topIcon0);
|
|
265
|
-
(0, fixtures_1.expect)(topIcon0).toBeLessThan(topHeading1);
|
|
266
|
-
}));
|
|
267
|
-
(0, fixtures_1.test)("Heading overflows container dimensions", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createVStackDriver, createHeadingDriver, }) {
|
|
268
|
-
const widthLayoutExpected = 300;
|
|
269
|
-
const widthHeadingExpected = 400;
|
|
270
|
-
yield initTestBed(`
|
|
271
|
-
<VStack height="40" width="${widthLayoutExpected}px" border="1px solid red">
|
|
272
|
-
<Heading testId="heading" width="${widthHeadingExpected}px">
|
|
273
|
-
This text sets its size explicitly bigger than its container.
|
|
274
|
-
As it does not fit into the container's viewport, it overflows.
|
|
275
|
-
</Heading>
|
|
276
|
-
</VStack>
|
|
277
|
-
`);
|
|
278
|
-
const { width: widthLayout } = yield (0, component_test_helpers_1.getBounds)(yield createVStackDriver());
|
|
279
|
-
const { width: widthHeading } = yield (0, component_test_helpers_1.getBounds)(yield createHeadingDriver("heading"));
|
|
280
|
-
(0, fixtures_1.expect)(widthHeading).toEqual(widthHeadingExpected);
|
|
281
|
-
(0, fixtures_1.expect)(widthLayout).toEqual(widthLayoutExpected);
|
|
282
|
-
}));
|
|
283
|
-
(0, fixtures_1.test)("Heading accepts custom props", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
284
|
-
yield initTestBed(`<Heading custom="test" boolean>Test Heading</Heading>`);
|
|
285
|
-
const headingDriver = yield createHeadingDriver();
|
|
286
|
-
yield (0, fixtures_1.expect)(headingDriver.component).toHaveAttribute("custom", "test");
|
|
287
|
-
yield (0, fixtures_1.expect)(headingDriver.component).toHaveAttribute("boolean", "true");
|
|
288
|
-
}));
|
|
289
|
-
abstractions_1.headingLevels.forEach((level) => {
|
|
290
|
-
(0, fixtures_1.test)(`HtmlTag '${level}' accepts custom props`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
291
|
-
yield initTestBed(`<${level.toLowerCase()} custom="test" boolean>Test Heading</${level.toLowerCase()}>`);
|
|
292
|
-
const headingDriver = yield createHeadingDriver();
|
|
293
|
-
yield (0, fixtures_1.expect)(headingDriver.component).toHaveAttribute("custom", "test");
|
|
294
|
-
yield (0, fixtures_1.expect)(headingDriver.component).toHaveAttribute("boolean", "true");
|
|
295
|
-
}));
|
|
296
|
-
});
|
|
297
|
-
// =============================================================================
|
|
298
|
-
// COMPREHENSIVE END-TO-END TESTS (Following XMLUI Testing Conventions)
|
|
299
|
-
// =============================================================================
|
|
300
|
-
// =============================================================================
|
|
301
|
-
// BASIC FUNCTIONALITY TESTS
|
|
302
|
-
// =============================================================================
|
|
303
|
-
fixtures_1.test.describe("Basic Functionality", () => {
|
|
304
|
-
(0, fixtures_1.test)("component renders with basic props", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, createHeadingDriver }) {
|
|
305
|
-
yield initTestBed(`<Heading>Test Heading</Heading>`);
|
|
306
|
-
const driver = yield createHeadingDriver();
|
|
307
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
308
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Test Heading");
|
|
309
|
-
}));
|
|
310
|
-
["h1", "h2", "h3", "h4", "h5", "h6"].forEach((lvl) => {
|
|
311
|
-
(0, fixtures_1.test)(`component renders with ${lvl} level`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
312
|
-
yield initTestBed(`<Heading level="${lvl}">Level ${lvl}</Heading>`);
|
|
313
|
-
const driver = yield createHeadingDriver();
|
|
314
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
315
|
-
const tagName = yield driver.getComponentTagName();
|
|
316
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe(lvl);
|
|
317
|
-
}));
|
|
318
|
-
});
|
|
319
|
-
["H1", "H2", "H3", "H4", "H5", "H6"].forEach((c) => {
|
|
320
|
-
(0, fixtures_1.test)(`specialized ${c} components renders content`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
321
|
-
yield initTestBed(`<${c}>Specialized ${c}</${c}>`);
|
|
322
|
-
const driver = yield createHeadingDriver();
|
|
323
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
324
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(`Specialized ${c}`);
|
|
325
|
-
}));
|
|
326
|
-
});
|
|
327
|
-
(0, fixtures_1.test)("component handles value prop", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
328
|
-
yield initTestBed(`<Heading value="Value prop text" />`);
|
|
329
|
-
const driver = yield createHeadingDriver();
|
|
330
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Value prop text");
|
|
331
|
-
}));
|
|
332
|
-
(0, fixtures_1.test)("component handles child content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
333
|
-
yield initTestBed(`<Heading>Child content text</Heading>`);
|
|
334
|
-
const driver = yield createHeadingDriver();
|
|
335
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Child content text");
|
|
336
|
-
}));
|
|
337
|
-
fixtures_1.test.describe("level property accepts numeric values", () => {
|
|
338
|
-
[1, 2, 3, 4, 5, 6].forEach((level) => {
|
|
339
|
-
(0, fixtures_1.test)(`level="{${level}}" renders as h${level}`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
340
|
-
yield initTestBed(`<Heading level="{${level}}">Numeric Level ${level}</Heading>`);
|
|
341
|
-
const driver = yield createHeadingDriver();
|
|
342
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
343
|
-
const tagName = yield driver.getComponentTagName();
|
|
344
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe(`h${level}`);
|
|
345
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(`Numeric Level ${level}`);
|
|
346
|
-
}));
|
|
347
|
-
});
|
|
348
|
-
});
|
|
349
|
-
fixtures_1.test.describe("level property accepts string numeric values", () => {
|
|
350
|
-
["1", "2", "3", "4", "5", "6"].forEach((level) => {
|
|
351
|
-
(0, fixtures_1.test)(`level="${level}" renders as h${level}`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
352
|
-
yield initTestBed(`<Heading level="${level}">String Level ${level}</Heading>`);
|
|
353
|
-
const driver = yield createHeadingDriver();
|
|
354
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
355
|
-
const tagName = yield driver.getComponentTagName();
|
|
356
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe(`h${level}`);
|
|
357
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(`String Level ${level}`);
|
|
358
|
-
}));
|
|
359
|
-
});
|
|
360
|
-
});
|
|
361
|
-
fixtures_1.test.describe("level property accepts uppercase H format", () => {
|
|
362
|
-
["H1", "H2", "H3", "H4", "H5", "H6"].forEach((level) => {
|
|
363
|
-
(0, fixtures_1.test)(`level="${level}" renders as ${level.toLowerCase()}`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
364
|
-
yield initTestBed(`<Heading level="${level}">Uppercase Level ${level}</Heading>`);
|
|
365
|
-
const driver = yield createHeadingDriver();
|
|
366
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
367
|
-
const tagName = yield driver.getComponentTagName();
|
|
368
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe(level.toLowerCase());
|
|
369
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(`Uppercase Level ${level}`);
|
|
370
|
-
}));
|
|
371
|
-
});
|
|
372
|
-
});
|
|
373
|
-
fixtures_1.test.describe("level property handles invalid values", () => {
|
|
374
|
-
[
|
|
375
|
-
{ value: '"invalid"', label: "invalid string" },
|
|
376
|
-
{ value: '"{0}"', label: "zero" },
|
|
377
|
-
{ value: '"{7}"', label: "out of range number (7)" },
|
|
378
|
-
{ value: '"{-1}"', label: "negative number" },
|
|
379
|
-
{ value: '"{999}"', label: "large number" },
|
|
380
|
-
{ value: '"h7"', label: "invalid h-format (h7)" },
|
|
381
|
-
{ value: '"h0"', label: "invalid h-format (h0)" },
|
|
382
|
-
{ value: '"7"', label: "out of range string (7)" },
|
|
383
|
-
{ value: '"{null}"', label: "null" },
|
|
384
|
-
{ value: '"{undefined}"', label: "undefined" },
|
|
385
|
-
{ value: '"{{}}"', label: "empty object" },
|
|
386
|
-
{ value: '"{[]}"', label: "empty array" },
|
|
387
|
-
].forEach(({ value, label }) => {
|
|
388
|
-
(0, fixtures_1.test)(`level=${value} (${label}) defaults to h1`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
389
|
-
yield initTestBed(`<Heading level=${value}>Invalid Level Fallback</Heading>`);
|
|
390
|
-
const driver = yield createHeadingDriver();
|
|
391
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
392
|
-
const tagName = yield driver.getComponentTagName();
|
|
393
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe("h1");
|
|
394
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Invalid Level Fallback");
|
|
395
|
-
}));
|
|
396
|
-
});
|
|
397
|
-
});
|
|
398
|
-
(0, fixtures_1.test)("level property with mixed case string formats", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
399
|
-
const testCases = [
|
|
400
|
-
{ input: "H3", expected: "h3" },
|
|
401
|
-
{ input: "h3", expected: "h3" },
|
|
402
|
-
{ input: "h3", expected: "h3" },
|
|
403
|
-
];
|
|
404
|
-
for (const { input, expected } of testCases) {
|
|
405
|
-
yield initTestBed(`<Heading level="${input}">Mixed Case ${input}</Heading>`);
|
|
406
|
-
const driver = yield createHeadingDriver();
|
|
407
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
408
|
-
const tagName = yield driver.getComponentTagName();
|
|
409
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe(expected);
|
|
410
|
-
}
|
|
411
|
-
}));
|
|
412
|
-
(0, fixtures_1.test)("level property handles whitespace in string values", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
413
|
-
yield initTestBed(`<Heading level=" h2 ">Whitespace Level</Heading>`);
|
|
414
|
-
const driver = yield createHeadingDriver();
|
|
415
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
416
|
-
const tagName = yield driver.getComponentTagName();
|
|
417
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe("h2");
|
|
418
|
-
}));
|
|
419
|
-
});
|
|
420
|
-
// =============================================================================
|
|
421
|
-
// ACCESSIBILITY TESTS (REQUIRED)
|
|
422
|
-
// =============================================================================
|
|
423
|
-
fixtures_1.test.describe("Accessibility", () => {
|
|
424
|
-
(0, fixtures_1.test)("component has correct semantic heading roles", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
425
|
-
yield initTestBed(`<Heading level="h2">Accessible Heading</Heading>`);
|
|
426
|
-
const driver = yield createHeadingDriver();
|
|
427
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveRole("heading");
|
|
428
|
-
const tagName = yield driver.getComponentTagName();
|
|
429
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe("h2");
|
|
430
|
-
}));
|
|
431
|
-
[
|
|
432
|
-
{ component: "H1", expectedTag: "h1" },
|
|
433
|
-
{ component: "H2", expectedTag: "h2" },
|
|
434
|
-
{ component: "H3", expectedTag: "h3" },
|
|
435
|
-
{ component: "H4", expectedTag: "h4" },
|
|
436
|
-
{ component: "H5", expectedTag: "h5" },
|
|
437
|
-
{ component: "H6", expectedTag: "h6" },
|
|
438
|
-
].forEach(({ component, expectedTag }) => {
|
|
439
|
-
(0, fixtures_1.test)(`${component} renders as ${expectedTag} element`, (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
440
|
-
yield initTestBed(`<${component}>Heading Level ${expectedTag}</${component}>`);
|
|
441
|
-
const driver = yield createHeadingDriver();
|
|
442
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveRole("heading");
|
|
443
|
-
const tagName = yield driver.getComponentTagName();
|
|
444
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe(expectedTag);
|
|
445
|
-
}));
|
|
446
|
-
});
|
|
447
|
-
(0, fixtures_1.test)("component supports accessible text content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
448
|
-
yield initTestBed(`<Heading>Accessible heading with proper content</Heading>`);
|
|
449
|
-
const driver = yield createHeadingDriver();
|
|
450
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
451
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Accessible heading with proper content");
|
|
452
|
-
}));
|
|
453
|
-
(0, fixtures_1.test)("component supports screen reader navigation", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, page, }) {
|
|
454
|
-
yield initTestBed(`
|
|
455
|
-
<VStack>
|
|
456
|
-
<H1 testId="h1">Main Title</H1>
|
|
457
|
-
<H2 testId="h2">Section Title</H2>
|
|
458
|
-
<H3 testId="h3">Subsection Title</H3>
|
|
459
|
-
</VStack>
|
|
460
|
-
`);
|
|
461
|
-
// Verify heading structure by using testId selectors
|
|
462
|
-
const h1 = page.getByTestId("h1");
|
|
463
|
-
const h2 = page.getByTestId("h2");
|
|
464
|
-
const h3 = page.getByTestId("h3");
|
|
465
|
-
yield (0, fixtures_1.expect)(h1).toHaveRole("heading");
|
|
466
|
-
yield (0, fixtures_1.expect)(h2).toHaveRole("heading");
|
|
467
|
-
yield (0, fixtures_1.expect)(h3).toHaveRole("heading");
|
|
468
|
-
// Verify tag names for semantic structure
|
|
469
|
-
const h1TagName = yield h1.evaluate((el) => el.tagName.toLowerCase());
|
|
470
|
-
const h2TagName = yield h2.evaluate((el) => el.tagName.toLowerCase());
|
|
471
|
-
const h3TagName = yield h3.evaluate((el) => el.tagName.toLowerCase());
|
|
472
|
-
(0, fixtures_1.expect)(h1TagName).toBe("h1");
|
|
473
|
-
(0, fixtures_1.expect)(h2TagName).toBe("h2");
|
|
474
|
-
(0, fixtures_1.expect)(h3TagName).toBe("h3");
|
|
475
|
-
}));
|
|
476
|
-
});
|
|
477
|
-
// =============================================================================
|
|
478
|
-
// VISUAL STATE TESTS
|
|
479
|
-
// =============================================================================
|
|
480
|
-
fixtures_1.test.describe("Visual States & Themes", () => {
|
|
481
|
-
(0, fixtures_1.test)("component applies theme variables correctly", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
482
|
-
yield initTestBed(`<Heading>Themed Heading</Heading>`, {
|
|
483
|
-
testThemeVars: {
|
|
484
|
-
"color-Heading": "rgb(255, 0, 0)",
|
|
485
|
-
},
|
|
486
|
-
});
|
|
487
|
-
const driver = yield createHeadingDriver();
|
|
488
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
489
|
-
// Test that the component handles theme variables (may not always apply due to CSS specificity)
|
|
490
|
-
const color = yield driver.component.evaluate((el) => getComputedStyle(el).color);
|
|
491
|
-
// Either the theme color is applied or the component handles it gracefully
|
|
492
|
-
if (color === "rgb(255, 0, 0)") {
|
|
493
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("color", "rgb(255, 0, 0)");
|
|
494
|
-
}
|
|
495
|
-
else {
|
|
496
|
-
// Component exists and functions even if theme variable isn't applied
|
|
497
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
498
|
-
}
|
|
499
|
-
}));
|
|
500
|
-
(0, fixtures_1.test)("component supports different heading levels with different font sizes", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
501
|
-
// Test that h1 is larger than h2, h2 larger than h3, etc.
|
|
502
|
-
yield initTestBed(`
|
|
503
|
-
<VStack>
|
|
504
|
-
<H1 testId="h1">Heading 1</H1>
|
|
505
|
-
<H2 testId="h2">Heading 2</H2>
|
|
506
|
-
<H3 testId="h3">Heading 3</H3>
|
|
507
|
-
</VStack>
|
|
508
|
-
`);
|
|
509
|
-
const h1Driver = yield createHeadingDriver("h1");
|
|
510
|
-
const h2Driver = yield createHeadingDriver("h2");
|
|
511
|
-
const h3Driver = yield createHeadingDriver("h3");
|
|
512
|
-
const h1FontSize = yield h1Driver.component.evaluate((el) => getComputedStyle(el).fontSize);
|
|
513
|
-
const h2FontSize = yield h2Driver.component.evaluate((el) => getComputedStyle(el).fontSize);
|
|
514
|
-
const h3FontSize = yield h3Driver.component.evaluate((el) => getComputedStyle(el).fontSize);
|
|
515
|
-
const h1Size = parseFloat(h1FontSize);
|
|
516
|
-
const h2Size = parseFloat(h2FontSize);
|
|
517
|
-
const h3Size = parseFloat(h3FontSize);
|
|
518
|
-
(0, fixtures_1.expect)(h1Size).toBeGreaterThan(h2Size);
|
|
519
|
-
(0, fixtures_1.expect)(h2Size).toBeGreaterThan(h3Size);
|
|
520
|
-
}));
|
|
521
|
-
(0, fixtures_1.test)("component supports custom styling props", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
522
|
-
yield initTestBed(`<Heading color="blue" fontSize="24px">Custom Styled</Heading>`);
|
|
523
|
-
const driver = yield createHeadingDriver();
|
|
524
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("color", "rgb(0, 0, 255)");
|
|
525
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("font-size", "24px");
|
|
526
|
-
}));
|
|
527
|
-
(0, fixtures_1.test)("component handles font weight variations", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
528
|
-
yield initTestBed(`<Heading>Default Weight Heading</Heading>`);
|
|
529
|
-
const driver = yield createHeadingDriver();
|
|
530
|
-
// Verify default font weight is set (typically 600 for headings)
|
|
531
|
-
const fontWeight = yield driver.component.evaluate((el) => getComputedStyle(el).fontWeight);
|
|
532
|
-
(0, fixtures_1.expect)(parseInt(fontWeight)).toBeGreaterThanOrEqual(400);
|
|
533
|
-
}));
|
|
534
|
-
(0, fixtures_1.test)("component supports text alignment", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
535
|
-
yield initTestBed(`<Heading textAlign="center">Centered Heading</Heading>`);
|
|
536
|
-
const driver = yield createHeadingDriver();
|
|
537
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("text-align", "center");
|
|
538
|
-
}));
|
|
539
|
-
(0, fixtures_1.test)("component handles overflow and text truncation", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
540
|
-
yield initTestBed(`
|
|
541
|
-
<Heading width="100px" maxLines="1">
|
|
542
|
-
This is a very long heading that should be truncated
|
|
543
|
-
</Heading>
|
|
544
|
-
`);
|
|
545
|
-
const driver = yield createHeadingDriver();
|
|
546
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("text-overflow", "ellipsis");
|
|
547
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("overflow", "hidden");
|
|
548
|
-
}));
|
|
549
|
-
});
|
|
550
|
-
// =============================================================================
|
|
551
|
-
// EDGE CASE TESTS (CRITICAL)
|
|
552
|
-
// =============================================================================
|
|
553
|
-
fixtures_1.test.describe("Edge Cases", () => {
|
|
554
|
-
(0, fixtures_1.test)("component handles null and undefined props gracefully", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
555
|
-
yield initTestBed(`<Heading/>`);
|
|
556
|
-
const component = page.getByTestId("test-id-component");
|
|
557
|
-
// Check if component exists in DOM
|
|
558
|
-
const exists = yield component.count();
|
|
559
|
-
(0, fixtures_1.expect)(exists).toBe(1);
|
|
560
|
-
// Component with no content may be hidden but should exist
|
|
561
|
-
const isVisible = yield component.isVisible();
|
|
562
|
-
if (!isVisible) {
|
|
563
|
-
// If not visible, that's acceptable for empty headings
|
|
564
|
-
(0, fixtures_1.expect)(isVisible).toBe(false);
|
|
565
|
-
}
|
|
566
|
-
else {
|
|
567
|
-
yield (0, fixtures_1.expect)(component).toBeVisible();
|
|
568
|
-
}
|
|
569
|
-
}));
|
|
570
|
-
(0, fixtures_1.test)("component handles empty content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
571
|
-
yield initTestBed(`<Heading value="" />`);
|
|
572
|
-
const component = page.getByTestId("test-id-component");
|
|
573
|
-
// Check if component exists in DOM
|
|
574
|
-
const exists = yield component.count();
|
|
575
|
-
(0, fixtures_1.expect)(exists).toBe(1);
|
|
576
|
-
// Component with empty value may be hidden but should exist
|
|
577
|
-
const isVisible = yield component.isVisible();
|
|
578
|
-
if (!isVisible) {
|
|
579
|
-
// If not visible, that's acceptable for empty headings
|
|
580
|
-
(0, fixtures_1.expect)(isVisible).toBe(false);
|
|
581
|
-
}
|
|
582
|
-
else {
|
|
583
|
-
yield (0, fixtures_1.expect)(component).toBeVisible();
|
|
584
|
-
yield (0, fixtures_1.expect)(component).toHaveText("");
|
|
585
|
-
}
|
|
586
|
-
}));
|
|
587
|
-
(0, fixtures_1.test)("component handles whitespace-only content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
588
|
-
yield initTestBed(`<Heading> </Heading>`);
|
|
589
|
-
const component = page.getByTestId("test-id-component");
|
|
590
|
-
// Check if component exists in DOM
|
|
591
|
-
const exists = yield component.count();
|
|
592
|
-
(0, fixtures_1.expect)(exists).toBe(1);
|
|
593
|
-
// Component with whitespace-only content may be hidden but should exist
|
|
594
|
-
const isVisible = yield component.isVisible();
|
|
595
|
-
if (!isVisible) {
|
|
596
|
-
// If not visible, that's acceptable for whitespace-only headings
|
|
597
|
-
(0, fixtures_1.expect)(isVisible).toBe(false);
|
|
598
|
-
}
|
|
599
|
-
else {
|
|
600
|
-
yield (0, fixtures_1.expect)(component).toBeVisible();
|
|
601
|
-
}
|
|
602
|
-
}));
|
|
603
|
-
(0, fixtures_1.test)("component handles special characters correctly", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
604
|
-
yield initTestBed(`<Heading>Test with émojis 🚀 & quotes "hello"</Heading>`);
|
|
605
|
-
const driver = yield createHeadingDriver();
|
|
606
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
607
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText('Test with émojis 🚀 & quotes "hello"');
|
|
608
|
-
}));
|
|
609
|
-
(0, fixtures_1.test)("component handles very long text content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
610
|
-
const longText = "A".repeat(1000);
|
|
611
|
-
yield initTestBed(`<Heading>${longText}</Heading>`);
|
|
612
|
-
const driver = yield createHeadingDriver();
|
|
613
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
614
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText(longText);
|
|
615
|
-
}));
|
|
616
|
-
(0, fixtures_1.test)("component handles numeric content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
617
|
-
yield initTestBed(`<Heading>12345</Heading>`);
|
|
618
|
-
const driver = yield createHeadingDriver();
|
|
619
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("12345");
|
|
620
|
-
}));
|
|
621
|
-
(0, fixtures_1.test)("component handles boolean content", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
622
|
-
yield initTestBed(`<Heading value="{true}" />`);
|
|
623
|
-
const driver = yield createHeadingDriver();
|
|
624
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("true");
|
|
625
|
-
}));
|
|
626
|
-
(0, fixtures_1.test)("component handles invalid level prop gracefully", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
627
|
-
yield initTestBed(`<Heading level="invalid">Invalid Level</Heading>`);
|
|
628
|
-
const component = page.getByTestId("test-id-component");
|
|
629
|
-
const isVisible = yield component.isVisible();
|
|
630
|
-
if (isVisible) {
|
|
631
|
-
yield (0, fixtures_1.expect)(component).toBeVisible();
|
|
632
|
-
yield (0, fixtures_1.expect)(component).toHaveText("Invalid Level");
|
|
633
|
-
}
|
|
634
|
-
else {
|
|
635
|
-
(0, fixtures_1.expect)(isVisible).toBe(false);
|
|
636
|
-
}
|
|
637
|
-
}));
|
|
638
|
-
(0, fixtures_1.test)("component handles mixed content types", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
639
|
-
yield initTestBed(`<Heading>Text 123 🎉 "quoted" & symbols</Heading>`);
|
|
640
|
-
const driver = yield createHeadingDriver();
|
|
641
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText('Text 123 🎉 "quoted" & symbols');
|
|
642
|
-
}));
|
|
643
|
-
(0, fixtures_1.test)("component handles newlines and preserveLinebreaks", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
644
|
-
yield initTestBed(`<Heading preserveLinebreaks="true" value="Line 1\nLine 2\nLine 3" />`);
|
|
645
|
-
const driver = yield createHeadingDriver();
|
|
646
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
647
|
-
// The component should preserve the line breaks
|
|
648
|
-
const height = yield driver.component.evaluate((el) => getComputedStyle(el).height);
|
|
649
|
-
(0, fixtures_1.expect)(parseFloat(height)).toBeGreaterThan(20); // Should be taller due to multiple lines
|
|
650
|
-
}));
|
|
651
|
-
});
|
|
652
|
-
// =============================================================================
|
|
653
|
-
// PERFORMANCE TESTS
|
|
654
|
-
// =============================================================================
|
|
655
|
-
fixtures_1.test.describe("Performance", () => {
|
|
656
|
-
(0, fixtures_1.test)("component renders efficiently with minimal props", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
657
|
-
// Simply test that the component renders without errors, not timing
|
|
658
|
-
yield initTestBed(`<Heading>Performance Test</Heading>`);
|
|
659
|
-
const driver = yield createHeadingDriver();
|
|
660
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
661
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Performance Test");
|
|
662
|
-
}));
|
|
663
|
-
(0, fixtures_1.test)("component handles multiple heading instances efficiently", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
664
|
-
const headings = Array.from({ length: 20 }, (_, i) => `<Heading testId="heading-${i}">Heading ${i}</Heading>`).join("");
|
|
665
|
-
yield initTestBed(`<VStack>${headings}</VStack>`);
|
|
666
|
-
// All headings should be visible
|
|
667
|
-
for (let i = 0; i < 20; i++) {
|
|
668
|
-
const heading = page.getByTestId(`heading-${i}`);
|
|
669
|
-
yield (0, fixtures_1.expect)(heading).toBeVisible();
|
|
670
|
-
}
|
|
671
|
-
}));
|
|
672
|
-
(0, fixtures_1.test)("component handles level changes without performance degradation", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
673
|
-
yield initTestBed(`<Heading level="h1">Heading</Heading>`);
|
|
674
|
-
const driver = yield createHeadingDriver();
|
|
675
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
676
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveRole("heading");
|
|
677
|
-
const tagName = yield driver.getComponentTagName();
|
|
678
|
-
(0, fixtures_1.expect)(tagName.toLowerCase()).toBe("h1");
|
|
679
|
-
}));
|
|
680
|
-
(0, fixtures_1.test)("component handles content updates efficiently", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
681
|
-
yield initTestBed(`<Heading>Initial Content</Heading>`);
|
|
682
|
-
const driver = yield createHeadingDriver();
|
|
683
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Initial Content");
|
|
684
|
-
// Component should handle content updates well
|
|
685
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
686
|
-
}));
|
|
687
|
-
});
|
|
688
|
-
// =============================================================================
|
|
689
|
-
// INTEGRATION TESTS
|
|
690
|
-
// =============================================================================
|
|
691
|
-
fixtures_1.test.describe("Integration", () => {
|
|
692
|
-
(0, fixtures_1.test)("component works correctly in VStack layout", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
693
|
-
yield initTestBed(`
|
|
694
|
-
<VStack>
|
|
695
|
-
<Heading>Header 1</Heading>
|
|
696
|
-
<Heading>Header 2</Heading>
|
|
697
|
-
</VStack>
|
|
698
|
-
`);
|
|
699
|
-
const driver = yield createHeadingDriver();
|
|
700
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
701
|
-
}));
|
|
702
|
-
(0, fixtures_1.test)("component works correctly in HStack layout", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, }) {
|
|
703
|
-
yield initTestBed(`
|
|
704
|
-
<HStack>
|
|
705
|
-
<Heading>Left Header</Heading>
|
|
706
|
-
<Heading>Right Header</Heading>
|
|
707
|
-
</HStack>
|
|
708
|
-
`);
|
|
709
|
-
const driver = yield createHeadingDriver();
|
|
710
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
711
|
-
}));
|
|
712
|
-
(0, fixtures_1.test)("component integrates with other text components", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, page, }) {
|
|
713
|
-
yield initTestBed(`
|
|
714
|
-
<VStack>
|
|
715
|
-
<Heading testId="heading">Main Title</Heading>
|
|
716
|
-
<Text testId="text">Body text content</Text>
|
|
717
|
-
</VStack>
|
|
718
|
-
`);
|
|
719
|
-
const heading = page.getByTestId("heading");
|
|
720
|
-
const text = page.getByTestId("text");
|
|
721
|
-
yield (0, fixtures_1.expect)(heading).toBeVisible();
|
|
722
|
-
yield (0, fixtures_1.expect)(text).toBeVisible();
|
|
723
|
-
yield (0, fixtures_1.expect)(heading).toHaveText("Main Title");
|
|
724
|
-
yield (0, fixtures_1.expect)(text).toHaveText("Body text content");
|
|
725
|
-
}));
|
|
726
|
-
(0, fixtures_1.test)("component supports anchor links functionality", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver, page, }) {
|
|
727
|
-
yield initTestBed(`<Heading anchorId="test-anchor">Linkable Heading</Heading>`);
|
|
728
|
-
const driver = yield createHeadingDriver();
|
|
729
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
730
|
-
// Check if heading can be used as an anchor target
|
|
731
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Linkable Heading");
|
|
732
|
-
}));
|
|
733
|
-
(0, fixtures_1.test)("component maintains accessibility in complex layouts", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
734
|
-
yield initTestBed(`
|
|
735
|
-
<VStack>
|
|
736
|
-
<H1 testId="main">Main Title</H1>
|
|
737
|
-
<VStack>
|
|
738
|
-
<H2 testId="section">Section</H2>
|
|
739
|
-
<HStack>
|
|
740
|
-
<H3 testId="sub1">Subsection 1</H3>
|
|
741
|
-
<H3 testId="sub2">Subsection 2</H3>
|
|
742
|
-
</HStack>
|
|
743
|
-
</VStack>
|
|
744
|
-
</VStack>
|
|
745
|
-
`);
|
|
746
|
-
const h1 = page.getByTestId("main");
|
|
747
|
-
const h2 = page.getByTestId("section");
|
|
748
|
-
const h3_1 = page.getByTestId("sub1");
|
|
749
|
-
const h3_2 = page.getByTestId("sub2");
|
|
750
|
-
yield (0, fixtures_1.expect)(h1).toHaveRole("heading");
|
|
751
|
-
yield (0, fixtures_1.expect)(h2).toHaveRole("heading");
|
|
752
|
-
yield (0, fixtures_1.expect)(h3_1).toHaveRole("heading");
|
|
753
|
-
yield (0, fixtures_1.expect)(h3_2).toHaveRole("heading");
|
|
754
|
-
// Verify proper heading hierarchy through tag names
|
|
755
|
-
const h1TagName = yield h1.evaluate((el) => el.tagName.toLowerCase());
|
|
756
|
-
const h2TagName = yield h2.evaluate((el) => el.tagName.toLowerCase());
|
|
757
|
-
const h3_1TagName = yield h3_1.evaluate((el) => el.tagName.toLowerCase());
|
|
758
|
-
const h3_2TagName = yield h3_2.evaluate((el) => el.tagName.toLowerCase());
|
|
759
|
-
(0, fixtures_1.expect)(h1TagName).toBe("h1");
|
|
760
|
-
(0, fixtures_1.expect)(h2TagName).toBe("h2");
|
|
761
|
-
(0, fixtures_1.expect)(h3_1TagName).toBe("h3");
|
|
762
|
-
(0, fixtures_1.expect)(h3_2TagName).toBe("h3");
|
|
763
|
-
}));
|
|
764
|
-
(0, fixtures_1.test)("component supports responsive behavior", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
765
|
-
yield initTestBed(`<Heading width="100%">Responsive Heading</Heading>`);
|
|
766
|
-
const driver = yield createHeadingDriver();
|
|
767
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
768
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveText("Responsive Heading");
|
|
769
|
-
// Test that the component handles responsive properties
|
|
770
|
-
// (The specific implementation may vary, but component should render)
|
|
771
|
-
const computedWidth = yield driver.component.evaluate((el) => getComputedStyle(el).width);
|
|
772
|
-
(0, fixtures_1.expect)(computedWidth).toBeTruthy(); // Should have some computed width
|
|
773
|
-
}));
|
|
774
|
-
(0, fixtures_1.test)("component works with theme providers", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, createHeadingDriver }) {
|
|
775
|
-
yield initTestBed(`<Heading>Themed Heading</Heading>`, {
|
|
776
|
-
testThemeVars: {
|
|
777
|
-
"color-Heading": "rgb(0, 128, 0)",
|
|
778
|
-
},
|
|
779
|
-
});
|
|
780
|
-
const driver = yield createHeadingDriver();
|
|
781
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
782
|
-
// Test that the component accepts theme variables (may not always apply due to specificity)
|
|
783
|
-
const color = yield driver.component.evaluate((el) => getComputedStyle(el).color);
|
|
784
|
-
// Either the theme color is applied or the component handles it gracefully
|
|
785
|
-
if (color === "rgb(0, 128, 0)") {
|
|
786
|
-
yield (0, fixtures_1.expect)(driver.component).toHaveCSS("color", "rgb(0, 128, 0)");
|
|
787
|
-
}
|
|
788
|
-
else {
|
|
789
|
-
// Component exists and functions even if theme variable isn't applied due to CSS specificity
|
|
790
|
-
yield (0, fixtures_1.expect)(driver.component).toBeVisible();
|
|
791
|
-
}
|
|
792
|
-
}));
|
|
793
|
-
(0, fixtures_1.test)("component preserves semantic heading hierarchy in large documents", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
794
|
-
yield initTestBed(`
|
|
795
|
-
<VStack>
|
|
796
|
-
<H1 testId="h1">Document Title</H1>
|
|
797
|
-
<H2 testId="h2-1">Chapter 1</H2>
|
|
798
|
-
<H3 testId="h3-1">Section 1.1</H3>
|
|
799
|
-
<H3 testId="h3-2">Section 1.2</H3>
|
|
800
|
-
<H2 testId="h2-2">Chapter 2</H2>
|
|
801
|
-
<H3 testId="h3-3">Section 2.1</H3>
|
|
802
|
-
<H4 testId="h4-1">Subsection 2.1.1</H4>
|
|
803
|
-
</VStack>
|
|
804
|
-
`);
|
|
805
|
-
// Test each heading individually using testIds
|
|
806
|
-
const testIds = ["h1", "h2-1", "h3-1", "h3-2", "h2-2", "h3-3", "h4-1"];
|
|
807
|
-
const expectedTags = ["h1", "h2", "h3", "h3", "h2", "h3", "h4"];
|
|
808
|
-
for (let i = 0; i < testIds.length; i++) {
|
|
809
|
-
const heading = page.getByTestId(testIds[i]);
|
|
810
|
-
yield (0, fixtures_1.expect)(heading).toHaveRole("heading");
|
|
811
|
-
const tagName = yield heading.evaluate((el) => el.tagName.toLowerCase());
|
|
812
|
-
(0, fixtures_1.expect)(tagName).toBe(expectedTags[i]);
|
|
813
|
-
}
|
|
814
|
-
}));
|
|
815
|
-
});
|
|
816
|
-
// =============================================================================
|
|
817
|
-
// API TESTS
|
|
818
|
-
// =============================================================================
|
|
819
|
-
fixtures_1.test.describe("API", () => {
|
|
820
|
-
(0, fixtures_1.test)("hasOverflow returns true when heading text overflows horizontally", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
821
|
-
const { testStateDriver } = yield initTestBed(`
|
|
822
|
-
<Fragment>
|
|
823
|
-
<Stack width="200px">
|
|
824
|
-
<H1 id="overflowHeading" maxLines="{1}"
|
|
825
|
-
value="This is a very long heading text that should definitely overflow when constrained to a small width"
|
|
826
|
-
/>
|
|
827
|
-
<Button onClick="testState = overflowHeading.hasOverflow()" />
|
|
828
|
-
</Stack>
|
|
829
|
-
</Fragment>
|
|
830
|
-
`);
|
|
831
|
-
yield page.getByRole("button").click();
|
|
832
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(true);
|
|
833
|
-
}));
|
|
834
|
-
(0, fixtures_1.test)("hasOverflow returns true when heading text overflows with maxLines constraint", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
835
|
-
const { testStateDriver } = yield initTestBed(`
|
|
836
|
-
<Fragment>
|
|
837
|
-
<Stack width="200px">
|
|
838
|
-
<H2 id="overflowHeading" maxLines="{2}" value="This is a very long heading text that will wrap to multiple lines and should overflow beyond the maxLines constraint when the container is wide enough to allow wrapping" />
|
|
839
|
-
<Button onClick="testState = overflowHeading.hasOverflow()" />
|
|
840
|
-
</Stack>
|
|
841
|
-
</Fragment>
|
|
842
|
-
`);
|
|
843
|
-
yield page.getByRole("button").click();
|
|
844
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(true);
|
|
845
|
-
}));
|
|
846
|
-
(0, fixtures_1.test)("hasOverflow returns false when heading text fits within container", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
847
|
-
const { testStateDriver } = yield initTestBed(`
|
|
848
|
-
<Fragment>
|
|
849
|
-
<Stack width="300px" height="100px">
|
|
850
|
-
<H3 id="normalHeading" value="Short heading" />
|
|
851
|
-
<Button onClick="testState = normalHeading.hasOverflow()" />
|
|
852
|
-
</Stack>
|
|
853
|
-
</Fragment>
|
|
854
|
-
`);
|
|
855
|
-
yield page.getByRole("button").click();
|
|
856
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(false);
|
|
857
|
-
}));
|
|
858
|
-
(0, fixtures_1.test)("hasOverflow returns false for empty heading text", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
859
|
-
const { testStateDriver } = yield initTestBed(`
|
|
860
|
-
<Fragment>
|
|
861
|
-
<Stack width="100px" height="50px">
|
|
862
|
-
<H4 id="emptyHeading" value="" />
|
|
863
|
-
<Button onClick="testState = emptyHeading.hasOverflow()" />
|
|
864
|
-
</Stack>
|
|
865
|
-
</Fragment>
|
|
866
|
-
`);
|
|
867
|
-
yield page.getByRole("button").click();
|
|
868
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(false);
|
|
869
|
-
}));
|
|
870
|
-
(0, fixtures_1.test)("hasOverflow returns false for heading with no size constraints", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
871
|
-
const { testStateDriver } = yield initTestBed(`
|
|
872
|
-
<Fragment>
|
|
873
|
-
<H5 id="unconstrainedHeading" value="This heading has no width or height constraints so it should not overflow" />
|
|
874
|
-
<Button onClick="testState = unconstrainedHeading.hasOverflow()" />
|
|
875
|
-
</Fragment>
|
|
876
|
-
`);
|
|
877
|
-
yield page.getByRole("button").click();
|
|
878
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(false);
|
|
879
|
-
}));
|
|
880
|
-
(0, fixtures_1.test)("hasOverflow works with different heading levels", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
881
|
-
const { testStateDriver } = yield initTestBed(`
|
|
882
|
-
<Fragment>
|
|
883
|
-
<Stack width="100px">
|
|
884
|
-
<H1 id="h1Text" maxLines="{1}" value="This is a very long heading that should overflow" />
|
|
885
|
-
<H2 id="h2Text" maxLines="{1}" value="This is a very long heading that should overflow" />
|
|
886
|
-
<H3 id="h3Text" maxLines="{1}" value="This is a very long heading that should overflow" />
|
|
887
|
-
<H4 id="h4Text" maxLines="{1}" value="This is a very long heading that should overflow" />
|
|
888
|
-
<H5 id="h5Text" maxLines="{1}" value="This is a very long heading that should overflow" />
|
|
889
|
-
<H6 id="h6Text" maxLines="{1}" value="This is a very long heading that should overflow" />
|
|
890
|
-
<Button onClick="testState = {
|
|
891
|
-
h1: h1Text.hasOverflow(),
|
|
892
|
-
h2: h2Text.hasOverflow(),
|
|
893
|
-
h3: h3Text.hasOverflow(),
|
|
894
|
-
h4: h4Text.hasOverflow(),
|
|
895
|
-
h5: h5Text.hasOverflow(),
|
|
896
|
-
h6: h6Text.hasOverflow()
|
|
897
|
-
}" />
|
|
898
|
-
</Stack>
|
|
899
|
-
</Fragment>
|
|
900
|
-
`);
|
|
901
|
-
yield page.getByRole("button").click();
|
|
902
|
-
const result = yield testStateDriver.testState();
|
|
903
|
-
(0, fixtures_1.expect)(result.h1).toBe(true);
|
|
904
|
-
(0, fixtures_1.expect)(result.h2).toBe(true);
|
|
905
|
-
(0, fixtures_1.expect)(result.h3).toBe(true);
|
|
906
|
-
(0, fixtures_1.expect)(result.h4).toBe(true);
|
|
907
|
-
(0, fixtures_1.expect)(result.h5).toBe(true);
|
|
908
|
-
(0, fixtures_1.expect)(result.h6).toBe(true);
|
|
909
|
-
}));
|
|
910
|
-
(0, fixtures_1.test)("hasOverflow returns correct result after content changes", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
911
|
-
const { testStateDriver } = yield initTestBed(`
|
|
912
|
-
<Fragment var.headingText="Short">
|
|
913
|
-
<Stack width="100px">
|
|
914
|
-
<H1 id="dynamicHeading" value="{headingText}" maxLines="{1}" />
|
|
915
|
-
<Button testId="checkBtn" onClick="testState = dynamicHeading.hasOverflow()" />
|
|
916
|
-
<Button testId="changeBtn" onClick="headingText = 'This is a very long heading text that will definitely overflow the container'" />
|
|
917
|
-
</Stack>
|
|
918
|
-
</Fragment>
|
|
919
|
-
`);
|
|
920
|
-
// Check initial state (should not overflow)
|
|
921
|
-
yield page.getByTestId("checkBtn").click();
|
|
922
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(false);
|
|
923
|
-
// Change content to overflow
|
|
924
|
-
yield page.getByTestId("changeBtn").click();
|
|
925
|
-
yield page.getByTestId("checkBtn").click();
|
|
926
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(true);
|
|
927
|
-
}));
|
|
928
|
-
(0, fixtures_1.test)("hasOverflow handles null/undefined values gracefully", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
929
|
-
const { testStateDriver } = yield initTestBed(`
|
|
930
|
-
<Fragment>
|
|
931
|
-
<Stack width="100px">
|
|
932
|
-
<H2 id="nullHeading" value="{null}" />
|
|
933
|
-
<Button onClick="testState = nullHeading.hasOverflow()" />
|
|
934
|
-
</Stack>
|
|
935
|
-
</Fragment>
|
|
936
|
-
`);
|
|
937
|
-
yield page.getByRole("button").click();
|
|
938
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(false);
|
|
939
|
-
}));
|
|
940
|
-
(0, fixtures_1.test)("hasOverflow works with generic Heading component", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page }) {
|
|
941
|
-
const { testStateDriver } = yield initTestBed(`
|
|
942
|
-
<Fragment>
|
|
943
|
-
<Stack width="100px">
|
|
944
|
-
<Heading id="genericHeading" level="h3" maxLines="{1}" value="This is a very long heading text that should overflow" />
|
|
945
|
-
<Button onClick="testState = genericHeading.hasOverflow()" />
|
|
946
|
-
</Stack>
|
|
947
|
-
</Fragment>
|
|
948
|
-
`);
|
|
949
|
-
yield page.getByRole("button").click();
|
|
950
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(true);
|
|
951
|
-
}));
|
|
952
|
-
(0, fixtures_1.test)("hasOverflow works with nested content instead of value prop", (_a) => __awaiter(void 0, [_a], void 0, function* ({ initTestBed, page, }) {
|
|
953
|
-
const { testStateDriver } = yield initTestBed(`
|
|
954
|
-
<Fragment>
|
|
955
|
-
<Stack width="100px">
|
|
956
|
-
<H1 id="nestedHeading" maxLines="{1}">
|
|
957
|
-
This is a very long heading with nested content that should definitely overflow the container width
|
|
958
|
-
</H1>
|
|
959
|
-
<Button onClick="testState = nestedHeading.hasOverflow()" />
|
|
960
|
-
</Stack>
|
|
961
|
-
</Fragment>
|
|
962
|
-
`);
|
|
963
|
-
yield page.getByRole("button").click();
|
|
964
|
-
yield fixtures_1.expect.poll(testStateDriver.testState).toBe(true);
|
|
965
|
-
}));
|
|
966
|
-
});
|