@nectary/components 4.12.0 → 4.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/index.d.ts +22 -1
- package/accordion/index.js +39 -41
- package/accordion/types.d.ts +1 -21
- package/accordion/types.js +1 -1
- package/accordion-item/index.d.ts +22 -2
- package/accordion-item/index.js +49 -53
- package/accordion-item/types.d.ts +1 -21
- package/accordion-item/types.js +1 -1
- package/accordion-item/utils.js +1 -4
- package/action-menu/index.d.ts +22 -1
- package/action-menu/index.js +77 -62
- package/action-menu/types.d.ts +1 -21
- package/action-menu/types.js +1 -1
- package/action-menu-option/index.d.ts +22 -1
- package/action-menu-option/index.js +41 -39
- package/action-menu-option/types.d.ts +1 -21
- package/action-menu-option/types.js +1 -1
- package/action-menu-option/utils.js +3 -6
- package/alert/index.d.ts +22 -2
- package/alert/index.js +21 -24
- package/alert/types.d.ts +1 -21
- package/alert/types.js +1 -1
- package/alert/utils.js +1 -4
- package/avatar/colors.js +1 -1
- package/avatar/index.d.ts +22 -2
- package/avatar/index.js +41 -42
- package/avatar/types.d.ts +1 -21
- package/avatar/types.js +1 -1
- package/avatar/utils.js +4 -9
- package/badge/index.d.ts +22 -3
- package/badge/index.js +51 -52
- package/badge/types.d.ts +1 -21
- package/badge/types.js +1 -1
- package/badge/utils.js +1 -4
- package/button/index.d.ts +22 -2
- package/button/index.js +111 -101
- package/button/types.d.ts +1 -21
- package/button/types.js +1 -1
- package/button/utils.js +2 -18
- package/button-group/index.d.ts +22 -1
- package/button-group/index.js +18 -20
- package/button-group/types.d.ts +3 -22
- package/button-group/types.js +1 -1
- package/button-group-item/index.d.ts +22 -2
- package/button-group-item/index.js +42 -31
- package/button-group-item/types.d.ts +3 -22
- package/button-group-item/types.js +1 -1
- package/card/index.d.ts +40 -0
- package/card/index.js +134 -0
- package/card/types.d.ts +17 -0
- package/card/types.js +1 -0
- package/card-container/index.d.ts +21 -1
- package/card-container/index.js +5 -8
- package/card-container/types.d.ts +1 -21
- package/card-container/types.js +1 -1
- package/card-v2/index.d.ts +22 -1
- package/card-v2/index.js +57 -59
- package/card-v2/types.d.ts +1 -21
- package/card-v2/types.js +1 -1
- package/card-v2-title/index.d.ts +22 -2
- package/card-v2-title/index.js +26 -28
- package/card-v2-title/types.d.ts +1 -21
- package/card-v2-title/types.js +1 -1
- package/checkbox/index.d.ts +22 -1
- package/checkbox/index.js +81 -88
- package/checkbox/types.d.ts +1 -21
- package/checkbox/types.js +1 -1
- package/chip/colors.js +1 -1
- package/chip/index.d.ts +22 -1
- package/chip/index.js +75 -62
- package/chip/types.d.ts +1 -21
- package/chip/types.js +1 -1
- package/chip/utils.js +3 -7
- package/code-tag/index.d.ts +22 -1
- package/code-tag/index.js +14 -17
- package/code-tag/types.d.ts +1 -21
- package/code-tag/types.js +1 -1
- package/color-menu/index.d.ts +22 -2
- package/color-menu/index.js +115 -115
- package/color-menu/types.d.ts +1 -21
- package/color-menu/types.js +1 -1
- package/color-menu/utils.js +3 -6
- package/color-menu-option/index.d.ts +22 -1
- package/color-menu-option/index.js +26 -30
- package/color-menu-option/types.d.ts +1 -21
- package/color-menu-option/types.js +1 -1
- package/color-menu-option/utils.js +3 -6
- package/color-swatch/index.d.ts +22 -1
- package/color-swatch/index.js +20 -23
- package/color-swatch/types.d.ts +1 -21
- package/color-swatch/types.js +1 -1
- package/color-swatch/utils.js +3 -7
- package/date-picker/index.d.ts +22 -2
- package/date-picker/index.js +150 -157
- package/date-picker/types.d.ts +1 -21
- package/date-picker/types.js +1 -1
- package/date-picker/utils.js +42 -59
- package/dialog/index.d.ts +22 -1
- package/dialog/index.js +58 -71
- package/dialog/types.d.ts +1 -21
- package/dialog/types.js +1 -1
- package/dialog/utils.js +7 -11
- package/emoji/index.d.ts +22 -1
- package/emoji/index.js +16 -19
- package/emoji/types.d.ts +1 -21
- package/emoji/types.js +1 -1
- package/emoji/utils.js +17 -22
- package/emoji-picker/index.d.ts +22 -2
- package/emoji-picker/index.js +118 -138
- package/emoji-picker/types.d.ts +1 -21
- package/emoji-picker/types.js +1 -1
- package/field/index.d.ts +22 -1
- package/field/index.js +60 -63
- package/field/types.d.ts +1 -21
- package/field/types.js +1 -1
- package/file-drop/index.d.ts +22 -1
- package/file-drop/index.js +98 -103
- package/file-drop/types.d.ts +1 -21
- package/file-drop/types.js +1 -1
- package/file-drop/utils.js +22 -27
- package/file-picker/index.d.ts +22 -1
- package/file-picker/index.js +48 -53
- package/file-picker/types.d.ts +1 -21
- package/file-picker/types.js +1 -1
- package/file-picker/utils.js +3 -6
- package/file-status/index.d.ts +22 -2
- package/file-status/index.js +22 -33
- package/file-status/types.d.ts +1 -21
- package/file-status/types.js +1 -1
- package/file-status/utils.js +1 -4
- package/flag/index.d.ts +22 -1
- package/flag/index.js +16 -19
- package/flag/types.d.ts +1 -21
- package/flag/types.js +1 -1
- package/flag/utils.js +8 -11
- package/grid/index.d.ts +22 -1
- package/grid/index.js +5 -8
- package/grid/types.d.ts +1 -21
- package/grid/types.js +1 -1
- package/grid-item/index.d.ts +22 -1
- package/grid-item/index.js +13 -17
- package/grid-item/types.d.ts +1 -21
- package/grid-item/types.js +1 -1
- package/help-tooltip/index.d.ts +22 -1
- package/help-tooltip/index.js +26 -29
- package/help-tooltip/types.d.ts +1 -21
- package/help-tooltip/types.js +1 -1
- package/horizontal-stepper/index.d.ts +33 -0
- package/horizontal-stepper/index.js +62 -0
- package/horizontal-stepper/types.d.ts +42 -0
- package/horizontal-stepper/types.js +1 -0
- package/horizontal-stepper-item/index.d.ts +38 -0
- package/horizontal-stepper-item/index.js +62 -0
- package/horizontal-stepper-item/types.d.ts +38 -0
- package/horizontal-stepper-item/types.js +1 -0
- package/horizontal-stepper-item/utils.d.ts +2 -0
- package/horizontal-stepper-item/utils.js +1 -0
- package/icon/generated-icon-type.js +1 -1
- package/icon/index.d.ts +22 -1
- package/icon/index.js +28 -30
- package/icon/types.d.ts +1 -21
- package/icon/types.js +1 -1
- package/inline-alert/index.d.ts +22 -2
- package/inline-alert/index.js +39 -58
- package/inline-alert/types.d.ts +1 -21
- package/inline-alert/types.js +1 -1
- package/inline-alert/utils.js +1 -4
- package/input/index.d.ts +22 -2
- package/input/index.js +317 -295
- package/input/types.d.ts +1 -21
- package/input/types.js +1 -1
- package/input/utils.js +46 -56
- package/link/index.d.ts +22 -1
- package/link/index.js +79 -88
- package/link/types.d.ts +1 -21
- package/link/types.js +1 -1
- package/list/index.d.ts +21 -1
- package/list/index.js +6 -9
- package/list/types.d.ts +1 -21
- package/list/types.js +1 -1
- package/list-item/index.d.ts +22 -1
- package/list-item/index.js +6 -9
- package/list-item/types.d.ts +1 -21
- package/list-item/types.js +1 -1
- package/package.json +5 -11
- package/pagination/index.d.ts +22 -2
- package/pagination/index.js +46 -64
- package/pagination/types.d.ts +1 -21
- package/pagination/types.js +1 -1
- package/persistent-overlay/index.d.ts +22 -1
- package/persistent-overlay/index.js +44 -42
- package/persistent-overlay/types.d.ts +1 -21
- package/persistent-overlay/types.js +1 -1
- package/pop/index.d.ts +22 -3
- package/pop/index.js +150 -149
- package/pop/types.d.ts +1 -21
- package/pop/types.js +1 -1
- package/pop/utils.js +8 -24
- package/popover/index.d.ts +22 -2
- package/popover/index.js +68 -75
- package/popover/types.d.ts +1 -21
- package/popover/types.js +1 -1
- package/popover/utils.js +7 -18
- package/progress/index.d.ts +22 -1
- package/progress/index.js +33 -30
- package/progress/types.d.ts +1 -21
- package/progress/types.js +1 -1
- package/progress-stepper/index.d.ts +22 -2
- package/progress-stepper/index.js +66 -64
- package/progress-stepper/types.d.ts +1 -21
- package/progress-stepper/types.js +1 -1
- package/progress-stepper-item/index.d.ts +22 -1
- package/progress-stepper-item/index.js +50 -58
- package/progress-stepper-item/types.d.ts +1 -21
- package/progress-stepper-item/types.js +1 -1
- package/progress-stepper-item/utils.js +11 -22
- package/radio/index.d.ts +22 -1
- package/radio/index.js +83 -79
- package/radio/types.d.ts +1 -21
- package/radio/types.js +1 -1
- package/radio-option/index.d.ts +22 -1
- package/radio-option/index.js +41 -47
- package/radio-option/types.d.ts +1 -21
- package/radio-option/types.js +1 -1
- package/rich-text/index.d.ts +22 -1
- package/rich-text/index.js +46 -45
- package/rich-text/types.d.ts +1 -21
- package/rich-text/types.js +1 -1
- package/rich-text/utils.js +33 -31
- package/rich-textarea/index.d.ts +22 -1
- package/rich-textarea/index.js +194 -201
- package/rich-textarea/types.d.ts +1 -21
- package/rich-textarea/types.js +1 -1
- package/rich-textarea/utils.js +340 -313
- package/segment/index.d.ts +40 -0
- package/segment/index.js +110 -0
- package/segment/types.d.ts +23 -0
- package/segment/types.js +1 -0
- package/segment/utils.d.ts +3 -0
- package/segment/utils.js +16 -0
- package/segment-collapse/index.d.ts +22 -1
- package/segment-collapse/index.js +25 -31
- package/segment-collapse/types.d.ts +1 -21
- package/segment-collapse/types.js +1 -1
- package/segmented-control/index.d.ts +22 -1
- package/segmented-control/index.js +45 -45
- package/segmented-control/types.d.ts +1 -21
- package/segmented-control/types.js +1 -1
- package/segmented-control-option/index.d.ts +22 -1
- package/segmented-control-option/index.js +46 -44
- package/segmented-control-option/types.d.ts +1 -21
- package/segmented-control-option/types.js +1 -1
- package/segmented-icon-control/index.d.ts +22 -1
- package/segmented-icon-control/index.js +50 -51
- package/segmented-icon-control/types.d.ts +1 -21
- package/segmented-icon-control/types.js +1 -1
- package/segmented-icon-control-option/index.d.ts +22 -1
- package/segmented-icon-control-option/index.js +37 -36
- package/segmented-icon-control-option/types.d.ts +1 -21
- package/segmented-icon-control-option/types.js +1 -1
- package/select-button/index.d.ts +26 -1
- package/select-button/index.js +112 -104
- package/select-button/types.d.ts +1 -25
- package/select-button/types.js +1 -1
- package/select-menu/index.d.ts +22 -1
- package/select-menu/index.js +164 -201
- package/select-menu/types.d.ts +1 -21
- package/select-menu/types.js +1 -1
- package/select-menu-option/index.d.ts +22 -1
- package/select-menu-option/index.js +33 -41
- package/select-menu-option/types.d.ts +1 -21
- package/select-menu-option/types.js +1 -1
- package/select-menu-option/utils.js +1 -4
- package/skeleton/index.d.ts +22 -1
- package/skeleton/index.js +38 -35
- package/skeleton/types.d.ts +1 -21
- package/skeleton/types.js +1 -1
- package/skeleton-item/index.d.ts +22 -1
- package/skeleton-item/index.js +5 -8
- package/skeleton-item/types.d.ts +1 -21
- package/skeleton-item/types.js +1 -1
- package/spinner/index.d.ts +22 -1
- package/spinner/index.js +29 -31
- package/spinner/types.d.ts +1 -21
- package/spinner/types.js +1 -1
- package/standalone.d.ts +8 -0
- package/standalone.js +87 -79
- package/standalone.ts +8 -0
- package/stop-events/index.js +12 -12
- package/table/index.d.ts +21 -1
- package/table/index.js +6 -9
- package/table/types.d.ts +1 -21
- package/table/types.js +1 -1
- package/table-body/index.d.ts +21 -1
- package/table-body/index.js +6 -9
- package/table-body/types.d.ts +1 -21
- package/table-body/types.js +1 -1
- package/table-cell/index.d.ts +22 -2
- package/table-cell/index.js +9 -13
- package/table-cell/types.d.ts +1 -21
- package/table-cell/types.js +1 -1
- package/table-cell/utils.js +1 -4
- package/table-head/index.d.ts +21 -1
- package/table-head/index.js +6 -9
- package/table-head/types.d.ts +1 -21
- package/table-head/types.js +1 -1
- package/table-head-cell/index.d.ts +22 -1
- package/table-head-cell/index.js +27 -29
- package/table-head-cell/types.d.ts +1 -21
- package/table-head-cell/types.js +1 -1
- package/table-row/index.d.ts +22 -1
- package/table-row/index.js +17 -20
- package/table-row/types.d.ts +1 -21
- package/table-row/types.js +1 -1
- package/tabs/index.d.ts +22 -2
- package/tabs/index.js +35 -32
- package/tabs/types.d.ts +1 -21
- package/tabs/types.js +1 -1
- package/tabs-icon-option/index.d.ts +22 -1
- package/tabs-icon-option/index.js +40 -38
- package/tabs-icon-option/types.d.ts +1 -21
- package/tabs-icon-option/types.js +1 -1
- package/tabs-option/index.d.ts +22 -1
- package/tabs-option/index.js +43 -41
- package/tabs-option/types.d.ts +1 -21
- package/tabs-option/types.js +1 -1
- package/tag/colors.js +1 -1
- package/tag/index.d.ts +22 -1
- package/tag/index.js +44 -45
- package/tag/types.d.ts +1 -21
- package/tag/types.js +1 -1
- package/tag/utils.js +3 -7
- package/text/index.d.ts +22 -2
- package/text/index.js +28 -33
- package/text/types.d.ts +1 -21
- package/text/types.js +1 -1
- package/text/utils.js +1 -4
- package/textarea/index.d.ts +22 -1
- package/textarea/index.js +152 -147
- package/textarea/types.d.ts +1 -21
- package/textarea/types.js +1 -1
- package/tile-control/index.d.ts +39 -0
- package/tile-control/index.js +111 -0
- package/tile-control/types.d.ts +29 -0
- package/tile-control/types.js +1 -0
- package/tile-control-option/index.d.ts +40 -0
- package/tile-control-option/index.js +99 -0
- package/tile-control-option/types.d.ts +52 -0
- package/tile-control-option/types.js +1 -0
- package/time-picker/index.d.ts +22 -2
- package/time-picker/index.js +123 -119
- package/time-picker/types.d.ts +1 -21
- package/time-picker/types.js +1 -1
- package/time-picker/utils.js +33 -31
- package/title/index.d.ts +22 -2
- package/title/index.js +31 -32
- package/title/types.d.ts +1 -21
- package/title/types.js +1 -1
- package/title/utils.js +14 -18
- package/toast/index.d.ts +22 -2
- package/toast/index.js +34 -37
- package/toast/types.d.ts +1 -21
- package/toast/types.js +1 -1
- package/toast/utils.js +1 -4
- package/toast-manager/index.d.ts +22 -3
- package/toast-manager/index.js +63 -77
- package/toast-manager/types.d.ts +1 -21
- package/toast-manager/types.js +1 -1
- package/toast-manager/utils.js +1 -4
- package/toggle/index.d.ts +22 -1
- package/toggle/index.js +75 -81
- package/toggle/types.d.ts +1 -21
- package/toggle/types.js +1 -1
- package/tooltip/index.d.ts +22 -3
- package/tooltip/index.js +93 -105
- package/tooltip/tooltip-state.js +64 -56
- package/tooltip/types.d.ts +1 -21
- package/tooltip/types.js +1 -1
- package/tooltip/utils.js +13 -32
- package/types.d.ts +29 -12
- package/utils/adapters.js +1 -1
- package/utils/context.js +42 -32
- package/utils/countries.js +2 -490
- package/utils/csv.js +6 -13
- package/utils/debounce.js +3 -10
- package/utils/dom.js +53 -60
- package/utils/element.d.ts +15 -107
- package/utils/element.js +19 -100
- package/utils/event-target.js +5 -11
- package/utils/form.js +12 -17
- package/utils/get-react-event-handler.js +3 -6
- package/utils/index.js +12 -65
- package/utils/markdown.js +43 -56
- package/utils/rect.js +18 -13
- package/utils/size.js +3 -8
- package/utils/slot.js +9 -13
- package/utils/throttle.js +2 -5
- package/utils/uid.js +2 -5
- package/vertical-stepper/index.d.ts +33 -0
- package/vertical-stepper/index.js +58 -0
- package/vertical-stepper/types.d.ts +34 -0
- package/vertical-stepper/types.js +1 -0
- package/vertical-stepper-item/index.d.ts +38 -0
- package/vertical-stepper-item/index.js +62 -0
- package/vertical-stepper-item/types.d.ts +42 -0
- package/vertical-stepper-item/types.js +1 -0
- package/vertical-stepper-item/utils.d.ts +2 -0
- package/vertical-stepper-item/utils.js +1 -0
- package/accordion/global/index.d.ts +0 -1
- package/accordion/global/index.js +0 -2
- package/accordion-item/global/index.d.ts +0 -1
- package/accordion-item/global/index.js +0 -2
- package/action-menu/global/index.d.ts +0 -1
- package/action-menu/global/index.js +0 -2
- package/action-menu-option/global/index.d.ts +0 -1
- package/action-menu-option/global/index.js +0 -2
- package/alert/global/index.d.ts +0 -1
- package/alert/global/index.js +0 -2
- package/avatar/global/index.d.ts +0 -1
- package/avatar/global/index.js +0 -2
- package/badge/global/index.d.ts +0 -1
- package/badge/global/index.js +0 -2
- package/bundle.d.ts +0 -78
- package/bundle.js +0 -13033
- package/bundle.ts +0 -80
- package/button/global/index.d.ts +0 -1
- package/button/global/index.js +0 -2
- package/button-group/global/index.d.ts +0 -1
- package/button-group/global/index.js +0 -2
- package/button-group-item/global/index.d.ts +0 -1
- package/button-group-item/global/index.js +0 -2
- package/card-container/global/index.d.ts +0 -1
- package/card-container/global/index.js +0 -2
- package/card-v2/global/index.d.ts +0 -1
- package/card-v2/global/index.js +0 -2
- package/card-v2-title/global/index.d.ts +0 -1
- package/card-v2-title/global/index.js +0 -2
- package/checkbox/global/index.d.ts +0 -1
- package/checkbox/global/index.js +0 -2
- package/chip/global/index.d.ts +0 -1
- package/chip/global/index.js +0 -2
- package/code-tag/global/index.d.ts +0 -1
- package/code-tag/global/index.js +0 -2
- package/color-menu/global/index.d.ts +0 -1
- package/color-menu/global/index.js +0 -2
- package/color-menu-option/global/index.d.ts +0 -1
- package/color-menu-option/global/index.js +0 -2
- package/color-swatch/global/index.d.ts +0 -1
- package/color-swatch/global/index.js +0 -2
- package/date-picker/global/index.d.ts +0 -1
- package/date-picker/global/index.js +0 -2
- package/dialog/global/index.d.ts +0 -1
- package/dialog/global/index.js +0 -2
- package/emoji/global/index.d.ts +0 -1
- package/emoji/global/index.js +0 -2
- package/emoji-picker/global/index.d.ts +0 -1
- package/emoji-picker/global/index.js +0 -2
- package/field/global/index.d.ts +0 -1
- package/field/global/index.js +0 -2
- package/file-drop/global/index.d.ts +0 -1
- package/file-drop/global/index.js +0 -2
- package/file-picker/global/index.d.ts +0 -1
- package/file-picker/global/index.js +0 -2
- package/file-status/global/index.d.ts +0 -1
- package/file-status/global/index.js +0 -2
- package/flag/global/index.d.ts +0 -1
- package/flag/global/index.js +0 -2
- package/grid/global/index.d.ts +0 -1
- package/grid/global/index.js +0 -2
- package/grid-item/global/index.d.ts +0 -1
- package/grid-item/global/index.js +0 -2
- package/help-tooltip/global/index.d.ts +0 -1
- package/help-tooltip/global/index.js +0 -2
- package/icon/global/index.d.ts +0 -1
- package/icon/global/index.js +0 -2
- package/inline-alert/global/index.d.ts +0 -1
- package/inline-alert/global/index.js +0 -2
- package/input/global/index.d.ts +0 -1
- package/input/global/index.js +0 -2
- package/link/global/index.d.ts +0 -1
- package/link/global/index.js +0 -2
- package/list/global/index.d.ts +0 -1
- package/list/global/index.js +0 -2
- package/list-item/global/index.d.ts +0 -1
- package/list-item/global/index.js +0 -2
- package/pagination/global/index.d.ts +0 -1
- package/pagination/global/index.js +0 -2
- package/persistent-overlay/global/index.d.ts +0 -1
- package/persistent-overlay/global/index.js +0 -2
- package/pop/global/index.d.ts +0 -1
- package/pop/global/index.js +0 -2
- package/popover/global/index.d.ts +0 -1
- package/popover/global/index.js +0 -2
- package/progress/global/index.d.ts +0 -1
- package/progress/global/index.js +0 -2
- package/progress-stepper/global/index.d.ts +0 -1
- package/progress-stepper/global/index.js +0 -2
- package/progress-stepper-item/global/index.d.ts +0 -1
- package/progress-stepper-item/global/index.js +0 -2
- package/radio/global/index.d.ts +0 -1
- package/radio/global/index.js +0 -2
- package/radio-option/global/index.d.ts +0 -1
- package/radio-option/global/index.js +0 -2
- package/rich-text/global/index.d.ts +0 -1
- package/rich-text/global/index.js +0 -2
- package/rich-textarea/global/index.d.ts +0 -1
- package/rich-textarea/global/index.js +0 -2
- package/segment-collapse/global/index.d.ts +0 -1
- package/segment-collapse/global/index.js +0 -2
- package/segmented-control/global/index.d.ts +0 -1
- package/segmented-control/global/index.js +0 -2
- package/segmented-control-option/global/index.d.ts +0 -1
- package/segmented-control-option/global/index.js +0 -2
- package/segmented-icon-control/global/index.d.ts +0 -1
- package/segmented-icon-control/global/index.js +0 -2
- package/segmented-icon-control-option/global/index.d.ts +0 -1
- package/segmented-icon-control-option/global/index.js +0 -2
- package/select-button/global/index.d.ts +0 -1
- package/select-button/global/index.js +0 -2
- package/select-menu/global/index.d.ts +0 -1
- package/select-menu/global/index.js +0 -2
- package/select-menu-option/global/index.d.ts +0 -1
- package/select-menu-option/global/index.js +0 -2
- package/skeleton/global/index.d.ts +0 -1
- package/skeleton/global/index.js +0 -2
- package/skeleton-item/global/index.d.ts +0 -1
- package/skeleton-item/global/index.js +0 -2
- package/spinner/global/index.d.ts +0 -1
- package/spinner/global/index.js +0 -2
- package/table/global/index.d.ts +0 -1
- package/table/global/index.js +0 -2
- package/table-body/global/index.d.ts +0 -1
- package/table-body/global/index.js +0 -2
- package/table-cell/global/index.d.ts +0 -1
- package/table-cell/global/index.js +0 -2
- package/table-head/global/index.d.ts +0 -1
- package/table-head/global/index.js +0 -2
- package/table-head-cell/global/index.d.ts +0 -1
- package/table-head-cell/global/index.js +0 -2
- package/table-row/global/index.d.ts +0 -1
- package/table-row/global/index.js +0 -2
- package/tabs/global/index.d.ts +0 -1
- package/tabs/global/index.js +0 -2
- package/tabs-icon-option/global/index.d.ts +0 -1
- package/tabs-icon-option/global/index.js +0 -2
- package/tabs-option/global/index.d.ts +0 -1
- package/tabs-option/global/index.js +0 -2
- package/tag/global/index.d.ts +0 -1
- package/tag/global/index.js +0 -2
- package/text/global/index.d.ts +0 -1
- package/text/global/index.js +0 -2
- package/textarea/global/index.d.ts +0 -1
- package/textarea/global/index.js +0 -2
- package/time-picker/global/index.d.ts +0 -1
- package/time-picker/global/index.js +0 -2
- package/title/global/index.d.ts +0 -1
- package/title/global/index.js +0 -2
- package/toast/global/index.d.ts +0 -1
- package/toast/global/index.js +0 -2
- package/toast-manager/global/index.d.ts +0 -1
- package/toast-manager/global/index.js +0 -2
- package/toggle/global/index.d.ts +0 -1
- package/toggle/global/index.js +0 -2
- package/tooltip/global/index.d.ts +0 -1
- package/tooltip/global/index.js +0 -2
- package/utils/component-names.d.ts +0 -3
- package/utils/component-names.js +0 -85
- package/utils/global-components-constants.d.ts +0 -3
- package/utils/global-components-constants.js +0 -8
- package/utils/global-components-manager.d.ts +0 -71
- package/utils/global-components-manager.js +0 -24
- package/utils/shared/global-elements-manager.d.js +0 -1
- package/utils/shared/global-elements-manager.d.ts +0 -62
- package/utils/shared/global-elements-manager.js +0 -163
- package/utils/shared/global-elements-store.d.js +0 -1
- package/utils/shared/global-elements-store.d.ts +0 -12
- package/utils/shared/global-elements-store.js +0 -31
- package/utils/shared/index.d.js +0 -11
- package/utils/shared/index.d.ts +0 -3
- package/utils/shared/index.js +0 -11
- package/utils/shared/nectary-element-base.d.js +0 -1
- package/utils/shared/nectary-element-base.d.ts +0 -9
- package/utils/shared/nectary-element-base.js +0 -25
- package/utils/shared/package.json +0 -9
- package/utils/shared/tsconfig.json +0 -20
package/input/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NectaryComponentReactByType, NectaryComponentVanillaByType, NectaryComponentVanilla
|
|
1
|
+
import type { NectaryComponentReactByType, NectaryComponentVanillaByType, NectaryComponentVanilla } from '../types';
|
|
2
2
|
import type { TSinchSize } from '../utils/size';
|
|
3
3
|
export type TSinchInputType = 'text' | 'password' | 'number';
|
|
4
4
|
export type TSinchInputClipboardEvent = CustomEvent<{
|
|
@@ -83,23 +83,3 @@ export type TSinchInput = {
|
|
|
83
83
|
};
|
|
84
84
|
export type TSinchInputElement = NectaryComponentVanillaByType<TSinchInput>;
|
|
85
85
|
export type TSinchInputReact = NectaryComponentReactByType<TSinchInput>;
|
|
86
|
-
declare global {
|
|
87
|
-
interface NectaryComponentMap {
|
|
88
|
-
'sinch-input': TSinchInput;
|
|
89
|
-
}
|
|
90
|
-
interface HTMLElementTagNameMap {
|
|
91
|
-
'sinch-input': NectaryComponentVanilla<'sinch-input'>;
|
|
92
|
-
}
|
|
93
|
-
namespace JSX {
|
|
94
|
-
interface IntrinsicElements {
|
|
95
|
-
'sinch-input': NectaryComponentReact<'sinch-input'>;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
declare module 'react' {
|
|
100
|
-
namespace JSX {
|
|
101
|
-
interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
|
|
102
|
-
'sinch-input': NectaryComponentReact<'sinch-input'>;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
package/input/types.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
package/input/utils.js
CHANGED
|
@@ -1,32 +1,34 @@
|
|
|
1
|
-
const inputTypes = [
|
|
2
|
-
const MASK_SYMBOL_LETTER =
|
|
3
|
-
const MASK_SYMBOL_DIGIT =
|
|
4
|
-
const EMPTY_CHAR =
|
|
1
|
+
export const inputTypes = ['text', 'password', 'number'];
|
|
2
|
+
const MASK_SYMBOL_LETTER = 'A';
|
|
3
|
+
const MASK_SYMBOL_DIGIT = '0';
|
|
4
|
+
const EMPTY_CHAR = ' ';
|
|
5
5
|
const MASK_MODE_DIGIT = 0;
|
|
6
6
|
const MASK_MODE_LETTER = 1;
|
|
7
7
|
const MASK_MODE_EXACT = 2;
|
|
8
|
-
const MASK_PLACEHOLDER_DELIMITER =
|
|
9
|
-
const MASK_PLACEHOLDER =
|
|
8
|
+
const MASK_PLACEHOLDER_DELIMITER = '@@';
|
|
9
|
+
const MASK_PLACEHOLDER = '_';
|
|
10
10
|
const testMaskedValue = (maskSymbol, inputChar) => {
|
|
11
11
|
switch (maskSymbol.mode) {
|
|
12
|
-
case MASK_MODE_DIGIT:
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
case MASK_MODE_DIGIT:
|
|
13
|
+
{
|
|
14
|
+
return /\d/.test(inputChar);
|
|
15
|
+
}
|
|
16
|
+
case MASK_MODE_LETTER:
|
|
17
|
+
{
|
|
18
|
+
return /\p{Letter}/u.test(inputChar);
|
|
19
|
+
}
|
|
18
20
|
}
|
|
19
21
|
return false;
|
|
20
22
|
};
|
|
21
|
-
const isExactMode =
|
|
22
|
-
const isEmptyChar =
|
|
23
|
-
const getMaskSymbols =
|
|
23
|
+
const isExactMode = maskSymbol => maskSymbol.mode === MASK_MODE_EXACT;
|
|
24
|
+
const isEmptyChar = char => char === EMPTY_CHAR;
|
|
25
|
+
export const getMaskSymbols = maskValue => {
|
|
24
26
|
const res = [];
|
|
25
27
|
const [mask, placeholder] = maskValue.split(MASK_PLACEHOLDER_DELIMITER);
|
|
26
28
|
const maskSymbols = [...mask];
|
|
27
29
|
const placeholderChars = placeholder != null ? [...placeholder] : [];
|
|
28
30
|
for (let maskIndex = 0, placeholderIndex = 0; maskIndex < maskSymbols.length; maskIndex++, placeholderIndex++) {
|
|
29
|
-
if (maskSymbols[maskIndex] ===
|
|
31
|
+
if (maskSymbols[maskIndex] === '\\') {
|
|
30
32
|
maskIndex += 1;
|
|
31
33
|
res.push({
|
|
32
34
|
value: maskSymbols[maskIndex],
|
|
@@ -61,11 +63,11 @@ const getPlaceholder = (chars, maskSymbols) => {
|
|
|
61
63
|
for (let i = 0; i < maskSymbols.length; i++) {
|
|
62
64
|
res[i] = i >= chars.length || isEmptyChar(chars[i]) || isExactMode(maskSymbols[i]) ? maskSymbols[i].placeholder : EMPTY_CHAR;
|
|
63
65
|
}
|
|
64
|
-
return res.join(
|
|
66
|
+
return res.join('');
|
|
65
67
|
};
|
|
66
68
|
const isMaskedInputComplete = (chars, maskSymbols) => {
|
|
67
69
|
if (chars.length > maskSymbols.length) {
|
|
68
|
-
throw new Error(
|
|
70
|
+
throw new Error('chars.length > maskSymbols.length');
|
|
69
71
|
}
|
|
70
72
|
if (chars.length < maskSymbols.length) {
|
|
71
73
|
return false;
|
|
@@ -99,15 +101,15 @@ const isCursorAtTheBeginning = (maskSymbols, selectoinStart) => {
|
|
|
99
101
|
};
|
|
100
102
|
const getMergedValue = (chars, maskSymbols) => {
|
|
101
103
|
if (!isMaskedInputComplete(chars, maskSymbols)) {
|
|
102
|
-
return
|
|
104
|
+
return '';
|
|
103
105
|
}
|
|
104
106
|
const res = new Array(chars.length);
|
|
105
107
|
for (let i = 0; i < chars.length; i++) {
|
|
106
108
|
res[i] = isExactMode(maskSymbols[i]) ? maskSymbols[i].value : chars[i];
|
|
107
109
|
}
|
|
108
|
-
return res.join(
|
|
110
|
+
return res.join('');
|
|
109
111
|
};
|
|
110
|
-
const findLastNonEmptyCharIndex =
|
|
112
|
+
const findLastNonEmptyCharIndex = chars => {
|
|
111
113
|
for (let i = chars.length - 1; i >= 0; i--) {
|
|
112
114
|
if (!isEmptyChar(chars[i])) {
|
|
113
115
|
return i;
|
|
@@ -127,13 +129,13 @@ const compileResult = (chars, maskSymbols, cursorPos) => {
|
|
|
127
129
|
chars.length = lastEmptyPos;
|
|
128
130
|
}
|
|
129
131
|
return {
|
|
130
|
-
value: chars.join(
|
|
132
|
+
value: chars.join(''),
|
|
131
133
|
placeholder: getPlaceholder(chars, maskSymbols),
|
|
132
134
|
cursorPos: Math.min(cursorPos, chars.length),
|
|
133
135
|
mergedValue: getMergedValue(chars, maskSymbols)
|
|
134
136
|
};
|
|
135
137
|
};
|
|
136
|
-
const deleteContentBackward = (inputValue, maskSymbols, selectionStart, selectionEnd) => {
|
|
138
|
+
export const deleteContentBackward = (inputValue, maskSymbols, selectionStart, selectionEnd) => {
|
|
137
139
|
if (selectionEnd === 0) {
|
|
138
140
|
return null;
|
|
139
141
|
}
|
|
@@ -154,7 +156,7 @@ const deleteContentBackward = (inputValue, maskSymbols, selectionStart, selectio
|
|
|
154
156
|
}
|
|
155
157
|
return compileResult(chars, maskSymbols, cusrsorPos);
|
|
156
158
|
};
|
|
157
|
-
const deleteContentForward = (inputValue, maskSymbols, selectionStart, selectionEnd) => {
|
|
159
|
+
export const deleteContentForward = (inputValue, maskSymbols, selectionStart, selectionEnd) => {
|
|
158
160
|
if (selectionStart >= maskSymbols.length) {
|
|
159
161
|
return null;
|
|
160
162
|
}
|
|
@@ -172,7 +174,7 @@ const deleteContentForward = (inputValue, maskSymbols, selectionStart, selection
|
|
|
172
174
|
}
|
|
173
175
|
return compileResult(chars, maskSymbols, cursorPos + 1);
|
|
174
176
|
};
|
|
175
|
-
const beginMaskedComposition = (inputValue, maskSymbols, selectionStart) => {
|
|
177
|
+
export const beginMaskedComposition = (inputValue, maskSymbols, selectionStart) => {
|
|
176
178
|
const chars = getCharsFromInputValue(inputValue, maskSymbols);
|
|
177
179
|
const placeholder = new Array(chars.length);
|
|
178
180
|
for (let i = 0; i < maskSymbols.length; i++) {
|
|
@@ -181,11 +183,11 @@ const beginMaskedComposition = (inputValue, maskSymbols, selectionStart) => {
|
|
|
181
183
|
placeholder[selectionStart] = EMPTY_CHAR;
|
|
182
184
|
chars.splice(selectionStart, 1);
|
|
183
185
|
return {
|
|
184
|
-
value: chars.join(
|
|
185
|
-
placeholder: placeholder.join(
|
|
186
|
+
value: chars.join(''),
|
|
187
|
+
placeholder: placeholder.join('')
|
|
186
188
|
};
|
|
187
189
|
};
|
|
188
|
-
const endMaskedComposition = (inputValue, data, maskSymbols, selectionStart, wasValueInserted) => {
|
|
190
|
+
export const endMaskedComposition = (inputValue, data, maskSymbols, selectionStart, wasValueInserted) => {
|
|
189
191
|
let cursorPos = selectionStart;
|
|
190
192
|
const chars = getCharsFromInputValue(inputValue, maskSymbols);
|
|
191
193
|
const dataChars = [...data];
|
|
@@ -203,9 +205,9 @@ const endMaskedComposition = (inputValue, data, maskSymbols, selectionStart, was
|
|
|
203
205
|
return compileResult(chars, maskSymbols, cursorPos);
|
|
204
206
|
}
|
|
205
207
|
for (let dataPos = 0; dataPos < dataChars.length && cursorPos < maskSymbols.length; ++dataPos, ++cursorPos) {
|
|
206
|
-
const
|
|
207
|
-
if (isEmptyChar(chars[cursorPos]) && testMaskedValue(maskSymbols[cursorPos],
|
|
208
|
-
chars[cursorPos] =
|
|
208
|
+
const data = dataChars[dataPos];
|
|
209
|
+
if (isEmptyChar(chars[cursorPos]) && testMaskedValue(maskSymbols[cursorPos], data)) {
|
|
210
|
+
chars[cursorPos] = data;
|
|
209
211
|
}
|
|
210
212
|
}
|
|
211
213
|
while (cursorPos < maskSymbols.length && isExactMode(maskSymbols[cursorPos])) {
|
|
@@ -213,7 +215,7 @@ const endMaskedComposition = (inputValue, data, maskSymbols, selectionStart, was
|
|
|
213
215
|
}
|
|
214
216
|
return compileResult(chars, maskSymbols, cursorPos);
|
|
215
217
|
};
|
|
216
|
-
const insertText = (inputValue, data, maskSymbols, selectionStart, selectionEnd) => {
|
|
218
|
+
export const insertText = (inputValue, data, maskSymbols, selectionStart, selectionEnd) => {
|
|
217
219
|
const chars = getCharsFromInputValue(inputValue, maskSymbols);
|
|
218
220
|
let cursorPos = selectionStart;
|
|
219
221
|
clearCharsSelection(chars, selectionStart, selectionEnd);
|
|
@@ -234,7 +236,7 @@ const insertText = (inputValue, data, maskSymbols, selectionStart, selectionEnd)
|
|
|
234
236
|
}
|
|
235
237
|
return compileResult(chars, maskSymbols, cursorPos);
|
|
236
238
|
};
|
|
237
|
-
const insertFromPaste = (inputValue, data, maskSymbols, selectionStart, selectionEnd) => {
|
|
239
|
+
export const insertFromPaste = (inputValue, data, maskSymbols, selectionStart, selectionEnd) => {
|
|
238
240
|
const chars = getCharsFromInputValue(inputValue, maskSymbols);
|
|
239
241
|
let cursorPos = selectionStart;
|
|
240
242
|
clearCharsSelection(chars, selectionStart, selectionEnd);
|
|
@@ -249,17 +251,17 @@ const insertFromPaste = (inputValue, data, maskSymbols, selectionStart, selectio
|
|
|
249
251
|
return compileResult(chars, maskSymbols, cursorPos);
|
|
250
252
|
}
|
|
251
253
|
const dataChars = [...data];
|
|
252
|
-
for (let dataPos = 0; dataPos < dataChars.length && cursorPos < maskSymbols.length;
|
|
253
|
-
const
|
|
254
|
+
for (let dataPos = 0; dataPos < dataChars.length && cursorPos < maskSymbols.length;) {
|
|
255
|
+
const data = dataChars[dataPos];
|
|
254
256
|
const maskSymbol = maskSymbols[cursorPos];
|
|
255
257
|
if (isExactMode(maskSymbol)) {
|
|
256
|
-
if (maskSymbol.value ===
|
|
258
|
+
if (maskSymbol.value === data) {
|
|
257
259
|
++dataPos;
|
|
258
260
|
}
|
|
259
261
|
++cursorPos;
|
|
260
262
|
} else {
|
|
261
|
-
if (testMaskedValue(maskSymbol,
|
|
262
|
-
chars[cursorPos] =
|
|
263
|
+
if (testMaskedValue(maskSymbol, data)) {
|
|
264
|
+
chars[cursorPos] = data;
|
|
263
265
|
++cursorPos;
|
|
264
266
|
}
|
|
265
267
|
++dataPos;
|
|
@@ -267,11 +269,11 @@ const insertFromPaste = (inputValue, data, maskSymbols, selectionStart, selectio
|
|
|
267
269
|
}
|
|
268
270
|
return compileResult(chars, maskSymbols, cursorPos);
|
|
269
271
|
};
|
|
270
|
-
const splitValueAndMask = (inputValue, maskSymbols) => {
|
|
271
|
-
const chars = getCharsFromInputValue(
|
|
272
|
+
export const splitValueAndMask = (inputValue, maskSymbols) => {
|
|
273
|
+
const chars = getCharsFromInputValue('', maskSymbols);
|
|
272
274
|
const dataChars = getCharsFromInputValue(inputValue, maskSymbols);
|
|
273
275
|
let cursorPos = 0;
|
|
274
|
-
for (let dataPos = 0; dataPos < dataChars.length && cursorPos < maskSymbols.length;
|
|
276
|
+
for (let dataPos = 0; dataPos < dataChars.length && cursorPos < maskSymbols.length;) {
|
|
275
277
|
const data = dataChars[dataPos];
|
|
276
278
|
const maskSymbol = maskSymbols[cursorPos];
|
|
277
279
|
if (isExactMode(maskSymbol)) {
|
|
@@ -289,24 +291,12 @@ const splitValueAndMask = (inputValue, maskSymbols) => {
|
|
|
289
291
|
}
|
|
290
292
|
return compileResult(chars, maskSymbols, chars.length);
|
|
291
293
|
};
|
|
292
|
-
const getMergedValueSliced = (inputValue, maskSymbols, selectionStart, selectionEnd) => {
|
|
294
|
+
export const getMergedValueSliced = (inputValue, maskSymbols, selectionStart, selectionEnd) => {
|
|
293
295
|
const chars = getCharsFromInputValue(inputValue, maskSymbols);
|
|
294
296
|
for (let i = selectionStart; i < selectionEnd && i < maskSymbols.length; i++) {
|
|
295
297
|
if (isExactMode(maskSymbols[i])) {
|
|
296
298
|
chars[i] = maskSymbols[i].value;
|
|
297
299
|
}
|
|
298
300
|
}
|
|
299
|
-
return chars.slice(selectionStart, selectionEnd).join(
|
|
300
|
-
};
|
|
301
|
-
export {
|
|
302
|
-
beginMaskedComposition,
|
|
303
|
-
deleteContentBackward,
|
|
304
|
-
deleteContentForward,
|
|
305
|
-
endMaskedComposition,
|
|
306
|
-
getMaskSymbols,
|
|
307
|
-
getMergedValueSliced,
|
|
308
|
-
inputTypes,
|
|
309
|
-
insertFromPaste,
|
|
310
|
-
insertText,
|
|
311
|
-
splitValueAndMask
|
|
312
|
-
};
|
|
301
|
+
return chars.slice(selectionStart, selectionEnd).join('');
|
|
302
|
+
};
|
package/link/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import '../icon';
|
|
2
2
|
import { NectaryElement } from '../utils';
|
|
3
|
-
|
|
3
|
+
import type { TSinchLink } from './types';
|
|
4
|
+
import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
|
|
4
5
|
export declare class Link extends NectaryElement {
|
|
5
6
|
#private;
|
|
6
7
|
constructor();
|
|
@@ -26,3 +27,23 @@ export declare class Link extends NectaryElement {
|
|
|
26
27
|
focus(): void;
|
|
27
28
|
blur(): void;
|
|
28
29
|
}
|
|
30
|
+
declare global {
|
|
31
|
+
interface NectaryComponentMap {
|
|
32
|
+
'sinch-link': TSinchLink;
|
|
33
|
+
}
|
|
34
|
+
interface HTMLElementTagNameMap {
|
|
35
|
+
'sinch-link': NectaryComponentVanilla<'sinch-link'>;
|
|
36
|
+
}
|
|
37
|
+
namespace JSX {
|
|
38
|
+
interface IntrinsicElements {
|
|
39
|
+
'sinch-link': NectaryComponentReact<'sinch-link'>;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
declare module 'react' {
|
|
44
|
+
namespace JSX {
|
|
45
|
+
interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
|
|
46
|
+
'sinch-link': NectaryComponentReact<'sinch-link'>;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
package/link/index.js
CHANGED
|
@@ -1,122 +1,118 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const templateHTML = '<style>\n :host {\n display: inline;\n }\n\n a {\n font: var(--sinch-comp-link-default-font-initial);\n font-size: inherit;\n line-height: inherit;\n text-decoration: var(--sinch-comp-link-default-text-decoration-initial);\n color: var(--sinch-comp-link-color-default-text-initial);\n border-radius: 0.5em;\n white-space: nowrap;\n\n --sinch-global-color-icon: var(--sinch-comp-link-color-default-icon-initial);\n }\n\n a:hover {\n text-decoration: var(--sinch-comp-link-default-text-decoration-hover);\n color: var(--sinch-comp-link-color-default-text-hover);\n\n --sinch-global-color-icon: var(--sinch-comp-link-color-default-icon-hover);\n }\n\n a:focus-visible {\n outline: 2px solid var(--sinch-comp-link-color-default-outline-focus);\n outline-offset: 2px;\n }\n\n :host([standalone]) {\n display: block;\n }\n\n :host([standalone]) a {\n display: block;\n font: var(--sinch-comp-link-standalone-font-initial);\n font-size: inherit;\n line-height: inherit;\n text-decoration: none;\n width: fit-content;\n }\n\n #external-icon,\n #standalone-icon {\n display: none;\n height: 1em;\n }\n\n #icon-prefix {\n display: none;\n margin-left: -0.25em;\n }\n\n :host([external]:not([standalone])) #external-icon {\n display: inline-block;\n margin-left: 0.25em;\n vertical-align: -0.2em;\n\n --sinch-global-size-icon: 1em;\n }\n\n :host([standalone][external]) #external-icon {\n display: inline-block;\n vertical-align: -0.4em;\n\n --sinch-global-size-icon: 1.5em;\n }\n\n :host([standalone]) #icon-prefix {\n display: inline;\n }\n\n :host([standalone]:not([external])) #standalone-icon {\n display: inline-block;\n vertical-align: -0.4em;\n\n --sinch-global-size-icon: 1.5em;\n }\n\n :host([disabled]) a {\n color: var(--sinch-comp-link-color-disabled-text-initial);\n pointer-events: none;\n cursor: initial;\n text-decoration: var(--sinch-comp-link-default-text-decoration-disabled);\n\n --sinch-global-color-icon: var(--sinch-comp-link-color-disabled-icon-initial);\n }\n\n #content {\n white-space: var(--sinch-global-text-white-space, normal);\n }\n</style>\n\n<a referrerpolicy="no-referer" aria-hidden="true">\n <span id="content"></span>\n <span id="icon-prefix"> </span>\n <sinch-icon icons-version="2" name="fa-arrow-up-right" id="external-icon"></sinch-icon>\n <sinch-icon icons-version="2" name="fa-arrow-right" id="standalone-icon"></sinch-icon>\n</a>\n';
|
|
6
|
-
const template = document.createElement("template");
|
|
1
|
+
import '../icon';
|
|
2
|
+
import { defineCustomElement, getBooleanAttribute, getAttribute, updateBooleanAttribute, updateAttribute, NectaryElement, isAttrTrue, getReactEventHandler, isAttrEqual } from '../utils';
|
|
3
|
+
const templateHTML = '<style>:host{display:inline}a{font:var(--sinch-comp-link-default-font-initial);font-size:inherit;line-height:inherit;text-decoration:var(--sinch-comp-link-default-text-decoration-initial);color:var(--sinch-comp-link-color-default-text-initial);border-radius:.5em;white-space:nowrap;--sinch-global-color-icon:var(--sinch-comp-link-color-default-icon-initial)}a:hover{text-decoration:var(--sinch-comp-link-default-text-decoration-hover);color:var(--sinch-comp-link-color-default-text-hover);--sinch-global-color-icon:var(--sinch-comp-link-color-default-icon-hover)}a:focus-visible{outline:2px solid var(--sinch-comp-link-color-default-outline-focus);outline-offset:2px}:host([standalone]){display:block}:host([standalone]) a{display:block;font:var(--sinch-comp-link-standalone-font-initial);font-size:inherit;line-height:inherit;text-decoration:none;width:fit-content}#external-icon,#standalone-icon{display:none;height:1em}#icon-prefix{display:none;margin-left:-.25em}:host([external]:not([standalone])) #external-icon{display:inline-block;margin-left:.25em;vertical-align:-.2em;--sinch-global-size-icon:1em}:host([standalone][external]) #external-icon{display:inline-block;vertical-align:-.4em;--sinch-global-size-icon:1.5em}:host([standalone]) #icon-prefix{display:inline}:host([standalone]:not([external])) #standalone-icon{display:inline-block;vertical-align:-.4em;--sinch-global-size-icon:1.5em}:host([disabled]) a{color:var(--sinch-comp-link-color-disabled-text-initial);pointer-events:none;cursor:initial;text-decoration:var(--sinch-comp-link-default-text-decoration-disabled);--sinch-global-color-icon:var(--sinch-comp-link-color-disabled-icon-initial)}#content{white-space:var(--sinch-global-text-white-space,normal)}</style><a referrerpolicy="no-referer" aria-hidden="true"><span id="content"></span><span id="icon-prefix"> </span><sinch-icon icons-version="2" name="fa-arrow-up-right" id="external-icon"></sinch-icon><sinch-icon icons-version="2" name="fa-arrow-right" id="standalone-icon"></sinch-icon></a>';
|
|
4
|
+
const template = document.createElement('template');
|
|
7
5
|
template.innerHTML = templateHTML;
|
|
8
|
-
class Link extends NectaryElement {
|
|
6
|
+
export class Link extends NectaryElement {
|
|
9
7
|
#$anchor;
|
|
10
8
|
#$text;
|
|
11
9
|
constructor() {
|
|
12
10
|
super();
|
|
13
11
|
const shadowRoot = this.attachShadow();
|
|
14
12
|
shadowRoot.appendChild(template.content.cloneNode(true));
|
|
15
|
-
this.#$anchor = shadowRoot.querySelector(
|
|
16
|
-
this.#$text = shadowRoot.querySelector(
|
|
13
|
+
this.#$anchor = shadowRoot.querySelector('a');
|
|
14
|
+
this.#$text = shadowRoot.querySelector('#content');
|
|
17
15
|
}
|
|
18
16
|
connectedCallback() {
|
|
19
|
-
this.setAttribute(
|
|
20
|
-
this.#$anchor.addEventListener(
|
|
21
|
-
this.#$anchor.addEventListener(
|
|
22
|
-
this.#$anchor.addEventListener(
|
|
23
|
-
this.addEventListener(
|
|
24
|
-
this.addEventListener(
|
|
25
|
-
this.addEventListener(
|
|
17
|
+
this.setAttribute('role', 'link');
|
|
18
|
+
this.#$anchor.addEventListener('click', this.#onAnchorClick);
|
|
19
|
+
this.#$anchor.addEventListener('focus', this.#onAnchorFocus);
|
|
20
|
+
this.#$anchor.addEventListener('blur', this.#onAnchorBlur);
|
|
21
|
+
this.addEventListener('-click', this.#onClickReactHandler);
|
|
22
|
+
this.addEventListener('-focus', this.#onFocusReactHandler);
|
|
23
|
+
this.addEventListener('-blur', this.#onBlurReactHandler);
|
|
26
24
|
}
|
|
27
25
|
disconnectedCallback() {
|
|
28
|
-
this.#$anchor.removeEventListener(
|
|
29
|
-
this.#$anchor.removeEventListener(
|
|
30
|
-
this.#$anchor.removeEventListener(
|
|
31
|
-
this.removeEventListener(
|
|
32
|
-
this.removeEventListener(
|
|
33
|
-
this.removeEventListener(
|
|
26
|
+
this.#$anchor.removeEventListener('click', this.#onAnchorClick);
|
|
27
|
+
this.#$anchor.removeEventListener('focus', this.#onAnchorFocus);
|
|
28
|
+
this.#$anchor.removeEventListener('blur', this.#onAnchorBlur);
|
|
29
|
+
this.removeEventListener('-click', this.#onClickReactHandler);
|
|
30
|
+
this.removeEventListener('-focus', this.#onFocusReactHandler);
|
|
31
|
+
this.removeEventListener('-blur', this.#onBlurReactHandler);
|
|
34
32
|
}
|
|
35
33
|
static get observedAttributes() {
|
|
36
|
-
return [
|
|
37
|
-
"text",
|
|
38
|
-
"href",
|
|
39
|
-
"use-history",
|
|
40
|
-
"external",
|
|
41
|
-
"standalone",
|
|
42
|
-
"disabled"
|
|
43
|
-
];
|
|
34
|
+
return ['text', 'href', 'use-history', 'external', 'standalone', 'disabled'];
|
|
44
35
|
}
|
|
45
36
|
attributeChangedCallback(name, oldVal, newVal) {
|
|
46
37
|
if (isAttrEqual(oldVal, newVal)) {
|
|
47
38
|
return;
|
|
48
39
|
}
|
|
49
40
|
switch (name) {
|
|
50
|
-
case
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
41
|
+
case 'text':
|
|
42
|
+
{
|
|
43
|
+
this.#$text.textContent = newVal;
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
case 'href':
|
|
47
|
+
{
|
|
48
|
+
updateAttribute(this.#$anchor, 'href', newVal);
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
case 'use-history':
|
|
52
|
+
{
|
|
53
|
+
const shouldUseHistory = isAttrTrue(newVal);
|
|
54
|
+
if (shouldUseHistory) {
|
|
55
|
+
updateBooleanAttribute(this, 'preventdefault', true);
|
|
56
|
+
}
|
|
57
|
+
updateBooleanAttribute(this, name, shouldUseHistory);
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
case 'standalone':
|
|
61
|
+
case 'disabled':
|
|
62
|
+
{
|
|
63
|
+
updateBooleanAttribute(this, name, isAttrTrue(newVal));
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
case 'external':
|
|
67
|
+
{
|
|
68
|
+
const isExternal = isAttrTrue(newVal);
|
|
69
|
+
updateAttribute(this.#$anchor, 'target', isExternal ? '_blank' : null);
|
|
70
|
+
updateBooleanAttribute(this, name, isExternal);
|
|
71
|
+
break;
|
|
62
72
|
}
|
|
63
|
-
updateBooleanAttribute(this, name, shouldUseHistory);
|
|
64
|
-
break;
|
|
65
|
-
}
|
|
66
|
-
case "standalone":
|
|
67
|
-
case "disabled": {
|
|
68
|
-
updateBooleanAttribute(this, name, isAttrTrue(newVal));
|
|
69
|
-
break;
|
|
70
|
-
}
|
|
71
|
-
case "external": {
|
|
72
|
-
const isExternal = isAttrTrue(newVal);
|
|
73
|
-
updateAttribute(this.#$anchor, "target", isExternal ? "_blank" : null);
|
|
74
|
-
updateBooleanAttribute(this, name, isExternal);
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
73
|
}
|
|
78
74
|
}
|
|
79
75
|
get text() {
|
|
80
|
-
return getAttribute(this,
|
|
76
|
+
return getAttribute(this, 'text', '');
|
|
81
77
|
}
|
|
82
78
|
set text(value) {
|
|
83
|
-
updateAttribute(this,
|
|
79
|
+
updateAttribute(this, 'text', value);
|
|
84
80
|
}
|
|
85
81
|
get href() {
|
|
86
|
-
return getAttribute(this,
|
|
82
|
+
return getAttribute(this, 'href', '');
|
|
87
83
|
}
|
|
88
84
|
set href(value) {
|
|
89
|
-
updateAttribute(this,
|
|
85
|
+
updateAttribute(this, 'href', value);
|
|
90
86
|
}
|
|
91
|
-
set
|
|
92
|
-
updateBooleanAttribute(this,
|
|
87
|
+
set 'use-history'(value) {
|
|
88
|
+
updateBooleanAttribute(this, 'use-history', value);
|
|
93
89
|
}
|
|
94
|
-
get
|
|
95
|
-
return getBooleanAttribute(this,
|
|
90
|
+
get 'use-history'() {
|
|
91
|
+
return getBooleanAttribute(this, 'use-history');
|
|
96
92
|
}
|
|
97
93
|
set disabled(isDisabled) {
|
|
98
|
-
updateBooleanAttribute(this,
|
|
94
|
+
updateBooleanAttribute(this, 'disabled', isDisabled);
|
|
99
95
|
}
|
|
100
96
|
get disabled() {
|
|
101
|
-
return getBooleanAttribute(this,
|
|
97
|
+
return getBooleanAttribute(this, 'disabled');
|
|
102
98
|
}
|
|
103
99
|
set external(isExternal) {
|
|
104
|
-
updateBooleanAttribute(this,
|
|
100
|
+
updateBooleanAttribute(this, 'external', isExternal);
|
|
105
101
|
}
|
|
106
102
|
get external() {
|
|
107
|
-
return getBooleanAttribute(this,
|
|
103
|
+
return getBooleanAttribute(this, 'external');
|
|
108
104
|
}
|
|
109
105
|
set standalone(isstandalone) {
|
|
110
|
-
updateBooleanAttribute(this,
|
|
106
|
+
updateBooleanAttribute(this, 'standalone', isstandalone);
|
|
111
107
|
}
|
|
112
108
|
get standalone() {
|
|
113
|
-
return getBooleanAttribute(this,
|
|
109
|
+
return getBooleanAttribute(this, 'standalone');
|
|
114
110
|
}
|
|
115
111
|
set preventDefault(isPrevented) {
|
|
116
|
-
updateBooleanAttribute(this,
|
|
112
|
+
updateBooleanAttribute(this, 'preventdefault', isPrevented);
|
|
117
113
|
}
|
|
118
114
|
get preventDefault() {
|
|
119
|
-
return getBooleanAttribute(this,
|
|
115
|
+
return getBooleanAttribute(this, 'preventdefault');
|
|
120
116
|
}
|
|
121
117
|
get focusable() {
|
|
122
118
|
return true;
|
|
@@ -127,34 +123,29 @@ class Link extends NectaryElement {
|
|
|
127
123
|
blur() {
|
|
128
124
|
this.#$anchor.blur();
|
|
129
125
|
}
|
|
130
|
-
#onAnchorClick =
|
|
126
|
+
#onAnchorClick = e => {
|
|
131
127
|
if (this.preventDefault) {
|
|
132
128
|
e.preventDefault();
|
|
133
|
-
if (this[
|
|
134
|
-
history.pushState({},
|
|
129
|
+
if (this['use-history']) {
|
|
130
|
+
history.pushState({}, '', this.href);
|
|
135
131
|
}
|
|
136
132
|
}
|
|
137
|
-
this.dispatchEvent(
|
|
138
|
-
new CustomEvent("-click")
|
|
139
|
-
);
|
|
133
|
+
this.dispatchEvent(new CustomEvent('-click'));
|
|
140
134
|
};
|
|
141
135
|
#onAnchorFocus = () => {
|
|
142
|
-
this.dispatchEvent(new CustomEvent(
|
|
136
|
+
this.dispatchEvent(new CustomEvent('-focus'));
|
|
143
137
|
};
|
|
144
138
|
#onAnchorBlur = () => {
|
|
145
|
-
this.dispatchEvent(new CustomEvent(
|
|
139
|
+
this.dispatchEvent(new CustomEvent('-blur'));
|
|
146
140
|
};
|
|
147
141
|
#onFocusReactHandler = () => {
|
|
148
|
-
getReactEventHandler(this,
|
|
142
|
+
getReactEventHandler(this, 'on-focus')?.();
|
|
149
143
|
};
|
|
150
144
|
#onBlurReactHandler = () => {
|
|
151
|
-
getReactEventHandler(this,
|
|
145
|
+
getReactEventHandler(this, 'on-blur')?.();
|
|
152
146
|
};
|
|
153
|
-
#onClickReactHandler =
|
|
154
|
-
getReactEventHandler(this,
|
|
147
|
+
#onClickReactHandler = e => {
|
|
148
|
+
getReactEventHandler(this, 'on-click')?.(e);
|
|
155
149
|
};
|
|
156
150
|
}
|
|
157
|
-
defineCustomElement(
|
|
158
|
-
export {
|
|
159
|
-
Link
|
|
160
|
-
};
|
|
151
|
+
defineCustomElement('sinch-link', Link);
|
package/link/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NectaryComponentReactByType, NectaryComponentVanillaByType
|
|
1
|
+
import type { NectaryComponentReactByType, NectaryComponentVanillaByType } from '../types';
|
|
2
2
|
export type TSinchLinkProps = {
|
|
3
3
|
/** Text content of hyperlink */
|
|
4
4
|
text: string;
|
|
@@ -49,23 +49,3 @@ export type TSinchLink = {
|
|
|
49
49
|
};
|
|
50
50
|
export type TSinchLinkElement = NectaryComponentVanillaByType<TSinchLink>;
|
|
51
51
|
export type TSinchLinkReact = NectaryComponentReactByType<TSinchLink>;
|
|
52
|
-
declare global {
|
|
53
|
-
interface NectaryComponentMap {
|
|
54
|
-
'sinch-link': TSinchLink;
|
|
55
|
-
}
|
|
56
|
-
interface HTMLElementTagNameMap {
|
|
57
|
-
'sinch-link': NectaryComponentVanilla<'sinch-link'>;
|
|
58
|
-
}
|
|
59
|
-
namespace JSX {
|
|
60
|
-
interface IntrinsicElements {
|
|
61
|
-
'sinch-link': NectaryComponentReact<'sinch-link'>;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
declare module 'react' {
|
|
66
|
-
namespace JSX {
|
|
67
|
-
interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
|
|
68
|
-
'sinch-link': NectaryComponentReact<'sinch-link'>;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
package/link/types.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
package/list/index.d.ts
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
import { NectaryElement } from '../utils';
|
|
2
|
-
|
|
2
|
+
import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
|
|
3
3
|
export declare class List extends NectaryElement {
|
|
4
4
|
constructor();
|
|
5
5
|
connectedCallback(): void;
|
|
6
6
|
}
|
|
7
|
+
declare global {
|
|
8
|
+
interface NectaryComponentMap {
|
|
9
|
+
'sinch-list': {};
|
|
10
|
+
}
|
|
11
|
+
interface HTMLElementTagNameMap {
|
|
12
|
+
'sinch-list': NectaryComponentVanilla<'sinch-list'>;
|
|
13
|
+
}
|
|
14
|
+
namespace JSX {
|
|
15
|
+
interface IntrinsicElements {
|
|
16
|
+
'sinch-list': NectaryComponentReact<'sinch-list'>;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
declare module 'react' {
|
|
21
|
+
namespace JSX {
|
|
22
|
+
interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
|
|
23
|
+
'sinch-list': NectaryComponentReact<'sinch-list'>;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
package/list/index.js
CHANGED
|
@@ -1,18 +1,15 @@
|
|
|
1
|
-
import { defineCustomElement, NectaryElement } from
|
|
2
|
-
const templateHTML = '<style
|
|
3
|
-
const template = document.createElement(
|
|
1
|
+
import { defineCustomElement, NectaryElement } from '../utils';
|
|
2
|
+
const templateHTML = '<style>:host{display:block;height:100%}#wrapper{display:flex;flex-direction:column;box-sizing:border-box;width:100%;height:100%;overflow-y:auto}</style><div id="wrapper"><slot></slot></div>';
|
|
3
|
+
const template = document.createElement('template');
|
|
4
4
|
template.innerHTML = templateHTML;
|
|
5
|
-
class List extends NectaryElement {
|
|
5
|
+
export class List extends NectaryElement {
|
|
6
6
|
constructor() {
|
|
7
7
|
super();
|
|
8
8
|
const shadowRoot = this.attachShadow();
|
|
9
9
|
shadowRoot.appendChild(template.content.cloneNode(true));
|
|
10
10
|
}
|
|
11
11
|
connectedCallback() {
|
|
12
|
-
this.setAttribute(
|
|
12
|
+
this.setAttribute('role', 'list');
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
|
-
defineCustomElement(
|
|
16
|
-
export {
|
|
17
|
-
List
|
|
18
|
-
};
|
|
15
|
+
defineCustomElement('sinch-list', List);
|
package/list/types.d.ts
CHANGED
|
@@ -1,23 +1,3 @@
|
|
|
1
|
-
import type { NectaryComponentReactByType
|
|
1
|
+
import type { NectaryComponentReactByType } from '../types';
|
|
2
2
|
export type TSinchListElement = HTMLElement;
|
|
3
3
|
export type TSinchListReact = NectaryComponentReactByType<TSinchListElement>;
|
|
4
|
-
declare global {
|
|
5
|
-
interface NectaryComponentMap {
|
|
6
|
-
'sinch-list': {};
|
|
7
|
-
}
|
|
8
|
-
interface HTMLElementTagNameMap {
|
|
9
|
-
'sinch-list': NectaryComponentVanilla<'sinch-list'>;
|
|
10
|
-
}
|
|
11
|
-
namespace JSX {
|
|
12
|
-
interface IntrinsicElements {
|
|
13
|
-
'sinch-list': NectaryComponentReact<'sinch-list'>;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
declare module 'react' {
|
|
18
|
-
namespace JSX {
|
|
19
|
-
interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
|
|
20
|
-
'sinch-list': NectaryComponentReact<'sinch-list'>;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
package/list/types.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|