agnosticui-core 2.0.0-alpha.2 → 2.0.0-alpha.21
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/README.md +67 -33
- package/dist/{VueButton.vue_vue_type_script_setup_true_lang-Bq8IPXqd.js → VueButton.vue_vue_type_script_setup_true_lang-D1jGatE9.js} +17 -15
- package/dist/{VueButtonFx.vue_vue_type_script_setup_true_lang-BUudF-lg.js → VueButtonFx.vue_vue_type_script_setup_true_lang-BRrt6Nxs.js} +1 -0
- package/dist/{VueCheckbox.vue_vue_type_script_setup_true_lang-DERDRO2P.js → VueCheckbox.vue_vue_type_script_setup_true_lang-VtQfJ-6f.js} +9 -10
- package/dist/{VueCombobox.vue_vue_type_script_setup_true_lang-C7gDMrYJ.js → VueCombobox.vue_vue_type_script_setup_true_lang-BSTZGX2X.js} +15 -13
- package/dist/VueIcon.vue_vue_type_script_setup_true_lang-C2Sky3bU.js +22 -0
- package/dist/{VueImage.vue_vue_type_script_setup_true_lang-CUwbK3NF.js → VueImage.vue_vue_type_script_setup_true_lang-SddK93SB.js} +23 -17
- package/dist/{VueInput.vue_vue_type_script_setup_true_lang-Dsxo7DuX.js → VueInput.vue_vue_type_script_setup_true_lang-wYdAqg-i.js} +19 -19
- package/dist/{VueMenu.vue_vue_type_script_setup_true_lang-bnn7ochj.js → VueMenu.vue_vue_type_script_setup_true_lang-BXc7397e.js} +5 -4
- package/dist/{VueRadio.vue_vue_type_script_setup_true_lang-DxNhH12d.js → VueRadio.vue_vue_type_script_setup_true_lang-C7Z-sWpa.js} +10 -12
- package/dist/{VueRating.vue_vue_type_script_setup_true_lang-CICncp71.js → VueRating.vue_vue_type_script_setup_true_lang-Bm2nRrqr.js} +11 -9
- package/dist/VueSelectionButton.vue_vue_type_script_setup_true_lang-DJN-Uk6n.js +24 -0
- package/dist/VueSelectionButtonGroup.vue_vue_type_script_setup_true_lang-DwYrIMVO.js +46 -0
- package/dist/VueSelectionCard.vue_vue_type_script_setup_true_lang-DJiyPsXH.js +24 -0
- package/dist/VueSelectionCardGroup.vue_vue_type_script_setup_true_lang-D5CycLY5.js +40 -0
- package/dist/{VueToggle.vue_vue_type_script_setup_true_lang-BxrvAsse.js → VueToggle.vue_vue_type_script_setup_true_lang-DLPCBOqZ.js} +18 -16
- package/dist/components/Alert/core/_Alert.d.ts.map +1 -1
- package/dist/components/Alert/core/_Alert.js +38 -19
- package/dist/components/Button/core/_Button.d.ts +5 -0
- package/dist/components/Button/core/_Button.d.ts.map +1 -1
- package/dist/components/Button/core/_Button.js +147 -65
- package/dist/components/Button/vue/VueButton.js +1 -1
- package/dist/components/Button/vue/VueButton.vue.d.ts +3 -0
- package/dist/components/Button/vue/VueButton.vue.d.ts.map +1 -1
- package/dist/components/Button/vue/index.js +1 -1
- package/dist/components/ButtonFx/vue/VueButtonFx.js +1 -1
- package/dist/components/ButtonFx/vue/index.js +1 -1
- package/dist/components/Card/core/_Card.d.ts +9 -1
- package/dist/components/Card/core/_Card.d.ts.map +1 -1
- package/dist/components/Card/core/_Card.js +83 -29
- package/dist/components/Card/vue/VueCard.js +29 -16
- package/dist/components/Card/vue/VueCard.vue.d.ts +25 -5
- package/dist/components/Card/vue/VueCard.vue.d.ts.map +1 -1
- package/dist/components/Checkbox/core/_Checkbox.d.ts +37 -11
- package/dist/components/Checkbox/core/_Checkbox.d.ts.map +1 -1
- package/dist/components/Checkbox/core/_Checkbox.js +73 -42
- package/dist/components/Checkbox/vue/VueCheckbox.js +1 -1
- package/dist/components/Checkbox/vue/VueCheckbox.vue.d.ts +3 -3
- package/dist/components/Checkbox/vue/VueCheckbox.vue.d.ts.map +1 -1
- package/dist/components/Checkbox/vue/index.js +1 -1
- package/dist/components/Combobox/core/_Combobox.d.ts +24 -1
- package/dist/components/Combobox/core/_Combobox.d.ts.map +1 -1
- package/dist/components/Combobox/core/_Combobox.js +141 -92
- package/dist/components/Combobox/vue/VueCombobox.js +1 -1
- package/dist/components/Combobox/vue/index.js +1 -1
- package/dist/components/Fieldset/vue/VueFieldset.vue.d.ts +1 -1
- package/dist/components/Icon/vue/VueIcon.js +1 -1
- package/dist/components/Icon/vue/VueIcon.vue.d.ts.map +1 -1
- package/dist/components/Icon/vue/index.js +1 -1
- package/dist/components/Image/vue/VueImage.js +1 -1
- package/dist/components/Image/vue/VueImage.vue.d.ts.map +1 -1
- package/dist/components/Image/vue/index.js +1 -1
- package/dist/components/Input/core/_Input.d.ts +21 -2
- package/dist/components/Input/core/_Input.d.ts.map +1 -1
- package/dist/components/Input/core/_Input.js +71 -35
- package/dist/components/Input/vue/VueInput.js +1 -1
- package/dist/components/Input/vue/VueInput.vue.d.ts.map +1 -1
- package/dist/components/Input/vue/index.js +1 -1
- package/dist/components/Link/core/_Link.d.ts.map +1 -1
- package/dist/components/Link/core/_Link.js +1 -0
- package/dist/components/Link/vue/VueLink.js +6 -5
- package/dist/components/Link/vue/VueLink.vue.d.ts.map +1 -1
- package/dist/components/Menu/vue/VueMenu.js +1 -1
- package/dist/components/Menu/vue/index.js +1 -1
- package/dist/components/Pagination/core/_Pagination.d.ts +0 -1
- package/dist/components/Pagination/core/_Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/core/_Pagination.js +6 -9
- package/dist/components/Radio/core/_Radio.d.ts +55 -10
- package/dist/components/Radio/core/_Radio.d.ts.map +1 -1
- package/dist/components/Radio/core/_Radio.js +165 -116
- package/dist/components/Radio/vue/VueRadio.js +1 -1
- package/dist/components/Radio/vue/VueRadio.vue.d.ts.map +1 -1
- package/dist/components/Radio/vue/index.js +1 -1
- package/dist/components/Rating/core/_Rating.d.ts +23 -2
- package/dist/components/Rating/core/_Rating.d.ts.map +1 -1
- package/dist/components/Rating/core/_Rating.js +97 -64
- package/dist/components/Rating/vue/VueRating.js +1 -1
- package/dist/components/Rating/vue/VueRating.vue.d.ts +2 -0
- package/dist/components/Rating/vue/VueRating.vue.d.ts.map +1 -1
- package/dist/components/Rating/vue/index.js +1 -1
- package/dist/components/Select/core/_Select.d.ts +20 -2
- package/dist/components/Select/core/_Select.d.ts.map +1 -1
- package/dist/components/Select/core/_Select.js +99 -69
- package/dist/components/SelectionButton/core/SelectionButton.d.ts +9 -0
- package/dist/components/SelectionButton/core/SelectionButton.d.ts.map +1 -0
- package/dist/components/SelectionButton/core/SelectionButton.js +5 -0
- package/dist/components/SelectionButton/core/_SelectionButton.d.ts +47 -0
- package/dist/components/SelectionButton/core/_SelectionButton.d.ts.map +1 -0
- package/dist/components/SelectionButton/core/_SelectionButton.js +474 -0
- package/dist/components/SelectionButton/react/ReactSelectionButton.d.ts +9 -0
- package/dist/components/SelectionButton/react/ReactSelectionButton.d.ts.map +1 -0
- package/dist/components/SelectionButton/react/ReactSelectionButton.js +12 -0
- package/dist/components/SelectionButton/react/index.d.ts +3 -0
- package/dist/components/SelectionButton/react/index.d.ts.map +1 -0
- package/dist/components/SelectionButton/react/index.js +4 -0
- package/dist/components/SelectionButton/vue/VueSelectionButton.js +4 -0
- package/dist/components/SelectionButton/vue/VueSelectionButton.vue.d.ts +55 -0
- package/dist/components/SelectionButton/vue/VueSelectionButton.vue.d.ts.map +1 -0
- package/dist/components/SelectionButton/vue/index.d.ts +6 -0
- package/dist/components/SelectionButton/vue/index.d.ts.map +1 -0
- package/dist/components/SelectionButton/vue/index.js +4 -0
- package/dist/components/SelectionButtonGroup/core/SelectionButtonGroup.d.ts +9 -0
- package/dist/components/SelectionButtonGroup/core/SelectionButtonGroup.d.ts.map +1 -0
- package/dist/components/SelectionButtonGroup/core/SelectionButtonGroup.js +5 -0
- package/dist/components/SelectionButtonGroup/core/_SelectionButtonGroup.d.ts +87 -0
- package/dist/components/SelectionButtonGroup/core/_SelectionButtonGroup.d.ts.map +1 -0
- package/dist/components/SelectionButtonGroup/core/_SelectionButtonGroup.js +235 -0
- package/dist/components/SelectionButtonGroup/react/ReactSelectionButtonGroup.d.ts +13 -0
- package/dist/components/SelectionButtonGroup/react/ReactSelectionButtonGroup.d.ts.map +1 -0
- package/dist/components/SelectionButtonGroup/react/ReactSelectionButtonGroup.js +15 -0
- package/dist/components/SelectionButtonGroup/react/index.d.ts +3 -0
- package/dist/components/SelectionButtonGroup/react/index.d.ts.map +1 -0
- package/dist/components/SelectionButtonGroup/react/index.js +4 -0
- package/dist/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.js +4 -0
- package/dist/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.vue.d.ts +101 -0
- package/dist/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.vue.d.ts.map +1 -0
- package/dist/components/SelectionButtonGroup/vue/index.d.ts +6 -0
- package/dist/components/SelectionButtonGroup/vue/index.d.ts.map +1 -0
- package/dist/components/SelectionButtonGroup/vue/index.js +4 -0
- package/dist/components/SelectionCard/core/SelectionCard.d.ts +9 -0
- package/dist/components/SelectionCard/core/SelectionCard.d.ts.map +1 -0
- package/dist/components/SelectionCard/core/SelectionCard.js +5 -0
- package/dist/components/SelectionCard/core/_SelectionCard.d.ts +39 -0
- package/dist/components/SelectionCard/core/_SelectionCard.d.ts.map +1 -0
- package/dist/components/SelectionCard/core/_SelectionCard.js +318 -0
- package/dist/components/SelectionCard/react/ReactSelectionCard.d.ts +9 -0
- package/dist/components/SelectionCard/react/ReactSelectionCard.d.ts.map +1 -0
- package/dist/components/SelectionCard/react/ReactSelectionCard.js +12 -0
- package/dist/components/SelectionCard/react/index.d.ts +3 -0
- package/dist/components/SelectionCard/react/index.d.ts.map +1 -0
- package/dist/components/SelectionCard/react/index.js +4 -0
- package/dist/components/SelectionCard/vue/VueSelectionCard.js +4 -0
- package/dist/components/SelectionCard/vue/VueSelectionCard.vue.d.ts +55 -0
- package/dist/components/SelectionCard/vue/VueSelectionCard.vue.d.ts.map +1 -0
- package/dist/components/SelectionCard/vue/index.d.ts +6 -0
- package/dist/components/SelectionCard/vue/index.d.ts.map +1 -0
- package/dist/components/SelectionCard/vue/index.js +4 -0
- package/dist/components/SelectionCardGroup/core/SelectionCardGroup.d.ts +9 -0
- package/dist/components/SelectionCardGroup/core/SelectionCardGroup.d.ts.map +1 -0
- package/dist/components/SelectionCardGroup/core/SelectionCardGroup.js +5 -0
- package/dist/components/SelectionCardGroup/core/_SelectionCardGroup.d.ts +69 -0
- package/dist/components/SelectionCardGroup/core/_SelectionCardGroup.d.ts.map +1 -0
- package/dist/components/SelectionCardGroup/core/_SelectionCardGroup.js +220 -0
- package/dist/components/SelectionCardGroup/react/ReactSelectionCardGroup.d.ts +13 -0
- package/dist/components/SelectionCardGroup/react/ReactSelectionCardGroup.d.ts.map +1 -0
- package/dist/components/SelectionCardGroup/react/ReactSelectionCardGroup.js +15 -0
- package/dist/components/SelectionCardGroup/react/index.d.ts +3 -0
- package/dist/components/SelectionCardGroup/react/index.d.ts.map +1 -0
- package/dist/components/SelectionCardGroup/react/index.js +4 -0
- package/dist/components/SelectionCardGroup/vue/VueSelectionCardGroup.js +4 -0
- package/dist/components/SelectionCardGroup/vue/VueSelectionCardGroup.vue.d.ts +86 -0
- package/dist/components/SelectionCardGroup/vue/VueSelectionCardGroup.vue.d.ts.map +1 -0
- package/dist/components/SelectionCardGroup/vue/index.d.ts +6 -0
- package/dist/components/SelectionCardGroup/vue/index.d.ts.map +1 -0
- package/dist/components/SelectionCardGroup/vue/index.js +4 -0
- package/dist/components/Slider/core/_Slider.d.ts +10 -16
- package/dist/components/Slider/core/_Slider.d.ts.map +1 -1
- package/dist/components/Slider/core/_Slider.js +28 -39
- package/dist/components/Timeline/core/_Timeline.d.ts.map +1 -1
- package/dist/components/Timeline/core/_Timeline.js +8 -3
- package/dist/components/Timeline/react/ReactTimeline.d.ts +23 -9
- package/dist/components/Timeline/react/ReactTimeline.d.ts.map +1 -1
- package/dist/components/Timeline/react/ReactTimeline.js +18 -14
- package/dist/components/Toggle/core/_Toggle.d.ts +36 -6
- package/dist/components/Toggle/core/_Toggle.d.ts.map +1 -1
- package/dist/components/Toggle/core/_Toggle.js +117 -77
- package/dist/components/Toggle/vue/VueToggle.js +1 -1
- package/dist/components/Toggle/vue/VueToggle.vue.d.ts.map +1 -1
- package/dist/components/Toggle/vue/index.js +1 -1
- package/dist/shared/face-mixin.d.ts +82 -0
- package/dist/shared/face-mixin.d.ts.map +1 -0
- package/dist/shared/face-mixin.js +86 -0
- package/dist/shared/form-control-styles.js +1 -1
- package/dist/styles/ag-tokens-dark.css +4 -0
- package/dist/styles/ag-tokens.css +18 -13
- package/dist/test-setup.js +340 -255
- package/package.json +51 -13
- package/src/components/Alert/core/_Alert.ts +21 -2
- package/src/components/Button/core/_Button.ts +111 -21
- package/src/components/Button/vue/VueButton.vue +2 -0
- package/src/components/Card/core/_Card.ts +70 -3
- package/src/components/Card/vue/VueCard.vue +19 -3
- package/src/components/Checkbox/core/_Checkbox.ts +78 -18
- package/src/components/Checkbox/vue/VueCheckbox.vue +0 -6
- package/src/components/Combobox/core/_Combobox.ts +84 -2
- package/src/components/Combobox/vue/VueCombobox.vue +1 -0
- package/src/components/Drawer/v1/dialog--drawer-bottom.hbs +48 -0
- package/src/components/Drawer/v1/dialog--drawer-end.hbs +48 -0
- package/src/components/Drawer/v1/dialog--drawer-start.hbs +48 -0
- package/src/components/Drawer/v1/dialog--drawer-top.hbs +48 -0
- package/src/components/Drawer/v1/dialog-demo.css +13 -0
- package/src/components/Drawer/v1/dialog.config.yml +5 -0
- package/src/components/Drawer/v1/dialog.css +99 -0
- package/src/components/Drawer/v1/dialog.hbs +48 -0
- package/src/components/Drawer/v1/drawer-animations.css +52 -0
- package/src/components/Drawer/v1/drawer.css +50 -0
- package/src/components/Icon/vue/VueIcon.vue +2 -5
- package/src/components/Image/vue/VueImage.vue +17 -13
- package/src/components/Input/core/_Input.ts +58 -3
- package/src/components/Input/vue/VueInput.vue +2 -6
- package/src/components/Link/core/_Link.ts +1 -0
- package/src/components/Link/vue/VueLink.vue +1 -0
- package/src/components/Pagination/core/_Pagination.ts +10 -18
- package/src/components/Radio/core/_Radio.ts +131 -41
- package/src/components/Radio/vue/VueRadio.vue +1 -5
- package/src/components/Rating/core/_Rating.ts +62 -5
- package/src/components/Rating/vue/VueRating.vue +3 -0
- package/src/components/Select/core/_Select.ts +55 -6
- package/src/components/SelectionButton/core/SelectionButton.ts +13 -0
- package/src/components/SelectionButton/core/_SelectionButton.ts +551 -0
- package/src/components/SelectionButton/react/ReactSelectionButton.tsx +16 -0
- package/src/components/SelectionButton/react/index.ts +4 -0
- package/src/components/SelectionButton/vue/VueSelectionButton.vue +33 -0
- package/src/components/SelectionButton/vue/index.ts +5 -0
- package/src/components/SelectionButtonGroup/core/SelectionButtonGroup.ts +13 -0
- package/src/components/SelectionButtonGroup/core/_SelectionButtonGroup.ts +423 -0
- package/src/components/SelectionButtonGroup/react/ReactSelectionButtonGroup.tsx +29 -0
- package/src/components/SelectionButtonGroup/react/index.ts +9 -0
- package/src/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.vue +89 -0
- package/src/components/SelectionButtonGroup/vue/index.ts +5 -0
- package/src/components/SelectionCard/core/SelectionCard.ts +13 -0
- package/src/components/SelectionCard/core/_SelectionCard.ts +384 -0
- package/src/components/SelectionCard/react/ReactSelectionCard.tsx +16 -0
- package/src/components/SelectionCard/react/index.ts +4 -0
- package/src/components/SelectionCard/vue/VueSelectionCard.vue +33 -0
- package/src/components/SelectionCard/vue/index.ts +5 -0
- package/src/components/SelectionCardGroup/core/SelectionCardGroup.ts +13 -0
- package/src/components/SelectionCardGroup/core/_SelectionCardGroup.ts +396 -0
- package/src/components/SelectionCardGroup/react/ReactSelectionCardGroup.tsx +29 -0
- package/src/components/SelectionCardGroup/react/index.ts +9 -0
- package/src/components/SelectionCardGroup/vue/VueSelectionCardGroup.vue +71 -0
- package/src/components/SelectionCardGroup/vue/index.ts +5 -0
- package/src/components/Slider/core/_Slider.ts +28 -28
- package/src/components/Timeline/core/_Timeline.ts +5 -0
- package/src/components/Timeline/react/ReactTimeline.tsx +47 -24
- package/src/components/Toggle/core/_Toggle.ts +83 -9
- package/src/components/Toggle/vue/VueToggle.vue +2 -0
- package/src/shared/face-mixin.ts +233 -0
- package/src/shared/form-control-styles.ts +1 -1
- package/src/styles/ag-tokens-dark.css +4 -0
- package/src/styles/ag-tokens.css +18 -13
- package/RTL_IMPLEMENTATION_PLAN.md +0 -295
- package/dist/VueIcon.vue_vue_type_script_setup_true_lang-kC-nzMyu.js +0 -25
- package/dist/components/Input/core/_Input.BACKUP.d.ts +0 -114
- package/dist/components/Input/core/_Input.BACKUP.d.ts.map +0 -1
- package/dist/components/Input/core/_Input.BACKUP.js +0 -511
- package/dist/global.d.js +0 -1
- package/src/components/Input/core/_Input.BACKUP.ts +0 -710
- package/src/global.d.ts +0 -43
|
@@ -1,295 +0,0 @@
|
|
|
1
|
-
# RTL Support Implementation Plan - AgnosticUI v2
|
|
2
|
-
|
|
3
|
-
## Goal
|
|
4
|
-
Convert all directional CSS properties to logical properties to support RTL (Right-to-Left) languages without breaking existing functionality.
|
|
5
|
-
|
|
6
|
-
## Overview
|
|
7
|
-
This is primarily a search-and-replace task to convert directional properties (left/right) to logical properties (inline-start/inline-end). However, there are edge cases that need careful handling.
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Implementation Steps
|
|
12
|
-
|
|
13
|
-
### Step 1: Convert Spacing Properties (Margin & Padding) ✅ COMPLETED
|
|
14
|
-
**Scope:** 17 occurrences in main library (`v2/lib/src/`) - all converted
|
|
15
|
-
|
|
16
|
-
**Search & Replace:**
|
|
17
|
-
- `margin-left:` → `margin-inline-start:`
|
|
18
|
-
- `margin-right:` → `margin-inline-end:`
|
|
19
|
-
- `padding-left:` → `padding-inline-start:`
|
|
20
|
-
- `padding-right:` → `padding-inline-end:`
|
|
21
|
-
|
|
22
|
-
**Priority Files:**
|
|
23
|
-
- AspectRatio component
|
|
24
|
-
- Loader component
|
|
25
|
-
- SidebarNav component
|
|
26
|
-
- Input component (backup file)
|
|
27
|
-
- Checkbox component (mixed usage)
|
|
28
|
-
- Pagination component (mixed usage)
|
|
29
|
-
|
|
30
|
-
**Gotchas:**
|
|
31
|
-
- None - these are safe to replace
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
### Step 2: Convert Border Properties ✅ COMPLETED
|
|
36
|
-
**Scope:** 56 occurrences in main library (`v2/lib/src/`) - all converted (42 borders + 14 border-radius)
|
|
37
|
-
|
|
38
|
-
**Search & Replace:**
|
|
39
|
-
- `border-left:` → `border-inline-start:`
|
|
40
|
-
- `border-right:` → `border-inline-end:`
|
|
41
|
-
- `border-left-width:` → `border-inline-start-width:`
|
|
42
|
-
- `border-right-width:` → `border-inline-end-width:`
|
|
43
|
-
- `border-left-color:` → `border-inline-start-color:`
|
|
44
|
-
- `border-right-color:` → `border-inline-end-color:`
|
|
45
|
-
- `border-left-style:` → `border-inline-start-style:`
|
|
46
|
-
- `border-right-style:` → `border-inline-end-style:`
|
|
47
|
-
|
|
48
|
-
**Priority Files:**
|
|
49
|
-
- Alert component (`border-left-width`, `border-left-color`)
|
|
50
|
-
- Combobox component (`border-right-color`, `border-right`)
|
|
51
|
-
|
|
52
|
-
**Gotchas:**
|
|
53
|
-
- Border radius properties (if any) need special handling:
|
|
54
|
-
- `border-top-left-radius` → `border-start-start-radius`
|
|
55
|
-
- `border-top-right-radius` → `border-start-end-radius`
|
|
56
|
-
- `border-bottom-left-radius` → `border-end-start-radius`
|
|
57
|
-
- `border-bottom-right-radius` → `border-end-end-radius`
|
|
58
|
-
|
|
59
|
-
---
|
|
60
|
-
|
|
61
|
-
### Step 3: Convert Text Alignment ✅ COMPLETED
|
|
62
|
-
**Scope:** 7 occurrences in main library (`v2/lib/src/`) - all converted
|
|
63
|
-
|
|
64
|
-
**Search & Replace:**
|
|
65
|
-
- `text-align: left` → `text-align: start`
|
|
66
|
-
- `text-align: right` → `text-align: end`
|
|
67
|
-
|
|
68
|
-
**Priority Files:**
|
|
69
|
-
- Table component (v2/lib/src/styles/table.css:16, 24, 180, 192)
|
|
70
|
-
|
|
71
|
-
**Gotchas:**
|
|
72
|
-
- `text-align: center` stays as-is
|
|
73
|
-
- Double-check that `start`/`end` work in your target browser support matrix (modern browsers only)
|
|
74
|
-
|
|
75
|
-
---
|
|
76
|
-
|
|
77
|
-
### Step 4: Convert Positioning Properties ✅
|
|
78
|
-
|
|
79
|
-
**Scope:** ~50+ occurrences across 15+ files
|
|
80
|
-
|
|
81
|
-
**Search & Replace:**
|
|
82
|
-
- `left:` → `inset-inline-start:`
|
|
83
|
-
- `right:` → `inset-inline-end:`
|
|
84
|
-
- `left: 0; right: 0;` → `inset-inline: 0;`
|
|
85
|
-
- `top: 0; left: 0; right: 0; bottom: 0;` → `inset: 0;`
|
|
86
|
-
|
|
87
|
-
**Files Converted:**
|
|
88
|
-
- table.css, positioning.ts (utility)
|
|
89
|
-
- BadgeFx, SkeletonLoader, ScrollProgress, Dialog
|
|
90
|
-
- Sidebar, ScrollToButton, CloseButton
|
|
91
|
-
- MessageBubble, Toggle, Loader, ButtonFx
|
|
92
|
-
- Menu, Slider, Combobox
|
|
93
|
-
- Toast, Checkbox
|
|
94
|
-
|
|
95
|
-
**Gotchas:**
|
|
96
|
-
- **CRITICAL**: Only for `position: absolute`, `position: fixed`, or `position: sticky` elements
|
|
97
|
-
- Check for instances where `left: 0; right: 0;` is used together (might be better as `inset-inline: 0;`)
|
|
98
|
-
- Do NOT convert `left`/`right` in transform functions (see Step 5)
|
|
99
|
-
|
|
100
|
-
**Manual Review Needed:**
|
|
101
|
-
- Search for `position: absolute` and check nearby `left`/`right` properties
|
|
102
|
-
- Search for `position: fixed` and check nearby `left`/`right` properties
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
### Step 5: Handle Transforms & Animations ✅
|
|
107
|
-
|
|
108
|
-
**Scope:** Reviewed all `translateX` usage, added RTL support to 5 components with directional animations
|
|
109
|
-
|
|
110
|
-
**Components with RTL Support Added:**
|
|
111
|
-
- **positioning.ts** - Utility for drawer start/end slide animations
|
|
112
|
-
- **Dialog** - Drawer mode start/end positioning
|
|
113
|
-
- **Toast** - Start/end position slide animations
|
|
114
|
-
- **Toggle** - Handle movement (checked state)
|
|
115
|
-
- **ButtonFx** - Side-slide hover effect
|
|
116
|
-
|
|
117
|
-
**Components Skipped (decorative/centering only):**
|
|
118
|
-
- Sidebar - Already has RTL support ✓
|
|
119
|
-
- Slider - Uses `translateX(-50%)` for centering only
|
|
120
|
-
- BadgeFx, SkeletonLoader - Shimmer effects (decorative)
|
|
121
|
-
- motion.styles.ts - Shake and highlight-sweep animations (decorative)
|
|
122
|
-
|
|
123
|
-
**Pattern Used:**
|
|
124
|
-
All RTL overrides follow the Sidebar pattern using `:host-context([dir="rtl"])`:
|
|
125
|
-
```css
|
|
126
|
-
/* LTR (default) */
|
|
127
|
-
.element {
|
|
128
|
-
transform: translateX(-100%);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/* RTL override */
|
|
132
|
-
:host-context([dir="rtl"]) .element {
|
|
133
|
-
transform: translateX(100%);
|
|
134
|
-
}
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
**Gotchas:**
|
|
138
|
-
- Cannot simply replace `translateX` with a logical property
|
|
139
|
-
- Requires `:host-context([dir="rtl"])` or `[dir="rtl"]` selectors for overrides
|
|
140
|
-
- Only directional animations need RTL support; centering and decorative effects don't
|
|
141
|
-
|
|
142
|
-
---
|
|
143
|
-
|
|
144
|
-
### Step 6: Convert Size Properties (Width & Height)
|
|
145
|
-
|
|
146
|
-
**Scope:** ~74 CSS property occurrences (excluding media queries, docs, and tests)
|
|
147
|
-
|
|
148
|
-
**Search & Replace:**
|
|
149
|
-
- `min-width:` → `min-inline-size:`
|
|
150
|
-
- `max-width:` → `max-inline-size:`
|
|
151
|
-
- `min-height:` → `min-block-size:`
|
|
152
|
-
- `max-height:` → `max-block-size:`
|
|
153
|
-
|
|
154
|
-
**CRITICAL Gotcha - Media Queries:**
|
|
155
|
-
Logical properties do NOT work in media queries yet. You CANNOT replace:
|
|
156
|
-
- `@media (min-width: 640px)` - Must stay as-is ❌
|
|
157
|
-
- `@media (max-width: 1024px)` - Must stay as-is ❌
|
|
158
|
-
|
|
159
|
-
Only replace size properties in CSS property declarations:
|
|
160
|
-
```css
|
|
161
|
-
/* ✅ CAN REPLACE */
|
|
162
|
-
.element {
|
|
163
|
-
min-width: 200px; → min-inline-size: 200px;
|
|
164
|
-
max-width: 100%; → max-inline-size: 100%;
|
|
165
|
-
min-height: 100px; → min-block-size: 100px;
|
|
166
|
-
max-height: 90vh; → max-block-size: 90vh;
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
/* ❌ CANNOT REPLACE */
|
|
170
|
-
@media (min-width: 640px) { → Leave as-is!
|
|
171
|
-
/* styles */
|
|
172
|
-
}
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
**Action:**
|
|
176
|
-
1. Search for `min-width:`, `max-width:`, `min-height:`, `max-height:` in CSS property declarations
|
|
177
|
-
2. Verify each occurrence is NOT in a media query
|
|
178
|
-
3. Replace with logical equivalent
|
|
179
|
-
4. Skip .md, .spec.ts, and demo files (documentation/tests)
|
|
180
|
-
|
|
181
|
-
**Priority Files:**
|
|
182
|
-
- form-control-styles.ts (4 occurrences)
|
|
183
|
-
- positioning.ts (4 occurrences)
|
|
184
|
-
- Popover, Dialog, Toast, Combobox components
|
|
185
|
-
- Button, Icon, IconButton components
|
|
186
|
-
- Many other components (~30 files total)
|
|
187
|
-
|
|
188
|
-
**Gotchas:**
|
|
189
|
-
- Media queries MUST stay as physical properties (min-width/max-width)
|
|
190
|
-
- Only convert actual CSS property declarations
|
|
191
|
-
- Watch for dynamically generated styles in TypeScript/JavaScript
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
### Step 7: Update Class Names (Semantic Cleanup)
|
|
196
|
-
|
|
197
|
-
**Optional but Recommended:**
|
|
198
|
-
Update class names to be semantically correct:
|
|
199
|
-
- `.alert-border-left` → `.alert-border-start`
|
|
200
|
-
- `.margin-left-*` → `.margin-inline-start-*`
|
|
201
|
-
- Any other directional class names
|
|
202
|
-
|
|
203
|
-
**Action:**
|
|
204
|
-
- Search for class names containing "left" or "right"
|
|
205
|
-
- Rename to "start" or "end" where appropriate
|
|
206
|
-
- Update corresponding CSS and component usage
|
|
207
|
-
|
|
208
|
-
**Gotchas:**
|
|
209
|
-
- This is a breaking change if classes are exposed as public API
|
|
210
|
-
- Consider deprecation strategy if needed
|
|
211
|
-
|
|
212
|
-
---
|
|
213
|
-
|
|
214
|
-
### Step 8: Test RTL Rendering
|
|
215
|
-
|
|
216
|
-
**Action:**
|
|
217
|
-
1. Create test HTML files with `dir="rtl"` attribute
|
|
218
|
-
2. Visually test critical components:
|
|
219
|
-
- Alert (border should appear on the right in RTL)
|
|
220
|
-
- Table (text alignment should flip)
|
|
221
|
-
- Combobox (borders should flip)
|
|
222
|
-
- Form controls (labels should flip with start/end positioning)
|
|
223
|
-
- Sidebar (should slide from correct direction)
|
|
224
|
-
3. Run existing test suite to ensure no regressions
|
|
225
|
-
|
|
226
|
-
**Test Checklist:**
|
|
227
|
-
- [ ] Alert component border appears on correct side in RTL
|
|
228
|
-
- [ ] Table text aligns correctly in RTL
|
|
229
|
-
- [ ] Form controls with `labelPosition="start"` appear on right side in RTL
|
|
230
|
-
- [ ] Form controls with `labelPosition="end"` appear on left side in RTL
|
|
231
|
-
- [ ] Sidebar animations work correctly in RTL
|
|
232
|
-
- [ ] No visual regressions in LTR mode
|
|
233
|
-
|
|
234
|
-
---
|
|
235
|
-
|
|
236
|
-
## Execution Strategy
|
|
237
|
-
|
|
238
|
-
### Recommended Approach
|
|
239
|
-
1. Start with Steps 1-3 (spacing, borders, text-align) - these are safest
|
|
240
|
-
2. Do Step 4 (positioning) with manual review of each file
|
|
241
|
-
3. Do Step 5 (transforms) with careful testing
|
|
242
|
-
4. Do Step 6 (size properties) - safe but watch for media queries
|
|
243
|
-
5. Optionally do Step 7 (class names) if you want semantic correctness
|
|
244
|
-
6. Do Step 8 (testing) throughout the process
|
|
245
|
-
|
|
246
|
-
### Automation
|
|
247
|
-
You can use global find-and-replace for Steps 1-3, but recommend:
|
|
248
|
-
- Do it file-by-file or component-by-component
|
|
249
|
-
- Test after each component to catch issues early
|
|
250
|
-
- Commit after each component for easy rollback
|
|
251
|
-
|
|
252
|
-
### Browser Support
|
|
253
|
-
CSS logical properties are supported in:
|
|
254
|
-
- Chrome 87+
|
|
255
|
-
- Firefox 66+
|
|
256
|
-
- Safari 14.1+
|
|
257
|
-
- Edge 87+
|
|
258
|
-
|
|
259
|
-
If you need to support older browsers, you'll need fallbacks or a different strategy.
|
|
260
|
-
|
|
261
|
-
---
|
|
262
|
-
|
|
263
|
-
## Risks & Mitigations
|
|
264
|
-
|
|
265
|
-
| Risk | Mitigation |
|
|
266
|
-
|------|------------|
|
|
267
|
-
| Breaking existing layouts | Test each component after changes; commit frequently |
|
|
268
|
-
| Transform animations not flipping | Use `:host-context([dir="rtl"])` overrides (see Sidebar example) |
|
|
269
|
-
| Class name changes breaking user code | Skip Step 6, or provide deprecation warning |
|
|
270
|
-
| Browser compatibility | Check caniuse.com for logical properties support |
|
|
271
|
-
|
|
272
|
-
---
|
|
273
|
-
|
|
274
|
-
## Estimated Effort
|
|
275
|
-
|
|
276
|
-
- Step 1 (spacing): 1-2 hours (bulk search-replace + testing) ✅ COMPLETED
|
|
277
|
-
- Step 2 (borders): 30 minutes
|
|
278
|
-
- Step 3 (text-align): 15 minutes
|
|
279
|
-
- Step 4 (positioning): 1 hour (manual review needed)
|
|
280
|
-
- Step 5 (transforms): 1 hour (manual review + testing)
|
|
281
|
-
- Step 6 (size properties): 1-2 hours (careful to avoid media queries)
|
|
282
|
-
- Step 7 (class names): 1 hour (optional)
|
|
283
|
-
- Step 8 (testing): 1-2 hours
|
|
284
|
-
|
|
285
|
-
**Total: 6-10 hours** (without class name changes: 5-9 hours)
|
|
286
|
-
|
|
287
|
-
---
|
|
288
|
-
|
|
289
|
-
## Success Criteria
|
|
290
|
-
|
|
291
|
-
- [ ] All directional properties converted to logical properties
|
|
292
|
-
- [ ] All existing tests pass
|
|
293
|
-
- [ ] Visual testing with `dir="rtl"` shows correct rendering
|
|
294
|
-
- [ ] No regressions in LTR mode
|
|
295
|
-
- [ ] Components handle RTL without explicit RTL-specific code (except transforms)
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { defineComponent as n, ref as l, createElementBlock as r, openBlock as i, mergeProps as s, renderSlot as a } from "vue";
|
|
2
|
-
import "./components/Icon/core/Icon.js";
|
|
3
|
-
const p = [".size", ".type", ".noFill"], u = /* @__PURE__ */ n({
|
|
4
|
-
__name: "VueIcon",
|
|
5
|
-
props: {
|
|
6
|
-
size: { default: "16" },
|
|
7
|
-
type: { default: "" },
|
|
8
|
-
noFill: { type: Boolean }
|
|
9
|
-
},
|
|
10
|
-
setup(e) {
|
|
11
|
-
const t = l(null);
|
|
12
|
-
return (o, c) => (i(), r("ag-icon", s({
|
|
13
|
-
ref_key: "agComponent",
|
|
14
|
-
ref: t,
|
|
15
|
-
".size": e.size,
|
|
16
|
-
".type": e.type,
|
|
17
|
-
".noFill": e.noFill
|
|
18
|
-
}, o.$attrs), [
|
|
19
|
-
a(o.$slots, "default")
|
|
20
|
-
], 48, p));
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
export {
|
|
24
|
-
u as _
|
|
25
|
-
};
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
|
|
3
|
-
export interface InputProps {
|
|
4
|
-
label?: string;
|
|
5
|
-
labelHidden?: boolean;
|
|
6
|
-
noLabel?: boolean;
|
|
7
|
-
ariaLabel?: string;
|
|
8
|
-
labelledBy?: string;
|
|
9
|
-
type?: string;
|
|
10
|
-
value?: string;
|
|
11
|
-
placeholder?: string;
|
|
12
|
-
rows?: number;
|
|
13
|
-
cols?: number;
|
|
14
|
-
size?: 'small' | 'default' | 'large';
|
|
15
|
-
capsule?: boolean;
|
|
16
|
-
rounded?: boolean;
|
|
17
|
-
underlined?: boolean;
|
|
18
|
-
underlinedWithBackground?: boolean;
|
|
19
|
-
inline?: boolean;
|
|
20
|
-
required?: boolean;
|
|
21
|
-
disabled?: boolean;
|
|
22
|
-
readonly?: boolean;
|
|
23
|
-
invalid?: boolean;
|
|
24
|
-
errorMessage?: string;
|
|
25
|
-
helpText?: string;
|
|
26
|
-
onClick?: (event: MouseEvent) => void;
|
|
27
|
-
onInput?: (event: InputEvent) => void;
|
|
28
|
-
onChange?: (event: Event) => void;
|
|
29
|
-
onFocus?: (event: FocusEvent) => void;
|
|
30
|
-
onBlur?: (event: FocusEvent) => void;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* AgInput - Foundation input component (starting minimal)
|
|
34
|
-
*
|
|
35
|
-
* Starting with basic label + input functionality, will build up incrementally
|
|
36
|
-
*/
|
|
37
|
-
export declare class AgInput extends LitElement implements InputProps {
|
|
38
|
-
static styles: import('lit').CSSResult;
|
|
39
|
-
private _inputId;
|
|
40
|
-
/**
|
|
41
|
-
* Label Architecture - Flexible but Accessible by Default
|
|
42
|
-
*/
|
|
43
|
-
label: string;
|
|
44
|
-
labelHidden: boolean;
|
|
45
|
-
noLabel: boolean;
|
|
46
|
-
ariaLabel: string;
|
|
47
|
-
labelledBy: string;
|
|
48
|
-
/**
|
|
49
|
-
* Input properties
|
|
50
|
-
*/
|
|
51
|
-
type: string;
|
|
52
|
-
value: string;
|
|
53
|
-
placeholder: string;
|
|
54
|
-
/**
|
|
55
|
-
* Textarea-specific properties (when type="textarea")
|
|
56
|
-
*/
|
|
57
|
-
rows: number;
|
|
58
|
-
cols: number;
|
|
59
|
-
/**
|
|
60
|
-
* v1 Parity - Size Variants
|
|
61
|
-
*/
|
|
62
|
-
size: 'small' | 'default' | 'large';
|
|
63
|
-
/**
|
|
64
|
-
* v1 Parity - Styling Variants
|
|
65
|
-
*/
|
|
66
|
-
capsule: boolean;
|
|
67
|
-
rounded: boolean;
|
|
68
|
-
underlined: boolean;
|
|
69
|
-
underlinedWithBackground: boolean;
|
|
70
|
-
inline: boolean;
|
|
71
|
-
/**
|
|
72
|
-
* v1 Parity - Addon Support
|
|
73
|
-
* REMOVED: hasLeftAddon and hasRightAddon props - now auto-detected
|
|
74
|
-
*/
|
|
75
|
-
private _hasLeftAddon;
|
|
76
|
-
private _hasRightAddon;
|
|
77
|
-
/**
|
|
78
|
-
* Validation & State
|
|
79
|
-
*/
|
|
80
|
-
required: boolean;
|
|
81
|
-
disabled: boolean;
|
|
82
|
-
readonly: boolean;
|
|
83
|
-
invalid: boolean;
|
|
84
|
-
errorMessage: string;
|
|
85
|
-
helpText: string;
|
|
86
|
-
/**
|
|
87
|
-
* Event callback props (not reflected as attributes)
|
|
88
|
-
* Following AgnosticUI v2 event conventions for native events
|
|
89
|
-
*/
|
|
90
|
-
onClick?: (event: MouseEvent) => void;
|
|
91
|
-
onInput?: (event: InputEvent) => void;
|
|
92
|
-
onChange?: (event: Event) => void;
|
|
93
|
-
onFocus?: (event: FocusEvent) => void;
|
|
94
|
-
onBlur?: (event: FocusEvent) => void;
|
|
95
|
-
constructor();
|
|
96
|
-
/**
|
|
97
|
-
* Event Handlers
|
|
98
|
-
* Following AgnosticUI v2 event conventions:
|
|
99
|
-
* - Native composed events (input, change, click) just invoke callbacks
|
|
100
|
-
* - Native non-bubbling events (focus, blur) re-dispatch from host + invoke callbacks
|
|
101
|
-
*/
|
|
102
|
-
private _handleClick;
|
|
103
|
-
private _handleInput;
|
|
104
|
-
private _handleChange;
|
|
105
|
-
private _handleFocus;
|
|
106
|
-
private _handleBlur;
|
|
107
|
-
/**
|
|
108
|
-
* Handle slot changes to detect if addons are present
|
|
109
|
-
*/
|
|
110
|
-
private _handleSlotChange;
|
|
111
|
-
firstUpdated(): void;
|
|
112
|
-
render(): import('lit').TemplateResult<1>;
|
|
113
|
-
}
|
|
114
|
-
//# sourceMappingURL=_Input.BACKUP.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_Input.BACKUP.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/core/_Input.BACKUP.ts"],"names":[],"mappings":"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"}
|