@siemens/ix 2.6.0 → 2.6.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/components/button.js +7 -2
- package/components/button.js.map +1 -1
- package/components/dropdown-item.js +1 -1
- package/components/dropdown-item.js.map +1 -1
- package/components/field-label.js +1 -1
- package/components/field-label.js.map +1 -1
- package/components/field-wrapper.js +2 -2
- package/components/field-wrapper.js.map +1 -1
- package/components/index3.js +2 -1
- package/components/index3.js.map +1 -1
- package/components/input.util.js +4 -8
- package/components/input.util.js.map +1 -1
- package/components/ix-date-input.js +6 -6
- package/components/ix-date-input.js.map +1 -1
- package/components/ix-input.js +3 -3
- package/components/ix-input.js.map +1 -1
- package/components/ix-number-input.js +5 -5
- package/components/ix-number-input.js.map +1 -1
- package/components/ix-textarea.js +2 -2
- package/components/ix-textarea.js.map +1 -1
- package/components/ix-toggle-button.js +2 -2
- package/components/ix-toggle.js +25 -5
- package/components/ix-toggle.js.map +1 -1
- package/components/ix-tree.js +330 -496
- package/components/ix-tree.js.map +1 -1
- package/components/ix-upload.js +3 -3
- package/components/ix-validation-tooltip.js +2 -2
- package/components/ix-workflow-step.js +3 -3
- package/components/ix-workflow-steps.js +1 -1
- package/components/modal.js +6 -0
- package/components/modal.js.map +1 -1
- package/components/select.js +68 -52
- package/components/select.js.map +1 -1
- package/components/tooltip.js +2 -2
- package/components/tree-item.js +6 -5
- package/components/tree-item.js.map +1 -1
- package/dist/cjs/{app-globals-3c9c6a50.js → app-globals-4d8f1524.js} +2 -2
- package/dist/cjs/{app-globals-3c9c6a50.js.map → app-globals-4d8f1524.js.map} +1 -1
- package/dist/cjs/core-js-b22adfab.js +26 -0
- package/dist/cjs/core-js-b22adfab.js.map +1 -0
- package/dist/cjs/{helper-text-util-3192e78f.js → helper-text-util-635a1877.js} +2 -2
- package/dist/cjs/{helper-text-util-3192e78f.js.map → helper-text-util-635a1877.js.map} +1 -1
- package/dist/cjs/{index-74904d8b.js → index-492e6488.js} +2 -2
- package/dist/cjs/{index-74904d8b.js.map → index-492e6488.js.map} +1 -1
- package/dist/cjs/{index-d2117dc0.js → index-b44a6617.js} +3 -1
- package/dist/cjs/index-b44a6617.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/{index.es2017-0c2b80b6.js → index.es2017-805b5876.js} +3 -3
- package/dist/cjs/{index.es2017-0c2b80b6.js.map → index.es2017-805b5876.js.map} +1 -1
- package/dist/cjs/{input.util-1c2fa43d.js → input.util-54d161e6.js} +5 -9
- package/dist/cjs/input.util-54d161e6.js.map +1 -0
- package/dist/cjs/ix-application-header.cjs.entry.js +2 -2
- package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
- package/dist/cjs/ix-button.cjs.entry.js +7 -2
- package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-col_4.cjs.entry.js +1 -1
- package/dist/cjs/ix-date-input.cjs.entry.js +6 -6
- package/dist/cjs/ix-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-field-label_3.cjs.entry.js +7 -7
- package/dist/cjs/ix-field-label_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-helper-text.cjs.entry.js +2 -2
- package/dist/cjs/{ix-icon.entry-e95ddded.js → ix-icon.entry-e33446e2.js} +2 -2
- package/dist/cjs/{ix-icon.entry-e95ddded.js.map → ix-icon.entry-e33446e2.js.map} +1 -1
- package/dist/cjs/ix-input.cjs.entry.js +5 -5
- package/dist/cjs/ix-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu.cjs.entry.js +2 -2
- package/dist/cjs/ix-number-input.cjs.entry.js +7 -7
- package/dist/cjs/ix-number-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-select.cjs.entry.js +68 -52
- package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-textarea.cjs.entry.js +3 -3
- package/dist/cjs/ix-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-time-picker.cjs.entry.js +1 -1
- package/dist/cjs/ix-toggle-button.cjs.entry.js +2 -2
- package/dist/cjs/ix-toggle.cjs.entry.js +17 -3
- package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tree-item.cjs.entry.js +6 -5
- package/dist/cjs/ix-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tree.cjs.entry.js +330 -489
- package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-upload.cjs.entry.js +3 -3
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
- package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{modal-a49409aa.js → modal-923c83a6.js} +7 -1
- package/dist/cjs/modal-923c83a6.js.map +1 -0
- package/dist/cjs/{setup-86b7d543.js → setup-cc07fbfc.js} +2 -2
- package/dist/cjs/{setup-86b7d543.js.map → setup-cc07fbfc.js.map} +1 -1
- package/dist/cjs/siemens-ix.cjs.js +3 -3
- package/dist/collection/components/button/button.js +7 -2
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/date-input/date-input.js +8 -6
- package/dist/collection/components/date-input/date-input.js.map +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.css +0 -3
- package/dist/collection/components/field-label/field-label.js +13 -5
- package/dist/collection/components/field-label/field-label.js.map +1 -1
- package/dist/collection/components/field-wrapper/field-wrapper.js +12 -4
- package/dist/collection/components/field-wrapper/field-wrapper.js.map +1 -1
- package/dist/collection/components/input/input.fc.js +4 -8
- package/dist/collection/components/input/input.fc.js.map +1 -1
- package/dist/collection/components/input/input.js +5 -3
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/input/number-input.js +7 -5
- package/dist/collection/components/input/number-input.js.map +1 -1
- package/dist/collection/components/input/textarea.js +2 -2
- package/dist/collection/components/input/textarea.js.map +1 -1
- package/dist/collection/components/modal/test/modal.ct.js +57 -65
- package/dist/collection/components/modal/test/modal.ct.js.map +1 -1
- package/dist/collection/components/select/select.js +68 -52
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/select/test/select.ct.js +72 -100
- package/dist/collection/components/select/test/select.ct.js.map +1 -1
- package/dist/collection/components/toggle/toggle.css +376 -161
- package/dist/collection/components/toggle/toggle.js +17 -3
- package/dist/collection/components/toggle/toggle.js.map +1 -1
- package/dist/collection/components/toggle-button/toggle-button.js +2 -2
- package/dist/collection/components/tooltip/tooltip.js +2 -2
- package/dist/collection/components/tree/tree.js +6 -3
- package/dist/collection/components/tree/tree.js.map +1 -1
- package/dist/collection/components/tree-item/tree-item.js +6 -5
- package/dist/collection/components/tree-item/tree-item.js.map +1 -1
- package/dist/collection/components/upload/upload.js +3 -3
- package/dist/collection/components/utils/lazy-list/index.js +2 -0
- package/dist/collection/components/utils/lazy-list/index.js.map +1 -0
- package/dist/collection/components/utils/lazy-list/lazy.js +343 -0
- package/dist/collection/components/utils/lazy-list/lazy.js.map +1 -0
- package/dist/collection/components/utils/modal/modal.js +6 -0
- package/dist/collection/components/utils/modal/modal.js.map +1 -1
- package/dist/collection/components/validation-tooltip/validation-tooltip.js +2 -2
- package/dist/collection/components/workflow-step/workflow-step.js +3 -3
- package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
- package/dist/collection/tests/html-tags/html-tags.e2e.js +17 -0
- package/dist/collection/tests/html-tags/html-tags.e2e.js.map +1 -0
- package/dist/esm/app-globals-40082a83.js +7 -0
- package/dist/esm/{app-globals-ae0ca705.js.map → app-globals-40082a83.js.map} +1 -1
- package/dist/esm/{core-js-78b486a8.js → core-js-4a847feb.js} +2 -2
- package/dist/esm/{core-js-78b486a8.js.map → core-js-4a847feb.js.map} +1 -1
- package/dist/esm/{helper-text-util-10896253.js → helper-text-util-e47b864d.js} +2 -2
- package/dist/esm/{helper-text-util-10896253.js.map → helper-text-util-e47b864d.js.map} +1 -1
- package/dist/esm/{index-ad2af369.js → index-2b76ea55.js} +3 -2
- package/dist/esm/index-2b76ea55.js.map +1 -0
- package/dist/esm/{index-60d17930.js → index-7421df0c.js} +2 -2
- package/dist/esm/{index-60d17930.js.map → index-7421df0c.js.map} +1 -1
- package/dist/esm/{index.es2017-93ac816c.js → index.es2017-4e6fdf77.js} +3 -3
- package/dist/esm/{index.es2017-93ac816c.js.map → index.es2017-4e6fdf77.js.map} +1 -1
- package/dist/esm/index.js +3 -3
- package/dist/esm/{input.util-715860e3.js → input.util-c855b2ed.js} +5 -9
- package/dist/esm/input.util-c855b2ed.js.map +1 -0
- package/dist/esm/ix-application-header.entry.js +2 -2
- package/dist/esm/ix-application-switch-modal.entry.js +1 -1
- package/dist/esm/ix-button.entry.js +7 -2
- package/dist/esm/ix-button.entry.js.map +1 -1
- package/dist/esm/ix-col_4.entry.js +1 -1
- package/dist/esm/ix-date-input.entry.js +6 -6
- package/dist/esm/ix-date-input.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-item.entry.js +1 -1
- package/dist/esm/ix-dropdown-item.entry.js.map +1 -1
- package/dist/esm/ix-field-label_3.entry.js +7 -7
- package/dist/esm/ix-field-label_3.entry.js.map +1 -1
- package/dist/esm/ix-helper-text.entry.js +2 -2
- package/dist/esm/{ix-icon.entry-621b700a.js → ix-icon.entry-f5f7c268.js} +2 -2
- package/dist/esm/{ix-icon.entry-621b700a.js.map → ix-icon.entry-f5f7c268.js.map} +1 -1
- package/dist/esm/ix-input.entry.js +5 -5
- package/dist/esm/ix-input.entry.js.map +1 -1
- package/dist/esm/ix-menu.entry.js +2 -2
- package/dist/esm/ix-number-input.entry.js +7 -7
- package/dist/esm/ix-number-input.entry.js.map +1 -1
- package/dist/esm/ix-select.entry.js +68 -52
- package/dist/esm/ix-select.entry.js.map +1 -1
- package/dist/esm/ix-textarea.entry.js +3 -3
- package/dist/esm/ix-textarea.entry.js.map +1 -1
- package/dist/esm/ix-time-picker.entry.js +1 -1
- package/dist/esm/ix-toggle-button.entry.js +2 -2
- package/dist/esm/ix-toggle.entry.js +18 -4
- package/dist/esm/ix-toggle.entry.js.map +1 -1
- package/dist/esm/ix-tree-item.entry.js +6 -5
- package/dist/esm/ix-tree-item.entry.js.map +1 -1
- package/dist/esm/ix-tree.entry.js +330 -489
- package/dist/esm/ix-tree.entry.js.map +1 -1
- package/dist/esm/ix-upload.entry.js +3 -3
- package/dist/esm/ix-validation-tooltip.entry.js +2 -2
- package/dist/esm/ix-workflow-step.entry.js +3 -3
- package/dist/esm/ix-workflow-steps.entry.js +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{modal-101eef04.js → modal-4b3f8800.js} +7 -1
- package/dist/{cjs/modal-a49409aa.js.map → esm/modal-4b3f8800.js.map} +1 -1
- package/dist/esm/{setup-d88021f8.js → setup-9c5fe321.js} +2 -2
- package/dist/esm/{setup-d88021f8.js.map → setup-9c5fe321.js.map} +1 -1
- package/dist/esm/siemens-ix.js +3 -3
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/{p-0dbc970e.entry.js → p-0b2f0536.entry.js} +2 -2
- package/dist/siemens-ix/{p-2b226409.entry.js → p-0b5c9f33.entry.js} +2 -2
- package/dist/siemens-ix/p-0b5c9f33.entry.js.map +1 -0
- package/dist/siemens-ix/{p-044c2a7b.entry.js → p-18542846.entry.js} +2 -2
- package/dist/siemens-ix/p-20938f73.entry.js +2 -0
- package/dist/siemens-ix/p-20938f73.entry.js.map +1 -0
- package/dist/siemens-ix/p-22cba43a.entry.js +2 -0
- package/dist/siemens-ix/p-22cba43a.entry.js.map +1 -0
- package/dist/siemens-ix/{p-9fe2759f.entry.js → p-243e8b32.entry.js} +2 -2
- package/dist/siemens-ix/p-243e8b32.entry.js.map +1 -0
- package/dist/siemens-ix/p-38d9d569.js +2 -0
- package/dist/siemens-ix/p-38d9d569.js.map +1 -0
- package/dist/siemens-ix/{p-d7aa00d6.js → p-3aaecbd9.js} +2 -2
- package/dist/siemens-ix/{p-175599e4.entry.js → p-42320fb3.entry.js} +2 -2
- package/dist/siemens-ix/p-44fa005c.js +4 -0
- package/dist/siemens-ix/{p-a2200306.js.map → p-44fa005c.js.map} +1 -1
- package/dist/siemens-ix/p-451551d1.js +2 -0
- package/dist/siemens-ix/p-451551d1.js.map +1 -0
- package/dist/siemens-ix/p-53fd545a.entry.js +2 -0
- package/dist/siemens-ix/p-53fd545a.entry.js.map +1 -0
- package/dist/siemens-ix/p-5fbdff13.entry.js +2 -0
- package/dist/siemens-ix/p-5fbdff13.entry.js.map +1 -0
- package/dist/siemens-ix/{p-1f6df0c6.js → p-738c2d1f.js} +2 -2
- package/dist/siemens-ix/{p-424e8092.entry.js → p-897c8e5b.entry.js} +2 -2
- package/dist/siemens-ix/p-897c8e5b.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f35386ec.js → p-93d4d3c9.js} +2 -2
- package/dist/siemens-ix/{p-9948574f.entry.js → p-97d4b3bd.entry.js} +2 -2
- package/dist/siemens-ix/{p-6a4a2064.entry.js → p-9f960c0b.entry.js} +2 -2
- package/dist/siemens-ix/{p-0c89cbcc.entry.js → p-a4dc6824.entry.js} +2 -2
- package/dist/siemens-ix/{p-fe87443e.js → p-a6af13b0.js} +2 -2
- package/dist/siemens-ix/p-af7c4b16.entry.js +2 -0
- package/dist/siemens-ix/p-af7c4b16.entry.js.map +1 -0
- package/dist/siemens-ix/{p-a3364116.entry.js → p-afb4565c.entry.js} +2 -2
- package/dist/siemens-ix/{p-4c9b7548.entry.js → p-bc272f75.entry.js} +2 -2
- package/dist/siemens-ix/{p-3205726a.entry.js → p-bfe469e4.entry.js} +2 -2
- package/dist/siemens-ix/{p-792e1c52.entry.js → p-c07557b0.entry.js} +2 -2
- package/dist/siemens-ix/p-c07557b0.entry.js.map +1 -0
- package/dist/siemens-ix/p-c3ca17fc.js +2 -0
- package/dist/siemens-ix/p-c530de51.entry.js +2 -0
- package/dist/siemens-ix/p-c530de51.entry.js.map +1 -0
- package/dist/siemens-ix/p-d2f21544.js +2 -0
- package/dist/siemens-ix/{p-68bb2a09.entry.js → p-d9b654af.entry.js} +2 -2
- package/dist/siemens-ix/p-d9b654af.entry.js.map +1 -0
- package/dist/siemens-ix/{p-e9a37b3f.entry.js → p-ee0645f8.entry.js} +2 -2
- package/dist/siemens-ix/p-fe158b99.js +2 -0
- package/dist/siemens-ix/p-fe158b99.js.map +1 -0
- package/dist/siemens-ix/{p-f39048a2.entry.js → p-fe396297.entry.js} +2 -2
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/types/components/button/button.d.ts +1 -0
- package/dist/types/components/date-input/date-input.d.ts +2 -0
- package/dist/types/components/field-label/field-label.d.ts +1 -1
- package/dist/types/components/field-wrapper/field-wrapper.d.ts +1 -1
- package/dist/types/components/input/input.d.ts +2 -0
- package/dist/types/components/input/number-input.d.ts +2 -0
- package/dist/types/components/modal/test/modal.ct.d.ts +2 -1
- package/dist/types/components/select/select.d.ts +9 -8
- package/dist/types/components/utils/lazy-list/index.d.ts +2 -0
- package/dist/types/components/utils/lazy-list/lazy.d.ts +51 -0
- package/dist/types/components.d.ts +9 -3
- package/hydrate/index.js +499 -621
- package/package.json +1 -2
- package/dist/cjs/_commonjsHelpers-0192c5b3.js +0 -17
- package/dist/cjs/_commonjsHelpers-0192c5b3.js.map +0 -1
- package/dist/cjs/core-js-2fc351ee.js +0 -26
- package/dist/cjs/core-js-2fc351ee.js.map +0 -1
- package/dist/cjs/index-d2117dc0.js.map +0 -1
- package/dist/cjs/input.util-1c2fa43d.js.map +0 -1
- package/dist/esm/_commonjsHelpers-e557d4a5.js +0 -13
- package/dist/esm/_commonjsHelpers-e557d4a5.js.map +0 -1
- package/dist/esm/app-globals-ae0ca705.js +0 -7
- package/dist/esm/index-ad2af369.js.map +0 -1
- package/dist/esm/input.util-715860e3.js.map +0 -1
- package/dist/esm/modal-101eef04.js.map +0 -1
- package/dist/siemens-ix/p-0f0e7e14.entry.js +0 -2
- package/dist/siemens-ix/p-0f0e7e14.entry.js.map +0 -1
- package/dist/siemens-ix/p-23a4b81f.js +0 -2
- package/dist/siemens-ix/p-23a4b81f.js.map +0 -1
- package/dist/siemens-ix/p-2b226409.entry.js.map +0 -1
- package/dist/siemens-ix/p-424e8092.entry.js.map +0 -1
- package/dist/siemens-ix/p-45840cb9.js +0 -2
- package/dist/siemens-ix/p-45840cb9.js.map +0 -1
- package/dist/siemens-ix/p-4624a772.entry.js +0 -2
- package/dist/siemens-ix/p-4624a772.entry.js.map +0 -1
- package/dist/siemens-ix/p-50096707.js +0 -2
- package/dist/siemens-ix/p-5682e985.js +0 -2
- package/dist/siemens-ix/p-5db5a0b5.entry.js +0 -2
- package/dist/siemens-ix/p-5db5a0b5.entry.js.map +0 -1
- package/dist/siemens-ix/p-68bb2a09.entry.js.map +0 -1
- package/dist/siemens-ix/p-792e1c52.entry.js.map +0 -1
- package/dist/siemens-ix/p-79bb0d39.js +0 -2
- package/dist/siemens-ix/p-79bb0d39.js.map +0 -1
- package/dist/siemens-ix/p-857f99c8.entry.js +0 -2
- package/dist/siemens-ix/p-857f99c8.entry.js.map +0 -1
- package/dist/siemens-ix/p-9fe2759f.entry.js.map +0 -1
- package/dist/siemens-ix/p-a2200306.js +0 -4
- package/dist/siemens-ix/p-a427e6a2.js +0 -2
- package/dist/siemens-ix/p-a427e6a2.js.map +0 -1
- package/dist/siemens-ix/p-bded112a.entry.js +0 -2
- package/dist/siemens-ix/p-bded112a.entry.js.map +0 -1
- package/dist/siemens-ix/p-f7618d1d.entry.js +0 -2
- package/dist/siemens-ix/p-f7618d1d.entry.js.map +0 -1
- /package/dist/siemens-ix/{p-0dbc970e.entry.js.map → p-0b2f0536.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-044c2a7b.entry.js.map → p-18542846.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-d7aa00d6.js.map → p-3aaecbd9.js.map} +0 -0
- /package/dist/siemens-ix/{p-175599e4.entry.js.map → p-42320fb3.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-1f6df0c6.js.map → p-738c2d1f.js.map} +0 -0
- /package/dist/siemens-ix/{p-f35386ec.js.map → p-93d4d3c9.js.map} +0 -0
- /package/dist/siemens-ix/{p-9948574f.entry.js.map → p-97d4b3bd.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-6a4a2064.entry.js.map → p-9f960c0b.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0c89cbcc.entry.js.map → p-a4dc6824.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-fe87443e.js.map → p-a6af13b0.js.map} +0 -0
- /package/dist/siemens-ix/{p-a3364116.entry.js.map → p-afb4565c.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-4c9b7548.entry.js.map → p-bc272f75.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-3205726a.entry.js.map → p-bfe469e4.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-5682e985.js.map → p-c3ca17fc.js.map} +0 -0
- /package/dist/siemens-ix/{p-50096707.js.map → p-d2f21544.js.map} +0 -0
- /package/dist/siemens-ix/{p-e9a37b3f.entry.js.map → p-ee0645f8.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f39048a2.entry.js.map → p-fe396297.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-field-label.ix-field-wrapper.ix-tooltip.entry.js","mappings":"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","names":[],"sources":["src/components/utils/input/index.ts","src/components/field-label/field-label.scss?tag=ix-field-label&encapsulation=shadow","src/components/field-label/field-label.tsx","src/components/field-wrapper/field-wrapper.scss?tag=ix-field-wrapper&encapsulation=shadow","src/components/field-wrapper/field-wrapper.tsx","src/components/utils/overlay.ts","src/components/tooltip/tooltip-controller.ts","src/components/tooltip/tooltip.scss?tag=ix-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { EventEmitter } from '@stencil/core';\nimport { IxComponent } from '../internal';\n\nexport * from './validation';\n\nexport interface FieldWrapperInterface {\n /**\n * Label for the field component\n */\n label?: string;\n /**\n * Show text below the field component which show additional information\n */\n helperText?: string;\n /**\n * Info text for the field component\n */\n infoText?: string;\n /**\n * Warning text for the field component\n */\n warningText?: string;\n /**\n * Error text for the field component\n */\n invalidText?: string;\n /**\n * Valid text for the field component\n */\n validText?: string;\n /**\n * Show helper, info, warning, error and valid text as tooltip\n */\n showTextAsTooltip?: boolean;\n}\n\nexport type HTMLIxFormComponentElement<T> = HTMLElement & IxFormComponent<T>;\nexport type HTMLIxInputFieldComponentElement<T> =\n HTMLIxFormComponentElement<T> & IxInputFieldComponent<T>;\n\nexport interface IxFormValidationState {\n // Annotate as @State()\n isInvalid: boolean;\n // Annotate as @State()\n isValid: boolean;\n // Annotate as @State()\n isInfo: boolean;\n // Annotate as @State()\n isWarning: boolean;\n}\n\nexport interface IxFormComponent<T = string> extends IxComponent {\n // Private internal\n formInternals: ElementInternals;\n\n // Annotate as @Prop({ reflect: true })\n required?: boolean;\n // Annotate as @Prop({ reflect: true })\n name?: string;\n // Annotate as @Prop()\n value?: T;\n // Annotate as @Prop()\n disabled: boolean;\n\n valueChange: EventEmitter<T>;\n updateFormInternalValue(value: T): void;\n hasValidValue(): Promise<boolean>;\n getValidityState?(): Promise<ValidityState>;\n getAssociatedFormElement(): Promise<HTMLFormElement | null>;\n}\n\nexport interface IxInputFieldComponent<T = string>\n extends IxFormComponent<T>,\n IxFormValidationState,\n FieldWrapperInterface {\n // Annotate as @Prop()\n placeholder?: string;\n // Annotate as @Prop()\n readonly: boolean;\n\n ixBlur: EventEmitter<void>;\n\n // Annotate as @Method()\n getNativeInputElement(): Promise<HTMLInputElement | HTMLTextAreaElement>;\n\n // Annotate as @Method()\n focusInput(): void;\n}\n\nexport function isIxInputFieldComponent(\n obj: HTMLElement\n): obj is HTMLIxInputFieldComponentElement<unknown> {\n return (\n obj &&\n 'getAssociatedFormElement' in obj &&\n typeof obj.getAssociatedFormElement === 'function' &&\n 'getNativeInputElement' in obj &&\n typeof obj.getNativeInputElement === 'function'\n );\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: inline-block;\n position: relative;\n\n margin-top: 0.5rem;\n margin-bottom: 0.25rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Host, Prop, h, Element, Watch } from '@stencil/core';\nimport { IxComponent } from '../utils/internal';\nimport {\n ClassMutationObserver,\n createClassMutationObserver,\n HTMLIxFormComponentElement,\n isIxInputFieldComponent,\n} from '../utils/input';\nimport { A11yAttributes, a11yHostAttributes } from '../utils/a11y';\nimport { MakeRef, makeRef } from '../utils/make-ref';\n\n@Component({\n tag: 'ix-field-label',\n styleUrl: 'field-label.scss',\n shadow: true,\n})\nexport class FormFieldLabel implements IxComponent {\n @Element() hostElement!: HTMLIxFieldLabelElement;\n\n /**\n * A value is required or must be checked for the form to be submittable\n */\n @Prop({ reflect: true, mutable: true }) required?: boolean;\n\n /**\n * The id of the form element that the label is associated with\n */\n @Prop({ reflect: true }) htmlFor?: string;\n\n /** @internal */\n @Prop() controlRef?: MakeRef<HTMLElement>;\n\n /** @internal */\n @Prop({ mutable: true }) isInvalid: boolean = false;\n\n private readonly htmlForObserver = new MutationObserver(() =>\n this.checkForInternalState()\n );\n private htmlForClassObserver?: ClassMutationObserver;\n private controlRefClassObserver?: ClassMutationObserver;\n private a11yAttributes: A11yAttributes = {};\n private readonly labelRef = makeRef<HTMLLabelElement>();\n\n connectedCallback() {\n this.registerHtmlForObserver();\n this.registerControlRefObserver();\n }\n\n disconnectedCallback(): void {\n if (this.htmlForObserver) {\n this.htmlForObserver.disconnect();\n }\n if (this.htmlForClassObserver) {\n this.htmlForClassObserver.destroy();\n }\n if (this.controlRefClassObserver) {\n this.controlRefClassObserver.destroy();\n }\n }\n\n componentWillRender() {\n this.checkForInternalState();\n }\n\n componentWillLoad(): void | Promise<void> {\n this.a11yAttributes = a11yHostAttributes(this.hostElement);\n }\n\n @Watch('htmlFor')\n private registerHtmlForObserver() {\n if (typeof window === 'undefined') {\n return;\n }\n\n if (this.htmlForObserver) {\n this.htmlForObserver.disconnect();\n }\n\n if (this.htmlFor) {\n this.htmlForObserver.observe(window.document, {\n childList: true,\n subtree: true,\n });\n }\n }\n\n @Watch('controlRef')\n private async registerControlRefObserver() {\n if (typeof window === 'undefined') {\n return;\n }\n\n if (this.controlRefClassObserver) {\n this.controlRefClassObserver.destroy();\n }\n\n if (this.controlRef) {\n const input = await this.controlRef.waitForCurrent();\n\n this.controlRefClassObserver = createClassMutationObserver(input, () =>\n this.checkForInvalidState(input)\n );\n }\n }\n\n private registerHtmlForClassObserver(\n forElement: HTMLIxFormComponentElement<unknown>\n ) {\n if (this.htmlForClassObserver) {\n this.htmlForClassObserver.destroy();\n }\n\n this.htmlForClassObserver = createClassMutationObserver(forElement, () =>\n this.checkForInvalidState(forElement)\n );\n }\n\n private checkForInvalidState(elementToCheck: HTMLElement) {\n this.isInvalid =\n elementToCheck.classList.contains('is-invalid') ||\n elementToCheck.classList.contains('ix-invalid');\n }\n\n private async checkForInternalState() {\n if (this.htmlFor) {\n const forElement = document.getElementById(\n this.htmlFor\n ) as HTMLIxFormComponentElement<unknown>;\n if (forElement) {\n if (typeof forElement.required === 'boolean') {\n this.required = forElement.required;\n }\n\n this.registerHtmlForClassObserver(forElement);\n this.checkForInvalidState(forElement);\n }\n }\n\n if (this.controlRef) {\n const input = await this.controlRef.waitForCurrent();\n this.required = (\n input as HTMLInputElement | HTMLTextAreaElement\n ).required;\n }\n }\n\n private async focusOnClick() {\n if (this.htmlFor) {\n const target = document.getElementById(this.htmlFor);\n if (target) {\n let input: HTMLElement | null = null;\n if (isIxInputFieldComponent(target)) {\n input = await target.getNativeInputElement();\n } else {\n input = target;\n }\n if (typeof input.focus === 'function') {\n input.focus();\n }\n }\n }\n\n if (this.controlRef) {\n (await this.controlRef.waitForCurrent()).focus();\n }\n }\n\n render() {\n return (\n <Host onClick={() => this.focusOnClick()}>\n <label\n htmlFor={this.htmlFor}\n {...this.a11yAttributes}\n ref={this.labelRef}\n >\n <ix-typography\n color={this.isInvalid ? 'alarm' : 'soft'}\n format=\"label\"\n >\n <slot></slot>\n {this.required && <span> *</span>}\n </ix-typography>\n </label>\n </Host>\n );\n }\n}\n","@import \"./field-wrapper.mixins.scss\";\n\n:host {\n display: flex;\n position: relative;\n flex-direction: column;\n\n .slot-wrapper {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-start;\n gap: 0.25rem;\n }\n\n .field-bottom,\n .field-top {\n display: flex;\n flex-direction: row;\n position: relative;\n justify-content: space-between;\n gap: 1rem;\n width: min-content;\n min-width: 100%;\n }\n\n .field-bottom .bottom-right {\n margin-left: auto;\n margin-right: 0px;\n }\n\n @include helper-text;\n\n .bottom-text {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Component, Element, Host, Prop, h } from '@stencil/core';\nimport { FieldWrapperInterface } from '../utils/input';\nimport { MakeRef, makeRef } from '../utils/make-ref';\nimport { hasAnyText, renderHelperText } from './helper-text-util';\n\n/** @internal */\n@Component({\n tag: 'ix-field-wrapper',\n styleUrl: 'field-wrapper.scss',\n shadow: true,\n})\nexport class FieldWrapper implements FieldWrapperInterface {\n @Element() hostElement!: HTMLIxFieldWrapperElement;\n\n /**\n * Show text below the field component\n */\n @Prop() helperText?: string;\n\n /**\n * Label for the field component\n */\n @Prop() label?: string;\n\n /**\n * Error text for the field component\n */\n @Prop() invalidText?: string;\n\n /**\n * Valid text for the field component\n */\n @Prop() validText?: string;\n\n /**\n * Info text for the field component\n */\n @Prop() infoText?: string;\n\n /**\n * Warning text for the field component\n */\n @Prop() warningText?: string;\n\n /**\n * Is the field component invalid\n */\n @Prop() isInvalid: boolean = false;\n\n /**\n * Is the field component valid\n */\n @Prop() isValid: boolean = false;\n\n /**\n * Is the field component info\n */\n @Prop() isInfo: boolean = false;\n\n /**\n * Is the field component warning\n */\n @Prop() isWarning: boolean = false;\n\n /**\n * Show helper, error, info, warning text as tooltip\n */\n @Prop() showTextAsTooltip: boolean = false;\n\n /**\n * Show label as required\n */\n @Prop() required: boolean = false;\n\n /**\n * The id of the form element that the label is associated with\n */\n @Prop() htmlForLabel?: string;\n\n /**\n * The control element that the label is associated with\n */\n @Prop() controlRef?: MakeRef<HTMLElement>;\n\n private readonly slotRef = makeRef<HTMLDivElement>();\n\n render() {\n const textOptions = {\n invalidText: this.invalidText,\n isInvalid: this.isInvalid,\n isValid: this.isValid,\n validText: this.validText,\n isWarning: this.isWarning,\n warningText: this.warningText,\n isInfo: this.isInfo,\n infoText: this.infoText,\n helperText: this.helperText,\n };\n return (\n <Host>\n {this.label && (\n <div class=\"field-top\">\n <ix-field-label\n required={this.required}\n htmlFor={this.htmlForLabel}\n controlRef={this.controlRef}\n isInvalid={this.isInvalid}\n >\n {this.label}\n </ix-field-label>\n </div>\n )}\n <div\n class={{\n 'slot-wrapper': true,\n }}\n ref={this.slotRef}\n >\n <slot></slot>\n </div>\n <div class={'field-bottom'}>\n {!this.showTextAsTooltip && renderHelperText(textOptions)}\n <div class=\"bottom-right\">\n <slot name=\"bottom-right\"></slot>\n </div>\n </div>\n\n {this.showTextAsTooltip === true && hasAnyText(textOptions) && (\n <ix-tooltip\n for={this.slotRef.waitForCurrent()}\n showDelay={500}\n placement=\"bottom\"\n >\n {renderHelperText(textOptions)}\n </ix-tooltip>\n )}\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { IxComponent } from '../utils/internal';\n\nexport interface IxOverlayComponent extends IxComponent {\n isPresent(): boolean;\n\n willPresent?(): boolean;\n willDismiss?(): boolean;\n\n present(): void;\n dismiss(): void;\n}\n\nexport class OverlayController {\n overlays: Set<IxOverlayComponent> = new Set();\n\n connected(instance: IxOverlayComponent): void {\n this.overlays.add(instance);\n }\n\n disconnected(instance: IxOverlayComponent): void {\n this.overlays.delete(instance);\n }\n\n present(instance: IxOverlayComponent): void {\n if (instance.willPresent && !instance.willPresent()) {\n return;\n }\n this.dismissOthers(instance);\n instance.present();\n }\n\n dismiss(instance: IxOverlayComponent): void {\n if (instance.willDismiss && !instance.willDismiss()) {\n return;\n }\n instance.dismiss();\n }\n\n private dismissOthers(instance: IxOverlayComponent): void {\n this.overlays.forEach((overlay) => {\n if (overlay !== instance) {\n this.dismiss(overlay);\n }\n });\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { OverlayController } from '../utils/overlay';\n\nclass TooltipController extends OverlayController {}\n\nexport const tooltipController = new TooltipController();\n",":host {\n display: inline-block;\n position: fixed;\n left: 0;\n top: 0;\n z-index: var(--theme-z-index-tooltip);\n\n max-width: 18.25rem;\n width: max-content;\n\n opacity: 0;\n visibility: collapse !important;\n overflow-wrap: break-word;\n\n border-radius: 0.25rem;\n\n .tooltip-title {\n display: flex;\n align-items: center;\n\n ::slotted(ix-icon) {\n margin-right: 0.35rem;\n }\n }\n\n .tooltip-container {\n display: block;\n position: relative;\n width: auto;\n height: 100%;\n background: var(--theme-tootlip--background);\n color: var(--theme-color-std-text);\n padding: 0.375rem 0.75rem 0.375rem 0.875rem;\n\n box-shadow: var(--theme-shadow-4);\n border-radius: inherit;\n }\n}\n\n:host(.visible) {\n opacity: 1;\n visibility: visible !important;\n}\n\n:host(.visible) {\n .arrow,\n .arrow::before {\n position: absolute;\n width: 12px;\n height: 12px;\n background: inherit;\n }\n\n .arrow {\n visibility: hidden;\n }\n\n .arrow::before {\n visibility: visible;\n content: '';\n transform: rotate(45deg);\n background-color: var(--theme-tootlip--background);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n arrow,\n autoUpdate,\n computePosition,\n ComputePositionReturn,\n flip,\n hide,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { OnListener } from '../utils/listener';\nimport { tooltipController } from './tooltip-controller';\nimport { IxOverlayComponent } from '../utils/overlay';\nimport { resolveSelector } from '../utils/find-element';\nimport { ElementReference } from 'src/components';\n\ntype ArrowPosition = {\n top?: string;\n left?: string;\n right?: string;\n};\n\nconst numberToPixel = (value?: number | null) =>\n value != null ? `${value}px` : '';\n\n/**\n * @slot title-icon - Icon of tooltip title\n * @slot title-content - Content of tooltip title\n *\n * @since 1.4.0\n */\n@Component({\n tag: 'ix-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n})\nexport class Tooltip implements IxOverlayComponent {\n /**\n * CSS selector for hover trigger element e.g. `for=\"[data-my-custom-select]\"`\n */\n @Prop() for?: ElementReference;\n\n /**\n * Title of the tooltip\n */\n @Prop() titleContent?: string;\n\n /**\n * Define if the user can access the tooltip via mouse.\n */\n @Prop() interactive = false;\n\n /**\n * Initial placement of the tooltip.\n * If the selected placement doesn't have enough space, the tooltip will be repositioned to another location.\n * @since 1.5.0\n */\n @Prop() placement: 'top' | 'right' | 'bottom' | 'left' = 'top';\n\n /** @internal */\n @Prop() showDelay = 0;\n\n /** @internal */\n @Prop() hideDelay = 50;\n\n /** @internal */\n @Prop() animationFrame = false;\n\n @State() visible = false;\n\n @Element() hostElement!: HTMLIxTooltipElement;\n\n private observer?: MutationObserver;\n private hideTooltipTimeout?: NodeJS.Timeout;\n private showTooltipTimeout?: NodeJS.Timeout;\n private disposeAutoUpdate?: () => void;\n private disposeListener?: () => void;\n\n private get arrowElement(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector('.arrow')!;\n }\n\n private destroyAutoUpdate() {\n if (this.disposeAutoUpdate !== undefined) {\n this.disposeAutoUpdate();\n }\n }\n\n /** @internal */\n @Method()\n async showTooltip(anchorElement: Element) {\n clearTimeout(this.hideTooltipTimeout);\n await this.applyTooltipPosition(anchorElement);\n\n this.showTooltipTimeout = setTimeout(() => {\n tooltipController.present(this);\n // Need to compute and apply tooltip position after initial render,\n // because arrow has no valid bounding rect before that\n this.applyTooltipPosition(anchorElement);\n }, this.showDelay);\n }\n\n /** @internal */\n @Method()\n async hideTooltip() {\n clearTimeout(this.showTooltipTimeout);\n let hideDelay = 50;\n\n if (this.interactive && this.hideDelay === hideDelay) {\n hideDelay = 150;\n }\n\n this.hideTooltipTimeout = setTimeout(() => {\n tooltipController.dismiss(this);\n }, hideDelay);\n this.destroyAutoUpdate();\n }\n\n private computeArrowPosition({\n placement,\n middlewareData,\n }: ComputePositionReturn): ArrowPosition | undefined {\n let { x, y } = middlewareData.arrow!;\n const resetPosition = {\n top: 'unset',\n right: 'unset',\n bottom: 'unset',\n left: 'unset',\n };\n\n if (placement.startsWith('top')) {\n return {\n ...resetPosition,\n left: numberToPixel(x),\n top: numberToPixel(y),\n };\n }\n\n if (placement.startsWith('right')) {\n return {\n ...resetPosition,\n left: numberToPixel(-6),\n top: numberToPixel(y),\n };\n }\n\n if (placement.startsWith('bottom')) {\n return {\n ...resetPosition,\n left: numberToPixel(x),\n top: numberToPixel(-6),\n };\n }\n\n if (placement.startsWith('left')) {\n return {\n ...resetPosition,\n right: numberToPixel(-6),\n top: numberToPixel(y),\n };\n }\n }\n\n private async computeTooltipPosition(target: Element) {\n return computePosition(target, this.hostElement, {\n strategy: 'fixed',\n placement: this.placement,\n middleware: [\n shift(),\n offset(12),\n arrow({\n element: this.arrowElement,\n }),\n flip({\n fallbackStrategy: 'initialPlacement',\n fallbackAxisSideDirection: 'end',\n padding: 10,\n }),\n hide(),\n ],\n });\n }\n\n private applyTooltipArrowPosition(computeResponse: ComputePositionReturn) {\n const arrowPosition = this.computeArrowPosition(computeResponse);\n Object.assign(this.arrowElement.style, arrowPosition);\n }\n\n private async applyTooltipPosition(target: Element) {\n if (!target) {\n return;\n }\n\n return new Promise<ComputePositionReturn>((resolve) => {\n this.destroyAutoUpdate();\n this.disposeAutoUpdate = autoUpdate(\n target,\n this.hostElement,\n async () => {\n setTimeout(async () => {\n const computeResponse = await this.computeTooltipPosition(target);\n\n const isHidden =\n computeResponse.middlewareData.hide?.referenceHidden;\n\n if (isHidden) {\n setTimeout(() => this.hideTooltip());\n resolve(computeResponse);\n }\n\n if (computeResponse.middlewareData.arrow) {\n this.applyTooltipArrowPosition(computeResponse);\n }\n\n const { x, y } = computeResponse;\n Object.assign(this.hostElement.style, {\n left: x !== null ? `${x}px` : '',\n top: y !== null ? `${y}px` : '',\n });\n\n resolve(computeResponse);\n });\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n animationFrame: this.animationFrame,\n }\n );\n });\n }\n\n private clearHideTimeout() {\n if (this.interactive) {\n clearTimeout(this.hideTooltipTimeout);\n }\n }\n\n private async queryAnchorElements(): Promise<Array<HTMLElement> | undefined> {\n if (typeof this.for === 'string') {\n return resolveSelector(this.for, this.hostElement);\n }\n\n if (this.for instanceof HTMLElement) {\n return Promise.resolve([this.for]);\n }\n\n if (this.for instanceof Promise) {\n const element = await this.for;\n return [element];\n }\n }\n\n private async registerTriggerListener() {\n const triggerElementList = await this.queryAnchorElements();\n\n if (this.disposeListener) {\n this.disposeListener();\n }\n\n if (!triggerElementList) {\n return;\n }\n\n triggerElementList.forEach((element) => {\n const onMouseEnter = () => {\n this.showTooltip(element);\n };\n\n const onMouseLeave = () => {\n this.hideTooltip();\n };\n\n const onFocusIn = () => {\n if (this.showTooltipTimeout !== undefined) {\n clearTimeout(this.showTooltipTimeout);\n }\n\n onMouseEnter();\n };\n\n const onFocusOut = () => {\n this.hideTooltip();\n };\n\n element.addEventListener('mouseenter', onMouseEnter);\n element.addEventListener('mouseleave', onMouseLeave);\n element.addEventListener('focusin', onFocusIn);\n element.addEventListener('focusout', onFocusOut);\n\n this.disposeListener = () => {\n element.removeEventListener('mouseenter', onMouseEnter);\n element.removeEventListener('mouseleave', onMouseLeave);\n element.removeEventListener('focusin', onFocusIn);\n element.removeEventListener('focusout', onFocusOut);\n };\n });\n }\n\n private registerTooltipListener() {\n const { hostElement } = this;\n hostElement.addEventListener('mouseenter', () => this.clearHideTimeout());\n hostElement.addEventListener('focusin', () => this.clearHideTimeout());\n\n hostElement.addEventListener('mouseleave', () => this.hideTooltip());\n hostElement.addEventListener('focusout', () => this.hideTooltip());\n }\n\n @OnListener<Tooltip>('keydown', (self) => self.visible)\n async onKeydown(event: KeyboardEvent) {\n if (event.code === 'Escape') {\n this.hideTooltip();\n }\n }\n\n componentWillLoad() {\n this.registerTriggerListener();\n }\n\n componentDidLoad() {\n this.observer = new MutationObserver(() => {\n this.registerTriggerListener();\n });\n\n this.observer.observe(document.body, {\n attributes: true,\n attributeFilter: ['data-ix-tooltip'],\n childList: true,\n subtree: true,\n });\n\n this.registerTooltipListener();\n }\n\n connectedCallback() {\n tooltipController.connected(this);\n }\n\n disconnectedCallback() {\n this.observer?.disconnect();\n this.destroyAutoUpdate();\n tooltipController.disconnected(this);\n }\n\n isPresent(): boolean {\n return this.visible;\n }\n\n present(): void {\n this.visible = true;\n }\n\n dismiss(): void {\n this.visible = false;\n }\n\n render() {\n return (\n <Host\n class={{\n visible: this.visible,\n }}\n role=\"tooltip\"\n >\n <div class=\"tooltip-container\">\n <div class={'tooltip-title'}>\n <slot name=\"title-icon\"></slot>\n <ix-typography format=\"h5\">\n {this.titleContent}\n <slot name=\"title-content\"></slot>\n </ix-typography>\n </div>\n <div class={'tooltip-content'}>\n <slot></slot>\n </div>\n <div class=\"arrow\"></div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"ix-field-label.ix-field-wrapper.ix-tooltip.entry.js","mappings":"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","names":[],"sources":["src/components/utils/input/index.ts","src/components/field-label/field-label.scss?tag=ix-field-label&encapsulation=shadow","src/components/field-label/field-label.tsx","src/components/field-wrapper/field-wrapper.scss?tag=ix-field-wrapper&encapsulation=shadow","src/components/field-wrapper/field-wrapper.tsx","src/components/utils/overlay.ts","src/components/tooltip/tooltip-controller.ts","src/components/tooltip/tooltip.scss?tag=ix-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { EventEmitter } from '@stencil/core';\nimport { IxComponent } from '../internal';\n\nexport * from './validation';\n\nexport interface FieldWrapperInterface {\n /**\n * Label for the field component\n */\n label?: string;\n /**\n * Show text below the field component which show additional information\n */\n helperText?: string;\n /**\n * Info text for the field component\n */\n infoText?: string;\n /**\n * Warning text for the field component\n */\n warningText?: string;\n /**\n * Error text for the field component\n */\n invalidText?: string;\n /**\n * Valid text for the field component\n */\n validText?: string;\n /**\n * Show helper, info, warning, error and valid text as tooltip\n */\n showTextAsTooltip?: boolean;\n}\n\nexport type HTMLIxFormComponentElement<T> = HTMLElement & IxFormComponent<T>;\nexport type HTMLIxInputFieldComponentElement<T> =\n HTMLIxFormComponentElement<T> & IxInputFieldComponent<T>;\n\nexport interface IxFormValidationState {\n // Annotate as @State()\n isInvalid: boolean;\n // Annotate as @State()\n isValid: boolean;\n // Annotate as @State()\n isInfo: boolean;\n // Annotate as @State()\n isWarning: boolean;\n}\n\nexport interface IxFormComponent<T = string> extends IxComponent {\n // Private internal\n formInternals: ElementInternals;\n\n // Annotate as @Prop({ reflect: true })\n required?: boolean;\n // Annotate as @Prop({ reflect: true })\n name?: string;\n // Annotate as @Prop()\n value?: T;\n // Annotate as @Prop()\n disabled: boolean;\n\n valueChange: EventEmitter<T>;\n updateFormInternalValue(value: T): void;\n hasValidValue(): Promise<boolean>;\n getValidityState?(): Promise<ValidityState>;\n getAssociatedFormElement(): Promise<HTMLFormElement | null>;\n}\n\nexport interface IxInputFieldComponent<T = string>\n extends IxFormComponent<T>,\n IxFormValidationState,\n FieldWrapperInterface {\n // Annotate as @Prop()\n placeholder?: string;\n // Annotate as @Prop()\n readonly: boolean;\n\n ixBlur: EventEmitter<void>;\n\n // Annotate as @Method()\n getNativeInputElement(): Promise<HTMLInputElement | HTMLTextAreaElement>;\n\n // Annotate as @Method()\n focusInput(): void;\n}\n\nexport function isIxInputFieldComponent(\n obj: HTMLElement\n): obj is HTMLIxInputFieldComponentElement<unknown> {\n return (\n obj &&\n 'getAssociatedFormElement' in obj &&\n typeof obj.getAssociatedFormElement === 'function' &&\n 'getNativeInputElement' in obj &&\n typeof obj.getNativeInputElement === 'function'\n );\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: inline-block;\n position: relative;\n\n margin-top: 0.5rem;\n margin-bottom: 0.25rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, Watch } from '@stencil/core';\nimport { A11yAttributes, a11yHostAttributes } from '../utils/a11y';\nimport {\n ClassMutationObserver,\n createClassMutationObserver,\n HTMLIxFormComponentElement,\n isIxInputFieldComponent,\n} from '../utils/input';\nimport { IxComponent } from '../utils/internal';\nimport { MakeRef, makeRef } from '../utils/make-ref';\n\n@Component({\n tag: 'ix-field-label',\n styleUrl: 'field-label.scss',\n shadow: true,\n})\nexport class FormFieldLabel implements IxComponent {\n @Element() hostElement!: HTMLIxFieldLabelElement;\n\n /**\n * A value is required or must be checked for the form to be submittable\n */\n @Prop({ reflect: true, mutable: true }) required?: boolean;\n\n /**\n * The id of the form element that the label is associated with\n */\n @Prop({ reflect: true }) htmlFor?: string;\n\n /** @internal */\n @Prop() controlRef?:\n | MakeRef<HTMLElement>\n | MakeRef<HTMLInputElement>\n | MakeRef<HTMLTextAreaElement>;\n\n /** @internal */\n @Prop({ mutable: true }) isInvalid: boolean = false;\n\n private readonly htmlForObserver = new MutationObserver(() =>\n this.checkForInternalState()\n );\n private htmlForClassObserver?: ClassMutationObserver;\n private controlRefClassObserver?: ClassMutationObserver;\n private a11yAttributes: A11yAttributes = {};\n private readonly labelRef = makeRef<HTMLLabelElement>();\n\n connectedCallback() {\n this.registerHtmlForObserver();\n this.registerControlRefObserver();\n }\n\n disconnectedCallback(): void {\n if (this.htmlForObserver) {\n this.htmlForObserver.disconnect();\n }\n if (this.htmlForClassObserver) {\n this.htmlForClassObserver.destroy();\n }\n if (this.controlRefClassObserver) {\n this.controlRefClassObserver.destroy();\n }\n }\n\n componentWillRender() {\n this.checkForInternalState();\n }\n\n componentWillLoad(): void | Promise<void> {\n this.a11yAttributes = a11yHostAttributes(this.hostElement);\n }\n\n @Watch('htmlFor')\n private registerHtmlForObserver() {\n if (typeof window === 'undefined') {\n return;\n }\n\n if (this.htmlForObserver) {\n this.htmlForObserver.disconnect();\n }\n\n if (this.htmlFor) {\n this.htmlForObserver.observe(window.document, {\n childList: true,\n subtree: true,\n });\n }\n }\n\n @Watch('controlRef')\n private async registerControlRefObserver() {\n if (typeof window === 'undefined') {\n return;\n }\n\n if (this.controlRefClassObserver) {\n this.controlRefClassObserver.destroy();\n }\n\n if (this.controlRef) {\n const input = await this.controlRef.waitForCurrent();\n\n this.controlRefClassObserver = createClassMutationObserver(input, () =>\n this.checkForInvalidState(input)\n );\n }\n }\n\n private registerHtmlForClassObserver(\n forElement: HTMLIxFormComponentElement<unknown>\n ) {\n if (this.htmlForClassObserver) {\n this.htmlForClassObserver.destroy();\n }\n\n this.htmlForClassObserver = createClassMutationObserver(forElement, () =>\n this.checkForInvalidState(forElement)\n );\n }\n\n private checkForInvalidState(elementToCheck: HTMLElement) {\n this.isInvalid =\n elementToCheck.classList.contains('is-invalid') ||\n elementToCheck.classList.contains('ix-invalid');\n }\n\n private async checkForInternalState() {\n if (this.htmlFor) {\n const forElement = document.getElementById(\n this.htmlFor\n ) as HTMLIxFormComponentElement<unknown>;\n if (forElement) {\n if (typeof forElement.required === 'boolean') {\n this.required = forElement.required;\n }\n\n this.registerHtmlForClassObserver(forElement);\n this.checkForInvalidState(forElement);\n }\n }\n\n if (this.controlRef) {\n const input = await this.controlRef.waitForCurrent();\n this.required = (\n input as HTMLInputElement | HTMLTextAreaElement\n ).required;\n }\n }\n\n private async focusOnClick() {\n if (this.htmlFor) {\n const target = document.getElementById(this.htmlFor);\n if (target) {\n let input: HTMLElement | null = null;\n if (isIxInputFieldComponent(target)) {\n input = await target.getNativeInputElement();\n } else {\n input = target;\n }\n if (typeof input.focus === 'function') {\n input.focus();\n }\n }\n }\n\n if (this.controlRef) {\n (await this.controlRef.waitForCurrent()).focus();\n }\n }\n\n render() {\n return (\n <Host onClick={() => this.focusOnClick()}>\n <label\n htmlFor={this.htmlFor}\n {...this.a11yAttributes}\n ref={this.labelRef}\n >\n <ix-typography\n color={this.isInvalid ? 'alarm' : 'soft'}\n format=\"label\"\n >\n <slot></slot>\n {this.required && <span> *</span>}\n </ix-typography>\n </label>\n </Host>\n );\n }\n}\n","@import \"./field-wrapper.mixins.scss\";\n\n:host {\n display: flex;\n position: relative;\n flex-direction: column;\n\n .slot-wrapper {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-start;\n gap: 0.25rem;\n }\n\n .field-bottom,\n .field-top {\n display: flex;\n flex-direction: row;\n position: relative;\n justify-content: space-between;\n gap: 1rem;\n width: min-content;\n min-width: 100%;\n }\n\n .field-bottom .bottom-right {\n margin-left: auto;\n margin-right: 0px;\n }\n\n @include helper-text;\n\n .bottom-text {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Component, Element, Host, Prop, h } from '@stencil/core';\nimport { FieldWrapperInterface } from '../utils/input';\nimport { MakeRef, makeRef } from '../utils/make-ref';\nimport { hasAnyText, renderHelperText } from './helper-text-util';\n\n/** @internal */\n@Component({\n tag: 'ix-field-wrapper',\n styleUrl: 'field-wrapper.scss',\n shadow: true,\n})\nexport class FieldWrapper implements FieldWrapperInterface {\n @Element() hostElement!: HTMLIxFieldWrapperElement;\n\n /**\n * Show text below the field component\n */\n @Prop() helperText?: string;\n\n /**\n * Label for the field component\n */\n @Prop() label?: string;\n\n /**\n * Error text for the field component\n */\n @Prop() invalidText?: string;\n\n /**\n * Valid text for the field component\n */\n @Prop() validText?: string;\n\n /**\n * Info text for the field component\n */\n @Prop() infoText?: string;\n\n /**\n * Warning text for the field component\n */\n @Prop() warningText?: string;\n\n /**\n * Is the field component invalid\n */\n @Prop() isInvalid: boolean = false;\n\n /**\n * Is the field component valid\n */\n @Prop() isValid: boolean = false;\n\n /**\n * Is the field component info\n */\n @Prop() isInfo: boolean = false;\n\n /**\n * Is the field component warning\n */\n @Prop() isWarning: boolean = false;\n\n /**\n * Show helper, error, info, warning text as tooltip\n */\n @Prop() showTextAsTooltip: boolean = false;\n\n /**\n * Show label as required\n */\n @Prop() required: boolean = false;\n\n /**\n * The id of the form element that the label is associated with\n */\n @Prop() htmlForLabel?: string;\n\n /**\n * The control element that the label is associated with\n */\n @Prop() controlRef?:\n | MakeRef<HTMLElement>\n | MakeRef<HTMLInputElement>\n | MakeRef<HTMLTextAreaElement>;\n\n private readonly slotRef = makeRef<HTMLDivElement>();\n\n render() {\n const textOptions = {\n invalidText: this.invalidText,\n isInvalid: this.isInvalid,\n isValid: this.isValid,\n validText: this.validText,\n isWarning: this.isWarning,\n warningText: this.warningText,\n isInfo: this.isInfo,\n infoText: this.infoText,\n helperText: this.helperText,\n };\n return (\n <Host>\n {this.label && (\n <div class=\"field-top\">\n <ix-field-label\n required={this.required}\n htmlFor={this.htmlForLabel}\n controlRef={this.controlRef}\n isInvalid={this.isInvalid}\n >\n {this.label}\n </ix-field-label>\n </div>\n )}\n <div\n class={{\n 'slot-wrapper': true,\n }}\n ref={this.slotRef}\n >\n <slot></slot>\n </div>\n <div class={'field-bottom'}>\n {!this.showTextAsTooltip && renderHelperText(textOptions)}\n <div class=\"bottom-right\">\n <slot name=\"bottom-right\"></slot>\n </div>\n </div>\n\n {this.showTextAsTooltip === true && hasAnyText(textOptions) && (\n <ix-tooltip\n for={this.slotRef.waitForCurrent()}\n showDelay={500}\n placement=\"bottom\"\n >\n {renderHelperText(textOptions)}\n </ix-tooltip>\n )}\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { IxComponent } from '../utils/internal';\n\nexport interface IxOverlayComponent extends IxComponent {\n isPresent(): boolean;\n\n willPresent?(): boolean;\n willDismiss?(): boolean;\n\n present(): void;\n dismiss(): void;\n}\n\nexport class OverlayController {\n overlays: Set<IxOverlayComponent> = new Set();\n\n connected(instance: IxOverlayComponent): void {\n this.overlays.add(instance);\n }\n\n disconnected(instance: IxOverlayComponent): void {\n this.overlays.delete(instance);\n }\n\n present(instance: IxOverlayComponent): void {\n if (instance.willPresent && !instance.willPresent()) {\n return;\n }\n this.dismissOthers(instance);\n instance.present();\n }\n\n dismiss(instance: IxOverlayComponent): void {\n if (instance.willDismiss && !instance.willDismiss()) {\n return;\n }\n instance.dismiss();\n }\n\n private dismissOthers(instance: IxOverlayComponent): void {\n this.overlays.forEach((overlay) => {\n if (overlay !== instance) {\n this.dismiss(overlay);\n }\n });\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { OverlayController } from '../utils/overlay';\n\nclass TooltipController extends OverlayController {}\n\nexport const tooltipController = new TooltipController();\n",":host {\n display: inline-block;\n position: fixed;\n left: 0;\n top: 0;\n z-index: var(--theme-z-index-tooltip);\n\n max-width: 18.25rem;\n width: max-content;\n\n opacity: 0;\n visibility: collapse !important;\n overflow-wrap: break-word;\n\n border-radius: 0.25rem;\n\n .tooltip-title {\n display: flex;\n align-items: center;\n\n ::slotted(ix-icon) {\n margin-right: 0.35rem;\n }\n }\n\n .tooltip-container {\n display: block;\n position: relative;\n width: auto;\n height: 100%;\n background: var(--theme-tootlip--background);\n color: var(--theme-color-std-text);\n padding: 0.375rem 0.75rem 0.375rem 0.875rem;\n\n box-shadow: var(--theme-shadow-4);\n border-radius: inherit;\n }\n}\n\n:host(.visible) {\n opacity: 1;\n visibility: visible !important;\n}\n\n:host(.visible) {\n .arrow,\n .arrow::before {\n position: absolute;\n width: 12px;\n height: 12px;\n background: inherit;\n }\n\n .arrow {\n visibility: hidden;\n }\n\n .arrow::before {\n visibility: visible;\n content: '';\n transform: rotate(45deg);\n background-color: var(--theme-tootlip--background);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n arrow,\n autoUpdate,\n computePosition,\n ComputePositionReturn,\n flip,\n hide,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { OnListener } from '../utils/listener';\nimport { tooltipController } from './tooltip-controller';\nimport { IxOverlayComponent } from '../utils/overlay';\nimport { resolveSelector } from '../utils/find-element';\nimport { ElementReference } from 'src/components';\n\ntype ArrowPosition = {\n top?: string;\n left?: string;\n right?: string;\n};\n\nconst numberToPixel = (value?: number | null) =>\n value != null ? `${value}px` : '';\n\n/**\n * @slot title-icon - Icon of tooltip title\n * @slot title-content - Content of tooltip title\n *\n * @since 1.4.0\n */\n@Component({\n tag: 'ix-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n})\nexport class Tooltip implements IxOverlayComponent {\n /**\n * CSS selector for hover trigger element e.g. `for=\"[data-my-custom-select]\"`\n */\n @Prop() for?: ElementReference;\n\n /**\n * Title of the tooltip\n */\n @Prop() titleContent?: string;\n\n /**\n * Define if the user can access the tooltip via mouse.\n */\n @Prop() interactive = false;\n\n /**\n * Initial placement of the tooltip.\n * If the selected placement doesn't have enough space, the tooltip will be repositioned to another location.\n * @since 1.5.0\n */\n @Prop() placement: 'top' | 'right' | 'bottom' | 'left' = 'top';\n\n /** @internal */\n @Prop() showDelay = 0;\n\n /** @internal */\n @Prop() hideDelay = 50;\n\n /** @internal */\n @Prop() animationFrame = false;\n\n @State() visible = false;\n\n @Element() hostElement!: HTMLIxTooltipElement;\n\n private observer?: MutationObserver;\n private hideTooltipTimeout?: NodeJS.Timeout;\n private showTooltipTimeout?: NodeJS.Timeout;\n private disposeAutoUpdate?: () => void;\n private disposeListener?: () => void;\n\n private get arrowElement(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector('.arrow')!;\n }\n\n private destroyAutoUpdate() {\n if (this.disposeAutoUpdate !== undefined) {\n this.disposeAutoUpdate();\n }\n }\n\n /** @internal */\n @Method()\n async showTooltip(anchorElement: Element) {\n clearTimeout(this.hideTooltipTimeout);\n await this.applyTooltipPosition(anchorElement);\n\n this.showTooltipTimeout = setTimeout(() => {\n tooltipController.present(this);\n // Need to compute and apply tooltip position after initial render,\n // because arrow has no valid bounding rect before that\n this.applyTooltipPosition(anchorElement);\n }, this.showDelay);\n }\n\n /** @internal */\n @Method()\n async hideTooltip() {\n clearTimeout(this.showTooltipTimeout);\n let hideDelay = 50;\n\n if (this.interactive && this.hideDelay === hideDelay) {\n hideDelay = 150;\n }\n\n this.hideTooltipTimeout = setTimeout(() => {\n tooltipController.dismiss(this);\n }, hideDelay);\n this.destroyAutoUpdate();\n }\n\n private computeArrowPosition({\n placement,\n middlewareData,\n }: ComputePositionReturn): ArrowPosition | undefined {\n let { x, y } = middlewareData.arrow!;\n const resetPosition = {\n top: 'unset',\n right: 'unset',\n bottom: 'unset',\n left: 'unset',\n };\n\n if (placement.startsWith('top')) {\n return {\n ...resetPosition,\n left: numberToPixel(x),\n top: numberToPixel(y),\n };\n }\n\n if (placement.startsWith('right')) {\n return {\n ...resetPosition,\n left: numberToPixel(-6),\n top: numberToPixel(y),\n };\n }\n\n if (placement.startsWith('bottom')) {\n return {\n ...resetPosition,\n left: numberToPixel(x),\n top: numberToPixel(-6),\n };\n }\n\n if (placement.startsWith('left')) {\n return {\n ...resetPosition,\n right: numberToPixel(-6),\n top: numberToPixel(y),\n };\n }\n }\n\n private async computeTooltipPosition(target: Element) {\n return computePosition(target, this.hostElement, {\n strategy: 'fixed',\n placement: this.placement,\n middleware: [\n shift(),\n offset(12),\n arrow({\n element: this.arrowElement,\n }),\n flip({\n fallbackStrategy: 'initialPlacement',\n fallbackAxisSideDirection: 'end',\n padding: 10,\n }),\n hide(),\n ],\n });\n }\n\n private applyTooltipArrowPosition(computeResponse: ComputePositionReturn) {\n const arrowPosition = this.computeArrowPosition(computeResponse);\n Object.assign(this.arrowElement.style, arrowPosition);\n }\n\n private async applyTooltipPosition(target: Element) {\n if (!target) {\n return;\n }\n\n return new Promise<ComputePositionReturn>((resolve) => {\n this.destroyAutoUpdate();\n this.disposeAutoUpdate = autoUpdate(\n target,\n this.hostElement,\n async () => {\n setTimeout(async () => {\n const computeResponse = await this.computeTooltipPosition(target);\n\n const isHidden =\n computeResponse.middlewareData.hide?.referenceHidden;\n\n if (isHidden) {\n setTimeout(() => this.hideTooltip());\n resolve(computeResponse);\n }\n\n if (computeResponse.middlewareData.arrow) {\n this.applyTooltipArrowPosition(computeResponse);\n }\n\n const { x, y } = computeResponse;\n Object.assign(this.hostElement.style, {\n left: x !== null ? `${x}px` : '',\n top: y !== null ? `${y}px` : '',\n });\n\n resolve(computeResponse);\n });\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n animationFrame: this.animationFrame,\n }\n );\n });\n }\n\n private clearHideTimeout() {\n if (this.interactive) {\n clearTimeout(this.hideTooltipTimeout);\n }\n }\n\n private async queryAnchorElements(): Promise<Array<HTMLElement> | undefined> {\n if (typeof this.for === 'string') {\n return resolveSelector(this.for, this.hostElement);\n }\n\n if (this.for instanceof HTMLElement) {\n return Promise.resolve([this.for]);\n }\n\n if (this.for instanceof Promise) {\n const element = await this.for;\n return [element];\n }\n }\n\n private async registerTriggerListener() {\n const triggerElementList = await this.queryAnchorElements();\n\n if (this.disposeListener) {\n this.disposeListener();\n }\n\n if (!triggerElementList) {\n return;\n }\n\n triggerElementList.forEach((element) => {\n const onMouseEnter = () => {\n this.showTooltip(element);\n };\n\n const onMouseLeave = () => {\n this.hideTooltip();\n };\n\n const onFocusIn = () => {\n if (this.showTooltipTimeout !== undefined) {\n clearTimeout(this.showTooltipTimeout);\n }\n\n onMouseEnter();\n };\n\n const onFocusOut = () => {\n this.hideTooltip();\n };\n\n element.addEventListener('mouseenter', onMouseEnter);\n element.addEventListener('mouseleave', onMouseLeave);\n element.addEventListener('focusin', onFocusIn);\n element.addEventListener('focusout', onFocusOut);\n\n this.disposeListener = () => {\n element.removeEventListener('mouseenter', onMouseEnter);\n element.removeEventListener('mouseleave', onMouseLeave);\n element.removeEventListener('focusin', onFocusIn);\n element.removeEventListener('focusout', onFocusOut);\n };\n });\n }\n\n private registerTooltipListener() {\n const { hostElement } = this;\n hostElement.addEventListener('mouseenter', () => this.clearHideTimeout());\n hostElement.addEventListener('focusin', () => this.clearHideTimeout());\n\n hostElement.addEventListener('mouseleave', () => this.hideTooltip());\n hostElement.addEventListener('focusout', () => this.hideTooltip());\n }\n\n @OnListener<Tooltip>('keydown', (self) => self.visible)\n async onKeydown(event: KeyboardEvent) {\n if (event.code === 'Escape') {\n this.hideTooltip();\n }\n }\n\n componentWillLoad() {\n this.registerTriggerListener();\n }\n\n componentDidLoad() {\n this.observer = new MutationObserver(() => {\n this.registerTriggerListener();\n });\n\n this.observer.observe(document.body, {\n attributes: true,\n attributeFilter: ['data-ix-tooltip'],\n childList: true,\n subtree: true,\n });\n\n this.registerTooltipListener();\n }\n\n connectedCallback() {\n tooltipController.connected(this);\n }\n\n disconnectedCallback() {\n this.observer?.disconnect();\n this.destroyAutoUpdate();\n tooltipController.disconnected(this);\n }\n\n isPresent(): boolean {\n return this.visible;\n }\n\n present(): void {\n this.visible = true;\n }\n\n dismiss(): void {\n this.visible = false;\n }\n\n render() {\n return (\n <Host\n class={{\n visible: this.visible,\n }}\n role=\"tooltip\"\n >\n <div class=\"tooltip-container\">\n <div class={'tooltip-title'}>\n <slot name=\"title-icon\"></slot>\n <ix-typography format=\"h5\">\n {this.titleContent}\n <slot name=\"title-content\"></slot>\n </ix-typography>\n </div>\n <div class={'tooltip-content'}>\n <slot></slot>\n </div>\n <div class=\"arrow\"></div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, g as getElement } from './index-97874de0.js';
|
|
2
2
|
import { c as createClassMutationObserver, a as checkFieldClasses } from './validation-45aa490c.js';
|
|
3
|
-
import { r as renderHelperText } from './helper-text-util-
|
|
4
|
-
import './index-
|
|
3
|
+
import { r as renderHelperText } from './helper-text-util-e47b864d.js';
|
|
4
|
+
import './index-2b76ea55.js';
|
|
5
5
|
|
|
6
6
|
const helperTextCss = ":host{display:block}:host .bottom-text{display:flex;position:relative;align-items:flex-start;justify-content:flex-start;gap:0.25rem;margin-right:0.25rem}:host .text-icon{margin:0.125rem}:host .text-icon.invalid{color:var(--theme-helper-icon--color--invalid)}:host .text-icon.info{color:var(--theme-helper-icon--color--info)}:host .text-icon.warning{color:var(--theme-helper-icon--color--warning)}:host .text-icon.valid{color:var(--theme-helper-icon--color--valid)}";
|
|
7
7
|
const IxHelperTextStyle0 = helperTextCss;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, h, H as Host } from './index.es2017-
|
|
1
|
+
import { r as registerInstance, h, H as Host } from './index.es2017-4e6fdf77.js';
|
|
2
2
|
|
|
3
3
|
/* Siemens iX Icons */
|
|
4
4
|
/* autogenerated do not edit */
|
|
@@ -1528,4 +1528,4 @@ Icon.style = iconCss;
|
|
|
1528
1528
|
|
|
1529
1529
|
export { Icon as ix_icon };
|
|
1530
1530
|
|
|
1531
|
-
//# sourceMappingURL=ix-icon.entry-
|
|
1531
|
+
//# sourceMappingURL=ix-icon.entry-f5f7c268.js.map
|