@tylertech/forge 2.7.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +4428 -86
- package/dist/esm/accordion/index.js +7 -7
- package/dist/esm/app-bar/help-button/index.js +9 -9
- package/dist/esm/app-bar/index.js +15 -15
- package/dist/esm/app-bar/menu-button/index.js +6 -6
- package/dist/esm/app-bar/notification-button/index.js +6 -6
- package/dist/esm/app-bar/profile-button/index.js +7 -7
- package/dist/esm/app-bar/search/index.js +5 -5
- package/dist/esm/autocomplete/index.js +13 -13
- package/dist/esm/banner/index.js +6 -6
- package/dist/esm/bottom-sheet/index.js +5 -5
- package/dist/esm/busy-indicator/index.js +4 -4
- package/dist/esm/button/index.js +3 -3
- package/dist/esm/calendar/calendar-dropdown/index.js +2 -2
- package/dist/esm/calendar/calendar-menu/index.js +2 -2
- package/dist/esm/calendar/index.js +7 -7
- package/dist/esm/checkbox/index.js +2 -2
- package/dist/esm/chip-field/index.js +9 -9
- package/dist/esm/chips/chip/index.js +6 -6
- package/dist/esm/chips/chip-set/index.js +6 -6
- package/dist/esm/chips/index.js +7 -7
- package/dist/esm/chunks/{chunk.VXVE7KEM.js → chunk.2QB3WXEH.js} +4 -4
- package/dist/esm/chunks/{chunk.VXVE7KEM.js.map → chunk.2QB3WXEH.js.map} +0 -0
- package/dist/esm/chunks/{chunk.3QXCVTCP.js → chunk.2Z23LQVW.js} +2 -2
- package/dist/esm/chunks/{chunk.3QXCVTCP.js.map → chunk.2Z23LQVW.js.map} +0 -0
- package/dist/esm/chunks/{chunk.GL72QT42.js → chunk.35BJJH5E.js} +2 -2
- package/dist/esm/chunks/{chunk.GL72QT42.js.map → chunk.35BJJH5E.js.map} +1 -1
- package/dist/esm/chunks/{chunk.BEAJZPWS.js → chunk.3TFBNPQF.js} +2 -2
- package/dist/esm/chunks/{chunk.BEAJZPWS.js.map → chunk.3TFBNPQF.js.map} +0 -0
- package/dist/esm/chunks/{chunk.2MBI5DLT.js → chunk.3ULPDQ2I.js} +71 -15
- package/dist/esm/chunks/chunk.3ULPDQ2I.js.map +7 -0
- package/dist/esm/chunks/{chunk.JC2PZ4TS.js → chunk.5DJS3K7V.js} +10 -8
- package/dist/esm/chunks/chunk.5DJS3K7V.js.map +7 -0
- package/dist/esm/chunks/{chunk.GHZ75UPO.js → chunk.5EBM357P.js} +3 -3
- package/dist/esm/chunks/{chunk.GHZ75UPO.js.map → chunk.5EBM357P.js.map} +0 -0
- package/dist/esm/chunks/{chunk.J5NUYQ4D.js → chunk.5XUOWRCK.js} +3 -3
- package/dist/esm/chunks/{chunk.J5NUYQ4D.js.map → chunk.5XUOWRCK.js.map} +0 -0
- package/dist/esm/chunks/{chunk.6EGTLHJS.js → chunk.65ZCTZEM.js} +6 -2
- package/dist/esm/chunks/{chunk.6EGTLHJS.js.map → chunk.65ZCTZEM.js.map} +2 -2
- package/dist/esm/chunks/chunk.A5GIQB6E.js +20 -0
- package/dist/esm/chunks/{chunk.JUXKYUD4.js.map → chunk.A5GIQB6E.js.map} +3 -3
- package/dist/esm/chunks/{chunk.PM7D2SUE.js → chunk.A6YZB7UK.js} +33 -2
- package/dist/esm/chunks/{chunk.PM7D2SUE.js.map → chunk.A6YZB7UK.js.map} +2 -2
- package/dist/esm/chunks/chunk.AJJILT3A.js +6 -0
- package/dist/esm/chunks/chunk.AJJILT3A.js.map +7 -0
- package/dist/esm/chunks/chunk.CGKWQIL3.js +1236 -0
- package/dist/esm/chunks/chunk.CGKWQIL3.js.map +7 -0
- package/dist/esm/chunks/chunk.CGOYP37Z.js +345 -0
- package/dist/esm/chunks/chunk.CGOYP37Z.js.map +7 -0
- package/dist/esm/chunks/{chunk.QYWAZCBX.js → chunk.CTMCTMRO.js} +2 -2
- package/dist/esm/chunks/{chunk.QYWAZCBX.js.map → chunk.CTMCTMRO.js.map} +0 -0
- package/dist/esm/chunks/{chunk.JUXKYUD4.js → chunk.D2AL6QLF.js} +60 -40
- package/dist/esm/chunks/chunk.D2AL6QLF.js.map +7 -0
- package/dist/esm/chunks/{chunk.U5ECVIX5.js → chunk.D3MXPNTL.js} +2 -2
- package/dist/esm/chunks/{chunk.U5ECVIX5.js.map → chunk.D3MXPNTL.js.map} +0 -0
- package/dist/esm/chunks/{chunk.HAWYW54W.js → chunk.D45QN7JA.js} +5 -5
- package/dist/esm/chunks/{chunk.HAWYW54W.js.map → chunk.D45QN7JA.js.map} +0 -0
- package/dist/esm/chunks/{chunk.2WBHHTUM.js → chunk.EFQZGAM5.js} +2 -2
- package/dist/esm/chunks/{chunk.2WBHHTUM.js.map → chunk.EFQZGAM5.js.map} +0 -0
- package/dist/esm/chunks/{chunk.L344BPCW.js → chunk.F5O63UF4.js} +2 -2
- package/dist/esm/chunks/{chunk.L344BPCW.js.map → chunk.F5O63UF4.js.map} +0 -0
- package/dist/esm/chunks/{chunk.RL7ZFLMG.js → chunk.FRT7RD5L.js} +2 -2
- package/dist/esm/chunks/{chunk.RL7ZFLMG.js.map → chunk.FRT7RD5L.js.map} +0 -0
- package/dist/esm/chunks/{chunk.LK2DN5KX.js → chunk.GG3O42UP.js} +4 -4
- package/dist/esm/chunks/{chunk.LK2DN5KX.js.map → chunk.GG3O42UP.js.map} +0 -0
- package/dist/esm/chunks/{chunk.WSH4S3GM.js → chunk.GVR5LXMJ.js} +2 -2
- package/dist/esm/chunks/{chunk.WSH4S3GM.js.map → chunk.GVR5LXMJ.js.map} +0 -0
- package/dist/esm/chunks/{chunk.LHWZ4KZU.js → chunk.HL2ORG3A.js} +4 -4
- package/dist/esm/chunks/{chunk.LHWZ4KZU.js.map → chunk.HL2ORG3A.js.map} +1 -1
- package/dist/esm/chunks/{chunk.65GHMPX2.js → chunk.J2FCOFOE.js} +6 -6
- package/dist/esm/chunks/chunk.J2FCOFOE.js.map +7 -0
- package/dist/esm/chunks/{chunk.PKZ43JNW.js → chunk.JM6SZSUI.js} +50 -4
- package/dist/esm/chunks/{chunk.PKZ43JNW.js.map → chunk.JM6SZSUI.js.map} +2 -2
- package/dist/esm/chunks/{chunk.VXAPRFMK.js → chunk.K4B7NJ2G.js} +4 -4
- package/dist/esm/chunks/{chunk.VXAPRFMK.js.map → chunk.K4B7NJ2G.js.map} +0 -0
- package/dist/esm/chunks/{chunk.67B6JDOJ.js → chunk.KVOXJKCU.js} +3 -3
- package/dist/esm/chunks/{chunk.67B6JDOJ.js.map → chunk.KVOXJKCU.js.map} +0 -0
- package/dist/esm/chunks/{chunk.ITQ55IPH.js → chunk.LTN47GWQ.js} +4 -4
- package/dist/esm/chunks/{chunk.ITQ55IPH.js.map → chunk.LTN47GWQ.js.map} +0 -0
- package/dist/esm/chunks/{chunk.UPW5HUKB.js → chunk.NU3XRT37.js} +5 -5
- package/dist/esm/chunks/{chunk.UPW5HUKB.js.map → chunk.NU3XRT37.js.map} +0 -0
- package/dist/esm/chunks/{chunk.I6PJGNJS.js → chunk.NWPH4FRE.js} +6 -6
- package/dist/esm/chunks/chunk.NWPH4FRE.js.map +7 -0
- package/dist/esm/chunks/{chunk.KNR5DXE4.js → chunk.OTJJU35B.js} +2 -2
- package/dist/esm/chunks/{chunk.KNR5DXE4.js.map → chunk.OTJJU35B.js.map} +0 -0
- package/dist/esm/chunks/{chunk.BVGJFMEG.js → chunk.PRRL5C6Z.js} +7 -7
- package/dist/esm/chunks/{chunk.BVGJFMEG.js.map → chunk.PRRL5C6Z.js.map} +0 -0
- package/dist/esm/chunks/{chunk.TIUNGGBF.js → chunk.QFG7SPQV.js} +3 -3
- package/dist/esm/chunks/{chunk.TIUNGGBF.js.map → chunk.QFG7SPQV.js.map} +0 -0
- package/dist/esm/chunks/{chunk.C73AZRT4.js → chunk.QKCIMRRG.js} +36 -19
- package/dist/esm/chunks/chunk.QKCIMRRG.js.map +7 -0
- package/dist/esm/chunks/{chunk.IGBDDH3J.js → chunk.QRGWP6Z2.js} +3 -3
- package/dist/esm/chunks/chunk.QRGWP6Z2.js.map +7 -0
- package/dist/esm/chunks/{chunk.MUP3NY6M.js → chunk.QSFE3J74.js} +5 -5
- package/dist/esm/chunks/{chunk.MUP3NY6M.js.map → chunk.QSFE3J74.js.map} +0 -0
- package/dist/esm/chunks/{chunk.ZXMJB7OW.js → chunk.R357QRWX.js} +54 -50
- package/dist/esm/chunks/chunk.R357QRWX.js.map +7 -0
- package/dist/esm/chunks/{chunk.46BED43J.js → chunk.SVS3G6Y7.js} +5 -19
- package/dist/esm/chunks/chunk.SVS3G6Y7.js.map +7 -0
- package/dist/esm/chunks/{chunk.S3UVF647.js → chunk.TBQ72CBS.js} +3 -3
- package/dist/esm/chunks/{chunk.S3UVF647.js.map → chunk.TBQ72CBS.js.map} +0 -0
- package/dist/esm/chunks/{chunk.MF3IZXQG.js → chunk.TSHHEAIC.js} +2 -2
- package/dist/esm/chunks/{chunk.MF3IZXQG.js.map → chunk.TSHHEAIC.js.map} +0 -0
- package/dist/esm/chunks/{chunk.EBC2HGO3.js → chunk.UAW46BWM.js} +3 -3
- package/dist/esm/chunks/{chunk.EBC2HGO3.js.map → chunk.UAW46BWM.js.map} +0 -0
- package/dist/esm/chunks/{chunk.FJJVIMZ2.js → chunk.V6ESTGWD.js} +5 -5
- package/dist/esm/chunks/chunk.V6ESTGWD.js.map +7 -0
- package/dist/esm/chunks/{chunk.5OYAJ36F.js → chunk.VLAUYV76.js} +2 -2
- package/dist/esm/chunks/{chunk.5OYAJ36F.js.map → chunk.VLAUYV76.js.map} +0 -0
- package/dist/esm/chunks/{chunk.L4OUV7W6.js → chunk.VSKPHQZE.js} +4 -4
- package/dist/esm/chunks/{chunk.L4OUV7W6.js.map → chunk.VSKPHQZE.js.map} +0 -0
- package/dist/esm/chunks/{chunk.GS2AXUCN.js → chunk.WOL4KRZK.js} +6 -1
- package/dist/esm/chunks/{chunk.GS2AXUCN.js.map → chunk.WOL4KRZK.js.map} +1 -1
- package/dist/esm/chunks/{chunk.TM46MNYN.js → chunk.WQRR5OGK.js} +5 -5
- package/dist/esm/chunks/{chunk.TM46MNYN.js.map → chunk.WQRR5OGK.js.map} +0 -0
- package/dist/esm/chunks/chunk.X2RP4QW3.js +6 -0
- package/dist/esm/chunks/chunk.X2RP4QW3.js.map +7 -0
- package/dist/esm/chunks/{chunk.GOWHXADJ.js → chunk.X3TV6IHS.js} +23 -15
- package/dist/esm/chunks/chunk.X3TV6IHS.js.map +7 -0
- package/dist/esm/chunks/{chunk.U37G47LH.js → chunk.XC56O73Q.js} +6 -6
- package/dist/esm/chunks/{chunk.U37G47LH.js.map → chunk.XC56O73Q.js.map} +0 -0
- package/dist/esm/chunks/{chunk.QWW6A7AF.js → chunk.XRK62M5E.js} +2 -2
- package/dist/esm/chunks/{chunk.QWW6A7AF.js.map → chunk.XRK62M5E.js.map} +0 -0
- package/dist/esm/chunks/{chunk.ZLF2G3YT.js → chunk.XSS7BYJS.js} +3 -3
- package/dist/esm/chunks/{chunk.ZLF2G3YT.js.map → chunk.XSS7BYJS.js.map} +0 -0
- package/dist/esm/chunks/{chunk.XHMNHBZD.js → chunk.YCHKXJLN.js} +3 -3
- package/dist/esm/chunks/{chunk.XHMNHBZD.js.map → chunk.YCHKXJLN.js.map} +1 -1
- package/dist/esm/chunks/{chunk.UQ3QTUUB.js → chunk.YMP3JQQQ.js} +2 -2
- package/dist/esm/chunks/{chunk.UQ3QTUUB.js.map → chunk.YMP3JQQQ.js.map} +0 -0
- package/dist/esm/chunks/{chunk.7I2XNJBL.js → chunk.YTFOQNFU.js} +6 -16
- package/dist/esm/chunks/chunk.YTFOQNFU.js.map +7 -0
- package/dist/esm/chunks/{chunk.IJW2YKP3.js → chunk.Z5KLXKMB.js} +21 -15
- package/dist/esm/chunks/chunk.Z5KLXKMB.js.map +7 -0
- package/dist/esm/chunks/{chunk.MBZLA635.js → chunk.ZIZGRSAX.js} +6 -6
- package/dist/esm/chunks/{chunk.MBZLA635.js.map → chunk.ZIZGRSAX.js.map} +1 -1
- package/dist/esm/chunks/{chunk.CLEUHAZ6.js → chunk.ZLX3L6KW.js} +2 -2
- package/dist/esm/chunks/{chunk.CLEUHAZ6.js.map → chunk.ZLX3L6KW.js.map} +0 -0
- package/dist/esm/color-picker/index.js +6 -6
- package/dist/esm/core/index.js +14 -2
- package/dist/esm/core/utils/index.js +14 -2
- package/dist/esm/date-picker/index.js +11 -11
- package/dist/esm/date-range-picker/index.js +11 -11
- package/dist/esm/dialog/index.js +5 -5
- package/dist/esm/drawer/base/index.js +2 -2
- package/dist/esm/drawer/drawer/index.js +3 -3
- package/dist/esm/drawer/index.js +5 -5
- package/dist/esm/drawer/mini-drawer/index.js +3 -3
- package/dist/esm/drawer/modal-drawer/index.js +3 -3
- package/dist/esm/expansion-panel/index.js +6 -6
- package/dist/esm/file-picker/index.js +4 -4
- package/dist/esm/icon/index.js +3 -3
- package/dist/esm/icon-button/index.js +4 -4
- package/dist/esm/index.js +169 -94
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +5 -5
- package/dist/esm/menu/index.js +7 -7
- package/dist/esm/open-icon/index.js +5 -5
- package/dist/esm/paginator/index.js +12 -12
- package/dist/esm/profile-card/index.js +4 -4
- package/dist/esm/quantity-field/index.js +6 -7
- package/dist/esm/select/core/index.js +7 -7
- package/dist/esm/select/index.js +11 -11
- package/dist/esm/select/select/index.js +9 -9
- package/dist/esm/select/select-dropdown/index.js +9 -9
- package/dist/esm/slider/index.js +2 -2
- package/dist/esm/split-view/core/index.js +7 -0
- package/dist/esm/split-view/core/index.js.map +7 -0
- package/dist/esm/split-view/index.js +92 -0
- package/dist/esm/split-view/index.js.map +7 -0
- package/dist/esm/split-view/split-view/index.js +44 -0
- package/dist/esm/split-view/split-view/index.js.map +7 -0
- package/dist/esm/split-view/split-view-panel/index.js +78 -0
- package/dist/esm/split-view/split-view-panel/index.js.map +7 -0
- package/dist/esm/stepper/index.js +6 -6
- package/dist/esm/stepper/step/index.js +5 -5
- package/dist/esm/stepper/stepper/index.js +6 -6
- package/dist/esm/switch/index.js +2 -2
- package/dist/esm/table/index.js +7 -7
- package/dist/esm/tabs/index.js +6 -6
- package/dist/esm/tabs/tab-bar/index.js +6 -6
- package/dist/esm/text-field/index.js +2 -2
- package/dist/esm/time-picker/index.js +11 -10
- package/dist/esm/toast/index.js +7 -7
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +6 -1
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +30 -12
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +4 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +2 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +8 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +22 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +4 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.js +14 -0
- package/esm/autocomplete/autocomplete-adapter.d.ts +2 -0
- package/esm/autocomplete/autocomplete-adapter.js +4 -0
- package/esm/autocomplete/autocomplete-foundation.js +10 -7
- package/esm/chip-field/chip-field-adapter.d.ts +1 -1
- package/esm/chip-field/chip-field-adapter.js +2 -2
- package/esm/chip-field/chip-field.js +1 -1
- package/esm/chips/chip/chip.js +1 -1
- package/esm/core/utils/event-utils.d.ts +1 -0
- package/esm/core/utils/event-utils.js +3 -0
- package/esm/core/utils/utils.d.ts +36 -0
- package/esm/core/utils/utils.js +57 -0
- package/esm/date-picker/date-picker-foundation.js +3 -1
- package/esm/drawer/base/base-drawer-foundation.d.ts +4 -2
- package/esm/drawer/base/base-drawer-foundation.js +22 -14
- package/esm/drawer/modal-drawer/modal-drawer-foundation.d.ts +2 -2
- package/esm/drawer/modal-drawer/modal-drawer-foundation.js +4 -4
- package/esm/field/field-adapter.d.ts +4 -4
- package/esm/field/field-adapter.js +4 -13
- package/esm/field/field-foundation.js +2 -2
- package/esm/file-picker/file-picker.js +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.js +3 -0
- package/esm/inline-message/inline-message.js +1 -1
- package/esm/profile-card/profile-card-adapter.d.ts +4 -0
- package/esm/profile-card/profile-card-adapter.js +6 -0
- package/esm/profile-card/profile-card-constants.d.ts +4 -0
- package/esm/profile-card/profile-card-constants.js +5 -1
- package/esm/profile-card/profile-card-foundation.d.ts +6 -0
- package/esm/profile-card/profile-card-foundation.js +22 -0
- package/esm/profile-card/profile-card.d.ts +4 -0
- package/esm/profile-card/profile-card.js +15 -1
- package/esm/quantity-field/quantity-field-adapter.d.ts +0 -2
- package/esm/quantity-field/quantity-field-adapter.js +1 -13
- package/esm/quantity-field/quantity-field-foundation.js +0 -1
- package/esm/quantity-field/quantity-field.js +1 -1
- package/esm/select/select/select.js +1 -1
- package/esm/split-view/core/index.d.ts +6 -0
- package/esm/split-view/core/index.js +6 -0
- package/esm/split-view/core/split-view-base.d.ts +14 -0
- package/esm/split-view/core/split-view-base.js +6 -0
- package/esm/split-view/index.d.ts +8 -0
- package/esm/split-view/index.js +8 -0
- package/esm/split-view/split-view/index.d.ts +10 -0
- package/esm/split-view/split-view/index.js +14 -0
- package/esm/split-view/split-view/split-view-adapter.d.ts +29 -0
- package/esm/split-view/split-view/split-view-adapter.js +62 -0
- package/esm/split-view/split-view/split-view-constants.d.ts +41 -0
- package/esm/split-view/split-view/split-view-constants.js +40 -0
- package/esm/split-view/split-view/split-view-foundation.d.ts +86 -0
- package/esm/split-view/split-view/split-view-foundation.js +179 -0
- package/esm/split-view/split-view/split-view.d.ts +67 -0
- package/esm/split-view/split-view/split-view.js +103 -0
- package/esm/split-view/split-view-panel/index.d.ts +11 -0
- package/esm/split-view/split-view-panel/index.js +15 -0
- package/esm/split-view/split-view-panel/split-view-panel-adapter.d.ts +171 -0
- package/esm/split-view/split-view-panel/split-view-panel-adapter.js +295 -0
- package/esm/split-view/split-view-panel/split-view-panel-constants.d.ts +97 -0
- package/esm/split-view/split-view-panel/split-view-panel-constants.js +78 -0
- package/esm/split-view/split-view-panel/split-view-panel-foundation.d.ts +235 -0
- package/esm/split-view/split-view-panel/split-view-panel-foundation.js +667 -0
- package/esm/split-view/split-view-panel/split-view-panel-utils.d.ts +130 -0
- package/esm/split-view/split-view-panel/split-view-panel-utils.js +300 -0
- package/esm/split-view/split-view-panel/split-view-panel.d.ts +105 -0
- package/esm/split-view/split-view-panel/split-view-panel.js +173 -0
- package/esm/table/table-utils.d.ts +2 -2
- package/esm/table/table-utils.js +30 -14
- package/esm/table/table.js +3 -1
- package/esm/text-field/text-field-adapter.d.ts +1 -1
- package/esm/text-field/text-field-adapter.js +2 -2
- package/esm/text-field/text-field.js +1 -1
- package/esm/time-picker/time-picker-constants.d.ts +1 -0
- package/esm/time-picker/time-picker-constants.js +1 -0
- package/esm/time-picker/time-picker-foundation.d.ts +4 -0
- package/esm/time-picker/time-picker-foundation.js +44 -29
- package/esm/time-picker/time-picker.d.ts +3 -0
- package/esm/time-picker/time-picker.js +7 -0
- package/package.json +2 -2
- package/styles/chip-field/_base.scss +2 -2
- package/styles/chip-field/_selector.scss +1 -1
- package/styles/chip-field/_variables.scss +1 -1
- package/styles/chips/chip/_mixins.scss +4 -3
- package/styles/chips/chip/_variables.scss +3 -2
- package/styles/field/_base.scss +16 -4
- package/styles/field/_selector.scss +4 -4
- package/styles/file-picker/_mixins.scss +3 -1
- package/styles/inline-message/inline-message.scss +4 -0
- package/styles/quantity-field/_mixins.scss +1 -1
- package/styles/select/select/_selector.scss +1 -1
- package/styles/split-view/split-view/_mixins.scss +48 -0
- package/styles/split-view/split-view/split-view.scss +25 -0
- package/styles/split-view/split-view-panel/_mixins.scss +260 -0
- package/styles/split-view/split-view-panel/_variables.scss +7 -0
- package/styles/split-view/split-view-panel/split-view-panel.scss +23 -0
- package/dist/esm/chunks/chunk.2MBI5DLT.js.map +0 -7
- package/dist/esm/chunks/chunk.46BED43J.js.map +0 -7
- package/dist/esm/chunks/chunk.65GHMPX2.js.map +0 -7
- package/dist/esm/chunks/chunk.7I2XNJBL.js.map +0 -7
- package/dist/esm/chunks/chunk.C73AZRT4.js.map +0 -7
- package/dist/esm/chunks/chunk.FJJVIMZ2.js.map +0 -7
- package/dist/esm/chunks/chunk.GOWHXADJ.js.map +0 -7
- package/dist/esm/chunks/chunk.I6PJGNJS.js.map +0 -7
- package/dist/esm/chunks/chunk.IGBDDH3J.js.map +0 -7
- package/dist/esm/chunks/chunk.IJW2YKP3.js.map +0 -7
- package/dist/esm/chunks/chunk.JC2PZ4TS.js.map +0 -7
- package/dist/esm/chunks/chunk.ZXMJB7OW.js.map +0 -7
|
@@ -20,6 +20,7 @@ export interface ITimePickerComponent extends IBaseComponent {
|
|
|
20
20
|
step: number;
|
|
21
21
|
allowInput: boolean;
|
|
22
22
|
showNow: boolean;
|
|
23
|
+
showHourOptions: boolean;
|
|
23
24
|
customOptions: ITimePickerOption[];
|
|
24
25
|
validationCallback: TimePickerValidationCallback;
|
|
25
26
|
parseCallback: TimePickerParseCallback;
|
|
@@ -68,6 +69,8 @@ export declare class TimePickerComponent extends BaseComponent implements ITimeP
|
|
|
68
69
|
step: number;
|
|
69
70
|
allowInput: boolean;
|
|
70
71
|
showNow: boolean;
|
|
72
|
+
/** Whether or not to display hour options in dropdown */
|
|
73
|
+
showHourOptions: boolean;
|
|
71
74
|
customOptions: ITimePickerOption[];
|
|
72
75
|
validationCallback: TimePickerValidationCallback;
|
|
73
76
|
parseCallback: TimePickerParseCallback;
|
|
@@ -45,6 +45,7 @@ let TimePickerComponent = class TimePickerComponent extends BaseComponent {
|
|
|
45
45
|
TIME_PICKER_CONSTANTS.attributes.STEP,
|
|
46
46
|
TIME_PICKER_CONSTANTS.attributes.ALLOW_INPUT,
|
|
47
47
|
TIME_PICKER_CONSTANTS.attributes.SHOW_NOW,
|
|
48
|
+
TIME_PICKER_CONSTANTS.attributes.SHOW_HOUR_OPTIONS,
|
|
48
49
|
TIME_PICKER_CONSTANTS.attributes.DISABLED,
|
|
49
50
|
TIME_PICKER_CONSTANTS.attributes.POPUP_CLASSES,
|
|
50
51
|
TIME_PICKER_CONSTANTS.attributes.ALLOW_DROPDOWN
|
|
@@ -87,6 +88,9 @@ let TimePickerComponent = class TimePickerComponent extends BaseComponent {
|
|
|
87
88
|
case TIME_PICKER_CONSTANTS.attributes.SHOW_NOW:
|
|
88
89
|
this.showNow = coerceBoolean(newValue);
|
|
89
90
|
break;
|
|
91
|
+
case TIME_PICKER_CONSTANTS.attributes.SHOW_HOUR_OPTIONS:
|
|
92
|
+
this.showHourOptions = coerceBoolean(newValue);
|
|
93
|
+
break;
|
|
90
94
|
case TIME_PICKER_CONSTANTS.attributes.MIN:
|
|
91
95
|
this.min = newValue;
|
|
92
96
|
break;
|
|
@@ -156,6 +160,9 @@ __decorate([
|
|
|
156
160
|
__decorate([
|
|
157
161
|
FoundationProperty()
|
|
158
162
|
], TimePickerComponent.prototype, "showNow", void 0);
|
|
163
|
+
__decorate([
|
|
164
|
+
FoundationProperty()
|
|
165
|
+
], TimePickerComponent.prototype, "showHourOptions", void 0);
|
|
159
166
|
__decorate([
|
|
160
167
|
FoundationProperty()
|
|
161
168
|
], TimePickerComponent.prototype, "customOptions", void 0);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tylertech/forge",
|
|
3
3
|
"description": "Forge Web Components library",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.9.0",
|
|
5
5
|
"author": "Tyler Technologies, Inc.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"repository": {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"typings": "esm/index.d.ts",
|
|
14
14
|
"sideEffects": false,
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@tylertech/forge-core": "^2.
|
|
16
|
+
"@tylertech/forge-core": "^2.1.0",
|
|
17
17
|
"@tylertech/tyler-icons": "^1.12.0",
|
|
18
18
|
"imask": "^6.4.2",
|
|
19
19
|
"material-components-web": "^14.0.0",
|
|
@@ -167,11 +167,11 @@
|
|
|
167
167
|
|
|
168
168
|
// Default
|
|
169
169
|
@if $layout-state == default or $layout-state == shape-rounded {
|
|
170
|
-
--forge-chip-height: #{map.get(variables.$member, height, default)};
|
|
170
|
+
--forge-chip-min-height: #{map.get(variables.$member, min-height, default)};
|
|
171
171
|
}
|
|
172
172
|
// Dense
|
|
173
173
|
@else if $layout-state == dense or $layout-state == shape-rounded-dense {
|
|
174
|
-
--forge-chip-height: #{map.get(variables.$member, height, dense)};
|
|
174
|
+
--forge-chip-min-height: #{map.get(variables.$member, min-height, dense)};
|
|
175
175
|
}
|
|
176
176
|
// Roomy uses the default chip height
|
|
177
177
|
@include field-utils.error-layout-state(member-height, $layout-state);
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
@mixin input {
|
|
126
126
|
// Base
|
|
127
127
|
// chip-field input should have no padding, so we exclude padding from the base.
|
|
128
|
-
@include field-selector.input('::slotted(input)', $exclude: (padding, padding-top, padding-right, padding-bottom, padding-left));
|
|
128
|
+
@include field-selector.input('::slotted(input)', $exclude: (padding, padding-top, padding-right, padding-bottom, padding-left), $component-name: 'forge-chip-field');
|
|
129
129
|
// Core
|
|
130
130
|
::slotted(input) {
|
|
131
131
|
@include base.input-core;
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
@include dense;
|
|
139
139
|
|
|
140
140
|
&.forge-chip--field {
|
|
141
|
-
@include theme.css-custom-property(height, --forge-chip-height,
|
|
141
|
+
@include theme.css-custom-property(min-height, --forge-chip-min-height, variables.$dense-field-min-height);
|
|
142
142
|
padding: 0;
|
|
143
143
|
margin: 0;
|
|
144
144
|
display: flex;
|
|
@@ -192,7 +192,8 @@
|
|
|
192
192
|
@include button-mixins.outlined;
|
|
193
193
|
@include mdc-chip-theme.shape-radius(50%);
|
|
194
194
|
@include theme.css-custom-property(width, --forge-chip-width, auto);
|
|
195
|
-
@include theme.css-custom-property(height, --forge-chip-height,
|
|
195
|
+
@include theme.css-custom-property(height, --forge-chip-height, auto);
|
|
196
|
+
@include theme.css-custom-property(min-height, --forge-chip-min-height, variables.$min-height);
|
|
196
197
|
|
|
197
198
|
box-sizing: border-box;
|
|
198
199
|
transition: mdc-animation.enter(background-color, 150ms);
|
|
@@ -273,5 +274,5 @@
|
|
|
273
274
|
}
|
|
274
275
|
|
|
275
276
|
@mixin dense() {
|
|
276
|
-
@include theme.css-custom-property(height, --forge-chip-height, variables.$dense-height);
|
|
277
|
+
@include theme.css-custom-property(min-height, --forge-chip-min-height, variables.$dense-min-height);
|
|
277
278
|
}
|
package/styles/field/_base.scss
CHANGED
|
@@ -380,18 +380,30 @@
|
|
|
380
380
|
@include utils.error-theme-state(input-color, $theme-state);
|
|
381
381
|
}
|
|
382
382
|
|
|
383
|
-
@mixin input-font-size($layout-state) {
|
|
383
|
+
@mixin input-font-size($layout-state, $custom-prop-font-size) {
|
|
384
384
|
// Default
|
|
385
385
|
@if $layout-state == default or $layout-state == shape-rounded {
|
|
386
|
-
|
|
386
|
+
@include theme.css-custom-property(
|
|
387
|
+
font-size,
|
|
388
|
+
$custom-prop-font-size,
|
|
389
|
+
map.get(variables.$input, font-size, default)
|
|
390
|
+
);
|
|
387
391
|
}
|
|
388
392
|
// Roomy
|
|
389
393
|
@else if $layout-state == roomy or $layout-state == shape-rounded-roomy {
|
|
390
|
-
|
|
394
|
+
@include theme.css-custom-property(
|
|
395
|
+
font-size,
|
|
396
|
+
$custom-prop-font-size,
|
|
397
|
+
map.get(variables.$input, font-size, roomy)
|
|
398
|
+
);
|
|
391
399
|
}
|
|
392
400
|
// Dense
|
|
393
401
|
@else if $layout-state == dense or $layout-state == shape-rounded-dense {
|
|
394
|
-
|
|
402
|
+
@include theme.css-custom-property(
|
|
403
|
+
font-size,
|
|
404
|
+
$custom-prop-font-size,
|
|
405
|
+
map.get(variables.$input, font-size, dense)
|
|
406
|
+
);
|
|
395
407
|
}
|
|
396
408
|
@include utils.error-layout-state(input-font-size, $layout-state);
|
|
397
409
|
}
|
|
@@ -272,7 +272,7 @@
|
|
|
272
272
|
}
|
|
273
273
|
}
|
|
274
274
|
|
|
275
|
-
@mixin input($input-selector: '::slotted(input)', $exclude: ()) {
|
|
275
|
+
@mixin input($input-selector: '::slotted(input)', $exclude: (), $component-name: 'forge-field') {
|
|
276
276
|
// Core
|
|
277
277
|
@if list.index($exclude, core) == null {
|
|
278
278
|
#{$input-selector} {
|
|
@@ -296,17 +296,17 @@
|
|
|
296
296
|
@if list.index($exclude, font-size) == null {
|
|
297
297
|
&:not(.forge-field--dense):not(.forge-field--roomy) {
|
|
298
298
|
#{$input-selector} {
|
|
299
|
-
@include base.input-font-size(default);
|
|
299
|
+
@include base.input-font-size(default, --#{$component-name}-font-size);
|
|
300
300
|
}
|
|
301
301
|
}
|
|
302
302
|
&--roomy:not(.forge-field--dense) {
|
|
303
303
|
#{$input-selector} {
|
|
304
|
-
@include base.input-font-size(roomy);
|
|
304
|
+
@include base.input-font-size(roomy, --#{$component-name}-font-size);
|
|
305
305
|
}
|
|
306
306
|
}
|
|
307
307
|
&--dense:not(.forge-field--roomy) {
|
|
308
308
|
#{$input-selector} {
|
|
309
|
-
@include base.input-font-size(dense);
|
|
309
|
+
@include base.input-font-size(dense, --#{$component-name}-font-size);
|
|
310
310
|
}
|
|
311
311
|
}
|
|
312
312
|
}
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
// Field Input Styles
|
|
24
|
-
@include field-selector.input('.forge-select__selected-text', $exclude: (core, padding-right));
|
|
24
|
+
@include field-selector.input('.forge-select__selected-text', $exclude: (core, padding-right), $component-name: 'forge-select');
|
|
25
25
|
|
|
26
26
|
// Line Height
|
|
27
27
|
&:not(.forge-field--label) {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use '../../theme/theme';
|
|
7
|
+
|
|
8
|
+
@mixin core-styles() {
|
|
9
|
+
.forge-split-view {
|
|
10
|
+
@include base;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
@mixin horizontal-styles() {
|
|
15
|
+
.forge-split-view {
|
|
16
|
+
@include base-horizontal;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@mixin vertical-styles() {
|
|
21
|
+
.forge-split-view {
|
|
22
|
+
@include base-vertical;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@mixin host() {
|
|
27
|
+
--forge-split-view-handle-width: 8px;
|
|
28
|
+
|
|
29
|
+
display: block;
|
|
30
|
+
height: 100%;
|
|
31
|
+
width: 100%;
|
|
32
|
+
overflow: hidden;
|
|
33
|
+
contain: paint size;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@mixin base() {
|
|
37
|
+
display: flex;
|
|
38
|
+
width: 100%;
|
|
39
|
+
height: 100%;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
@mixin base-horizontal() {
|
|
43
|
+
flex-direction: row;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@mixin base-vertical() {
|
|
47
|
+
flex-direction: column;
|
|
48
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use './mixins';
|
|
7
|
+
@use '../../ripple/forge-ripple.scss';
|
|
8
|
+
|
|
9
|
+
@include mixins.core-styles;
|
|
10
|
+
|
|
11
|
+
:host {
|
|
12
|
+
@include mixins.host;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
:host([hidden]) {
|
|
16
|
+
display: none;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
:host([orientation=horizontal]) {
|
|
20
|
+
@include mixins.horizontal-styles;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
:host([orientation=vertical]) {
|
|
24
|
+
@include mixins.vertical-styles;
|
|
25
|
+
}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use '@material/animation/variables' as mdc-animation-variables;
|
|
7
|
+
@use './variables';
|
|
8
|
+
@use '../../theme/theme';
|
|
9
|
+
|
|
10
|
+
@mixin core-styles() {
|
|
11
|
+
.forge-split-view-panel {
|
|
12
|
+
@include base;
|
|
13
|
+
|
|
14
|
+
&__handle {
|
|
15
|
+
@include handle;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&__content {
|
|
19
|
+
@include content;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
&--closed {
|
|
23
|
+
@include closed;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&--disabled {
|
|
27
|
+
// Use an id selector to increase specificity
|
|
28
|
+
#handle {
|
|
29
|
+
@include handle-disabled;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.forge-split-view-panel__icon {
|
|
33
|
+
@include icon-disabled;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
@mixin horizontal-styles() {
|
|
40
|
+
.forge-split-view-panel[orientation=horizontal] {
|
|
41
|
+
@include base-horizontal;
|
|
42
|
+
|
|
43
|
+
.forge-split-view-panel {
|
|
44
|
+
&__handle {
|
|
45
|
+
@include handle-orientation(horizontal);
|
|
46
|
+
@include cursor(horizontal);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
&.forge-split-view-panel--closing {
|
|
51
|
+
&[resizable=end] {
|
|
52
|
+
@include closing($direction: left);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
&[resizable=start] {
|
|
56
|
+
@include closing($direction: right);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
&.forge-split-view-panel--opening {
|
|
61
|
+
&[resizable=end] {
|
|
62
|
+
@include opening($direction: left);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
&[resizable=start] {
|
|
66
|
+
@include opening($direction: right);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
@mixin vertical-styles() {
|
|
73
|
+
.forge-split-view-panel[orientation=vertical] {
|
|
74
|
+
@include base-vertical;
|
|
75
|
+
|
|
76
|
+
.forge-split-view-panel {
|
|
77
|
+
&__handle {
|
|
78
|
+
@include handle-orientation(vertical);
|
|
79
|
+
@include cursor(vertical);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
&.forge-split-view-panel--closing {
|
|
84
|
+
&[resizable=end] {
|
|
85
|
+
@include closing($direction: top);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
&[resizable=start] {
|
|
89
|
+
@include closing($direction: bottom);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
&.forge-split-view-panel--opening {
|
|
94
|
+
&[resizable=end] {
|
|
95
|
+
@include opening($direction: top);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
&[resizable=start] {
|
|
99
|
+
@include opening($direction: bottom);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
@mixin static-styles() {
|
|
106
|
+
@include host-static;
|
|
107
|
+
|
|
108
|
+
.forge-split-view-panel {
|
|
109
|
+
@include base-static;
|
|
110
|
+
|
|
111
|
+
&__handle {
|
|
112
|
+
@include handle-static;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
@mixin host() {
|
|
118
|
+
// There is no fallback value for the animating layer
|
|
119
|
+
@include theme.css-custom-property(z-index, --forge-split-view-animating-layer, $important: true);
|
|
120
|
+
|
|
121
|
+
display: block;
|
|
122
|
+
position: relative;
|
|
123
|
+
height: 100%;
|
|
124
|
+
width: 100%;
|
|
125
|
+
flex: 0;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
@mixin host-static() {
|
|
129
|
+
flex: 1;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
@mixin base() {
|
|
133
|
+
display: flex;
|
|
134
|
+
width: 100%;
|
|
135
|
+
height: 100%;
|
|
136
|
+
overflow: hidden;
|
|
137
|
+
contain: paint size;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
@mixin base-horizontal() {
|
|
141
|
+
@include theme.css-custom-property(min-width, --forge-split-view-handle-width, variables.$handle-width);
|
|
142
|
+
|
|
143
|
+
width: calc(var(--forge-split-view-panel-size, unset) + var(--forge-split-view-handle-width, variables.$handle-width));
|
|
144
|
+
flex-direction: row;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
@mixin base-vertical() {
|
|
148
|
+
@include theme.css-custom-property(min-height, --forge-split-view-handle-width, variables.$handle-width);
|
|
149
|
+
|
|
150
|
+
height: calc(var(--forge-split-view-panel-size, unset) + var(--forge-split-view-handle-width, variables.$handle-width));
|
|
151
|
+
flex-direction: column;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
@mixin base-static() {
|
|
155
|
+
width: 100%;
|
|
156
|
+
height: 100%;
|
|
157
|
+
min-width: 0;
|
|
158
|
+
min-height: 0;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
@mixin handle() {
|
|
162
|
+
@include theme.property(color, text-secondary-on-light);
|
|
163
|
+
@include theme.property(background-color, border-color);
|
|
164
|
+
|
|
165
|
+
display: flex;
|
|
166
|
+
flex-shrink: 0;
|
|
167
|
+
justify-content: center;
|
|
168
|
+
align-items: center;
|
|
169
|
+
outline: none;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
@mixin handle-orientation($orientation: horizontal) {
|
|
173
|
+
@if $orientation == horizontal {
|
|
174
|
+
@include theme.css-custom-property(width, --forge-split-view-handle-width, variables.$handle-width);
|
|
175
|
+
} @else {
|
|
176
|
+
@include theme.css-custom-property(height, --forge-split-view-handle-width, variables.$handle-width);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
@mixin handle-disabled() {
|
|
181
|
+
pointer-events: none;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
@mixin handle-static() {
|
|
185
|
+
display: none;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
@mixin icon-disabled() {
|
|
189
|
+
display: none;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
@mixin content() {
|
|
193
|
+
flex: 1;
|
|
194
|
+
overflow: hidden;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
@mixin cursor($orientation: horizontal) {
|
|
198
|
+
// There is no fallback value for the panel cursor
|
|
199
|
+
@include theme.css-custom-property(cursor, --forge-split-view-panel-cursor);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
@mixin closed() {
|
|
203
|
+
display: none;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
@mixin closing($direction: right) {
|
|
207
|
+
@include closing-animation($direction);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
@mixin opening($direction: right) {
|
|
211
|
+
@include closing-animation($direction);
|
|
212
|
+
|
|
213
|
+
animation-direction: reverse;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
@mixin closing-animation($direction: right) {
|
|
217
|
+
@include animating-position($direction);
|
|
218
|
+
|
|
219
|
+
$animation-name: unique-id();
|
|
220
|
+
|
|
221
|
+
animation-name: $animation-name;
|
|
222
|
+
animation-duration: variables.$animation-duration;
|
|
223
|
+
animation-timing-function: mdc-animation-variables.$standard-curve-timing-function;
|
|
224
|
+
|
|
225
|
+
@keyframes #{$animation-name} {
|
|
226
|
+
from {
|
|
227
|
+
transform: none;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
to {
|
|
231
|
+
@if ($direction == right) {
|
|
232
|
+
transform: translateX(100%);
|
|
233
|
+
} @else if ($direction == left) {
|
|
234
|
+
transform: translateX(-100%);
|
|
235
|
+
} @else if ($direction == top) {
|
|
236
|
+
transform: translateY(-100%);
|
|
237
|
+
} @else {
|
|
238
|
+
transform: translateY(100%);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
@mixin animating-position($direction: right) {
|
|
245
|
+
position: absolute;
|
|
246
|
+
|
|
247
|
+
@if ($direction == right) {
|
|
248
|
+
top: 0;
|
|
249
|
+
right: 0;
|
|
250
|
+
} @else if ($direction == left) {
|
|
251
|
+
top: 0;
|
|
252
|
+
left: 0;
|
|
253
|
+
} @else if ($direction == top) {
|
|
254
|
+
top: 0;
|
|
255
|
+
left: 0;
|
|
256
|
+
} @else {
|
|
257
|
+
bottom: 0;
|
|
258
|
+
left: 0;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use './mixins';
|
|
7
|
+
@use '../../ripple/forge-ripple.scss';
|
|
8
|
+
|
|
9
|
+
@include mixins.core-styles;
|
|
10
|
+
@include mixins.horizontal-styles;
|
|
11
|
+
@include mixins.vertical-styles;
|
|
12
|
+
|
|
13
|
+
:host {
|
|
14
|
+
@include mixins.host;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
:host([hidden]) {
|
|
18
|
+
display: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
:host(:not([resizable=start], [resizable=end])) {
|
|
22
|
+
@include mixins.static-styles;
|
|
23
|
+
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/app-bar/profile-button/app-bar-profile-button-constants.ts", "../../src/app-bar/profile-button/app-bar-profile-button-adapter.ts", "../../src/app-bar/profile-button/app-bar-profile-button-foundation.ts", "../../src/app-bar/profile-button/app-bar-profile-button.ts", "../../src/app-bar/profile-button/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}app-bar-profile-button`;\n\nconst attributes = {\n FULL_NAME: 'full-name',\n EMAIL: 'email',\n AVATAR_IMAGE_URL: 'avatar-image-url',\n AVATAR_LETTER_COUNT: 'avatar-letter-count',\n AVATAR_TEXT: 'avatar-text',\n SIGN_OUT_BUTTON: 'sign-out-button',\n PROFILE_BUTTON: 'profile-button',\n OPEN: 'open'\n};\n\nconst selectors = {\n BUTTON: 'button'\n};\n\nexport const APP_BAR_PROFILE_BUTTON_CONSTANTS = {\n elementName,\n attributes,\n selectors\n};\n\nexport interface IAppBarProfileCardConfig {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n avatarText: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n}\n\nexport type AppBarProfileButtonProfileCardBuilder = () => HTMLElement;\n", "import { getLightElement, notChildEventListener, getActiveElement } from '@tylertech/forge-core';\nimport { AVATAR_CONSTANTS, IAvatarComponent } from '../../avatar';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IPopupComponent, PopupAnimationType, PopupPlacement, POPUP_CONSTANTS } from '../../popup';\nimport { IProfileCardComponent, PROFILE_CARD_CONSTANTS } from '../../profile-card';\nimport { IAppBarProfileButtonComponent } from './app-bar-profile-button';\nimport { IAppBarProfileCardConfig, APP_BAR_PROFILE_BUTTON_CONSTANTS } from './app-bar-profile-button-constants';\n\nexport interface IAppBarProfileButtonAdapter extends IBaseAdapter {\n initialize(): void;\n setClickListener(listener: (evt: MouseEvent) => void): void;\n removeClickListener(listener: (evt: MouseEvent) => void): void;\n openPopup(profileCardConfig: IAppBarProfileCardConfig, dismissListener: () => void, profileListener: () => void, signOutListener: () => void, profileCardContent?: HTMLElement): () => void;\n closePopup(): void;\n requestFocus(): void;\n setAvatarText(value: string): void;\n setAvatarLetterCount(value: number): void;\n setAvatarImageUrl(value: string): void;\n}\n\nexport class AppBarProfileButtonAdapter extends BaseAdapter<IAppBarProfileButtonComponent> implements IAppBarProfileButtonAdapter {\n private _avatarElement: IAvatarComponent;\n private _popupElement: IPopupComponent;\n private _buttonElement: HTMLButtonElement;\n\n constructor(component: IAppBarProfileButtonComponent) {\n super(component);\n }\n\n public initialize(): void {\n this._avatarElement = getLightElement(this._component, AVATAR_CONSTANTS.elementName) as IAvatarComponent;\n this._buttonElement = getLightElement(this._component, APP_BAR_PROFILE_BUTTON_CONSTANTS.selectors.BUTTON) as HTMLButtonElement;\n }\n\n public setClickListener(listener: (evt: MouseEvent) => void): void {\n this._component.addEventListener('click', listener);\n }\n\n public removeClickListener(listener: (evt: MouseEvent) => void): void {\n this._component.removeEventListener('click', listener);\n }\n\n public openPopup(profileCardConfig: IAppBarProfileCardConfig, dismissListener: () => void, profileListener: () => void, signOutListener: () => void, profileCardContent?: HTMLElement): () => void {\n const profileCardElement = document.createElement(PROFILE_CARD_CONSTANTS.elementName) as IProfileCardComponent;\n profileCardElement.fullName = profileCardConfig.fullName;\n profileCardElement.email = profileCardConfig.email;\n profileCardElement.signOut = profileCardConfig.signOut;\n profileCardElement.profile = profileCardConfig.profile;\n profileCardElement.avatarText = profileCardConfig.avatarText;\n profileCardElement.avatarImageUrl = profileCardConfig.avatarImageUrl;\n profileCardElement.avatarLetterCount = profileCardConfig.avatarLetterCount;\n profileCardElement.addEventListener(PROFILE_CARD_CONSTANTS.events.PROFILE, () => profileListener());\n profileCardElement.addEventListener(PROFILE_CARD_CONSTANTS.events.SIGN_OUT, () => signOutListener());\n if (profileCardContent) {\n profileCardElement.appendChild(profileCardContent);\n }\n\n this._popupElement = document.createElement(POPUP_CONSTANTS.elementName) as IPopupComponent;\n this._popupElement.targetElement = this._component;\n this._popupElement.placement = 'bottom-end';\n this._popupElement.animationType = PopupAnimationType.Menu;\n this._popupElement.appendChild(profileCardElement);\n this._popupElement.open = true;\n\n return notChildEventListener(this._popupElement, activeElement => {\n if (!this._popupElement) {\n return;\n }\n if (!this._component.contains(getActiveElement())) {\n dismissListener();\n }\n }, true);\n }\n\n public closePopup(): void {\n if (this._popupElement) {\n this._popupElement.open = false;\n }\n }\n\n public requestFocus(): void {\n this._buttonElement.focus();\n }\n\n public setAvatarText(value: string): void {\n this._avatarElement.text = value;\n }\n\n public setAvatarLetterCount(value: number): void {\n this._avatarElement.letterCount = value;\n }\n\n public setAvatarImageUrl(value: string): void {\n this._avatarElement.imageUrl = value;\n }\n}\n", "import { ICustomElementFoundation, isFunction, Platform, getActiveElement } from '@tylertech/forge-core';\nimport { AVATAR_CONSTANTS } from '../../avatar';\nimport { PROFILE_CARD_CONSTANTS } from '../../profile-card';\nimport { IAppBarProfileButtonAdapter } from './app-bar-profile-button-adapter';\nimport { IAppBarProfileCardConfig, AppBarProfileButtonProfileCardBuilder, APP_BAR_PROFILE_BUTTON_CONSTANTS } from './app-bar-profile-button-constants';\n\nexport interface IAppBarProfileButtonFoundation extends ICustomElementFoundation {\n fullName: string;\n email: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n avatarText: string;\n signOutButton: boolean;\n profileButton: boolean;\n open: boolean;\n profileCardBuilder: AppBarProfileButtonProfileCardBuilder;\n}\n\nexport class AppBarProfileButtonFoundation implements IAppBarProfileButtonFoundation {\n private _fullName: string;\n private _email: string;\n private _avatarImageUrl: string;\n private _avatarLetterCount = AVATAR_CONSTANTS.numbers.DEFAULT_LETTER_COUNT;\n private _avatarText: string;\n private _showSignOutButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_SIGN_OUT_BUTTON;\n private _showProfileButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_PROFILE_BUTTON;\n private _profileCardBuilder: AppBarProfileButtonProfileCardBuilder;\n private _open = false;\n private _isInitialized = false;\n private _clickListener: (evt: MouseEvent) => void;\n private _dismissListener: () => void;\n private _cancelDismissListener: () => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _profileButtonListener: () => void;\n private _signOutButtonListener: () => void;\n\n constructor(private _adapter: IAppBarProfileButtonAdapter) {\n this._clickListener = evt => this._onClick(evt);\n this._dismissListener = () => this._onDimiss();\n this._keydownListener = evt => this._onKeydown(evt);\n this._profileButtonListener = () => this._onProfileButtonClick();\n this._signOutButtonListener = () => this._onSignOutButtonClick();\n }\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.setClickListener(this._clickListener);\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.setAvatarText(this._avatarText);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n if (this._open) {\n this._closeDropdown();\n }\n this._adapter.removeWindowListener('keydown', this._keydownListener);\n this._adapter.removeClickListener(this._clickListener);\n this._isInitialized = false;\n }\n\n private _onClick(evt: MouseEvent): void {\n if (!this._open) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (evt.key === 'Escape' || evt.keyCode === 27) {\n this._closeDropdown();\n this._adapter.requestFocus();\n }\n }\n\n private _onDimiss(): void {\n if (Platform.WEBKIT) {\n window.requestAnimationFrame(() => this._closeDropdown());\n } else {\n this._closeDropdown();\n }\n }\n\n private _onProfileButtonClick(): void {\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.PROFILE);\n this._closeDropdown();\n this._adapter.requestFocus();\n }\n\n private _onSignOutButtonClick(): void {\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.SIGN_OUT);\n this._closeDropdown();\n this._adapter.requestFocus();\n }\n\n private _openDropdown(): void {\n if (this._open) {\n return;\n }\n\n if (isFunction(this._cancelDismissListener)) {\n this._cancelDismissListener();\n }\n const profileCardConfig: IAppBarProfileCardConfig = {\n fullName: this._fullName,\n email: this._email,\n signOut: this._showSignOutButton,\n profile: this._showProfileButton,\n avatarText: this._avatarText,\n avatarImageUrl: this._avatarImageUrl,\n avatarLetterCount: this._avatarLetterCount\n };\n const profileCardContent = this._profileCardBuilder ? this._profileCardBuilder() : undefined;\n this._cancelDismissListener = this._adapter.openPopup(profileCardConfig, this._dismissListener, this._profileButtonListener, this._signOutButtonListener, profileCardContent);\n this._adapter.addWindowListener('keydown', this._keydownListener);\n this._open = true;\n\n // If we aren't showing the sign out or profile buttons then leave focus on our button\n if (!profileCardConfig.signOut && !profileCardConfig.profile) {\n this._adapter.requestFocus();\n }\n }\n\n private _closeDropdown(): void {\n if (!this._open) {\n return;\n }\n if (isFunction(this._cancelDismissListener)) {\n this._cancelDismissListener();\n }\n this._open = false;\n this._adapter.removeWindowListener('keydown', this._keydownListener);\n this._adapter.closePopup();\n }\n\n public get fullName(): string {\n return this._fullName;\n }\n public set fullName(value: string) {\n if (this._fullName !== value) {\n this._fullName = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.FULL_NAME, this._fullName);\n }\n }\n\n public get email(): string {\n return this._email;\n }\n public set email(value: string) {\n if (this._email !== value) {\n this._email = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.EMAIL, this._email);\n }\n }\n\n public get avatarImageUrl(): string {\n return this._avatarImageUrl;\n }\n public set avatarImageUrl(value: string) {\n if (this._avatarImageUrl !== value) {\n this._avatarImageUrl = value;\n if (this._isInitialized) {\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_IMAGE_URL, this._avatarImageUrl);\n }\n }\n }\n\n public get avatarLetterCount(): number {\n return this._avatarLetterCount;\n }\n public set avatarLetterCount(value: number) {\n if (this._avatarLetterCount !== value) {\n this._avatarLetterCount = value;\n if (this._isInitialized) {\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_LETTER_COUNT, this._avatarLetterCount as any);\n }\n }\n }\n\n public get avatarText(): string {\n return this._avatarText;\n }\n public set avatarText(value: string) {\n if (this._avatarText !== value) {\n this._avatarText = value;\n if (this._isInitialized) {\n this._adapter.setAvatarText(this._avatarText);\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_TEXT, this._avatarText);\n }\n }\n }\n\n public get signOutButton(): boolean {\n return this._showSignOutButton;\n }\n public set signOutButton(value: boolean) {\n if (this._showSignOutButton !== value) {\n this._showSignOutButton = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON, this._showSignOutButton as any);\n }\n }\n\n public get profileButton(): boolean {\n return this._showProfileButton;\n }\n public set profileButton(value: boolean) {\n if (this._showProfileButton !== value) {\n this._showProfileButton = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON, this._showProfileButton as any);\n }\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n if (value) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n }\n\n public get profileCardBuilder(): AppBarProfileButtonProfileCardBuilder {\n return this._profileCardBuilder;\n }\n public set profileCardBuilder(fn: AppBarProfileButtonProfileCardBuilder) {\n this._profileCardBuilder = fn;\n }\n}\n", "import { CustomElement, attachLightTemplate, coerceNumber, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { AppBarProfileButtonAdapter } from './app-bar-profile-button-adapter';\nimport { AppBarProfileButtonFoundation } from './app-bar-profile-button-foundation';\nimport { APP_BAR_PROFILE_BUTTON_CONSTANTS, AppBarProfileButtonProfileCardBuilder } from './app-bar-profile-button-constants';\nimport { ProfileCardComponent } from '../../profile-card';\nimport { IconButtonComponent } from '../../icon-button';\nimport { AvatarComponent } from '../../avatar';\nimport { PopupComponent } from '../../popup';\nimport { TooltipComponent } from '../../tooltip';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nconst template = '<template><forge-icon-button><button type=\\\"button\\\" aria-label=\\\"View profile card\\\"><forge-avatar aria-hidden=\\\"true\\\"></forge-avatar></button><forge-tooltip delay=\\\"500\\\" position=\\\"bottom\\\">View profile</forge-tooltip></forge-icon-button></template>';\n\nexport interface IAppBarProfileButtonComponent extends IBaseComponent {\n avatarImageUrl: string;\n avatarLetterCount: number;\n avatarText: string;\n fullName: string;\n email: string;\n signOutButton: boolean;\n profileButton: boolean;\n open: boolean;\n profileCardBuilder: (fn: AppBarProfileButtonProfileCardBuilder) => void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-app-bar-profile-button': IAppBarProfileButtonComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-app-bar-profile-button>` custom element.\n * \n * @tag forge-app-bar-profile-button\n */\n@CustomElement({\n name: APP_BAR_PROFILE_BUTTON_CONSTANTS.elementName,\n dependencies: [\n PopupComponent,\n ProfileCardComponent,\n IconButtonComponent,\n AvatarComponent,\n TooltipComponent\n ]\n})\nexport class AppBarProfileButtonComponent extends BaseComponent implements IAppBarProfileButtonComponent {\n public static get observedAttributes(): string[] {\n return [\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.FULL_NAME,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.EMAIL,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_IMAGE_URL,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_LETTER_COUNT,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_TEXT,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.OPEN\n ];\n }\n\n private _foundation: AppBarProfileButtonFoundation;\n\n constructor() {\n super();\n this._foundation = new AppBarProfileButtonFoundation(new AppBarProfileButtonAdapter(this));\n }\n\n public initializedCallback(): void {\n attachLightTemplate(this, template);\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.FULL_NAME:\n this.fullName = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.EMAIL:\n this.email = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_IMAGE_URL:\n this.avatarImageUrl = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_LETTER_COUNT:\n this.avatarLetterCount = coerceNumber(newValue);\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_TEXT:\n this.avatarText = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON:\n this.signOutButton = coerceBoolean(newValue);\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON:\n this.profileButton = coerceBoolean(newValue);\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public fullName: string;\n\n @FoundationProperty()\n public email: string;\n\n @FoundationProperty()\n public avatarImageUrl: string;\n\n @FoundationProperty()\n public avatarLetterCount: number;\n\n @FoundationProperty()\n public avatarText: string;\n\n @FoundationProperty()\n public signOutButton: boolean;\n\n @FoundationProperty()\n public profileButton: boolean;\n\n @FoundationProperty()\n public open: boolean;\n\n /** Sets the profile card builder callback that will be used to add extra content to the profile card. */\n @FoundationProperty()\n public profileCardBuilder: AppBarProfileButtonProfileCardBuilder;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { AppBarProfileButtonComponent } from './app-bar-profile-button';\n\nexport * from './app-bar-profile-button-adapter';\nexport * from './app-bar-profile-button-constants';\nexport * from './app-bar-profile-button-foundation';\nexport * from './app-bar-profile-button';\n\nexport function defineAppBarProfileButtonComponent(): void {\n defineCustomElement(AppBarProfileButtonComponent);\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|