@wordpress/components 19.6.1-next.a55ed9455a.0 → 19.7.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.
Files changed (179) hide show
  1. package/CHANGELOG.md +31 -1
  2. package/build/base-control/index.js +19 -14
  3. package/build/base-control/index.js.map +1 -1
  4. package/build/base-control/styles/base-control-styles.js +33 -12
  5. package/build/base-control/styles/base-control-styles.js.map +1 -1
  6. package/build/box-control/all-input-control.js +3 -7
  7. package/build/box-control/all-input-control.js.map +1 -1
  8. package/build/box-control/axial-input-controls.js +20 -15
  9. package/build/box-control/axial-input-controls.js.map +1 -1
  10. package/build/box-control/input-controls.js +21 -16
  11. package/build/box-control/input-controls.js.map +1 -1
  12. package/build/box-control/utils.js +25 -11
  13. package/build/box-control/utils.js.map +1 -1
  14. package/build/checkbox-control/index.js +21 -1
  15. package/build/checkbox-control/index.js.map +1 -1
  16. package/build/color-palette/index.js +53 -4
  17. package/build/color-palette/index.js.map +1 -1
  18. package/build/custom-select-control/index.js +8 -3
  19. package/build/custom-select-control/index.js.map +1 -1
  20. package/build/divider/styles.js +28 -16
  21. package/build/divider/styles.js.map +1 -1
  22. package/build/focal-point-picker/controls.js +2 -3
  23. package/build/focal-point-picker/controls.js.map +1 -1
  24. package/build/form-file-upload/index.js +4 -1
  25. package/build/form-file-upload/index.js.map +1 -1
  26. package/build/input-control/input-field.js +21 -14
  27. package/build/input-control/input-field.js.map +1 -1
  28. package/build/input-control/reducer/actions.js +1 -3
  29. package/build/input-control/reducer/actions.js.map +1 -1
  30. package/build/input-control/reducer/reducer.js +1 -43
  31. package/build/input-control/reducer/reducer.js.map +1 -1
  32. package/build/number-control/index.js +15 -10
  33. package/build/number-control/index.js.map +1 -1
  34. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  35. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  36. package/build/toggle-group-control/toggle-group-control-option/component.js +1 -4
  37. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  38. package/build/toggle-group-control/toggle-group-control-option/styles.js +12 -19
  39. package/build/toggle-group-control/toggle-group-control-option/styles.js.map +1 -1
  40. package/build/tree-grid/index.js +4 -1
  41. package/build/tree-grid/index.js.map +1 -1
  42. package/build/unit-control/index.js +49 -27
  43. package/build/unit-control/index.js.map +1 -1
  44. package/build/unit-control/unit-select-control.js +2 -4
  45. package/build/unit-control/unit-select-control.js.map +1 -1
  46. package/build-module/base-control/index.js +19 -14
  47. package/build-module/base-control/index.js.map +1 -1
  48. package/build-module/base-control/styles/base-control-styles.js +34 -6
  49. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  50. package/build-module/box-control/all-input-control.js +4 -8
  51. package/build-module/box-control/all-input-control.js.map +1 -1
  52. package/build-module/box-control/axial-input-controls.js +18 -14
  53. package/build-module/box-control/axial-input-controls.js.map +1 -1
  54. package/build-module/box-control/input-controls.js +18 -14
  55. package/build-module/box-control/input-controls.js.map +1 -1
  56. package/build-module/box-control/utils.js +25 -11
  57. package/build-module/box-control/utils.js.map +1 -1
  58. package/build-module/checkbox-control/index.js +24 -3
  59. package/build-module/checkbox-control/index.js.map +1 -1
  60. package/build-module/color-palette/index.js +52 -4
  61. package/build-module/color-palette/index.js.map +1 -1
  62. package/build-module/custom-select-control/index.js +8 -3
  63. package/build-module/custom-select-control/index.js.map +1 -1
  64. package/build-module/divider/styles.js +29 -10
  65. package/build-module/divider/styles.js.map +1 -1
  66. package/build-module/focal-point-picker/controls.js +2 -3
  67. package/build-module/focal-point-picker/controls.js.map +1 -1
  68. package/build-module/form-file-upload/index.js +4 -1
  69. package/build-module/form-file-upload/index.js.map +1 -1
  70. package/build-module/input-control/input-field.js +21 -13
  71. package/build-module/input-control/input-field.js.map +1 -1
  72. package/build-module/input-control/reducer/actions.js +0 -1
  73. package/build-module/input-control/reducer/actions.js.map +1 -1
  74. package/build-module/input-control/reducer/reducer.js +2 -39
  75. package/build-module/input-control/reducer/reducer.js.map +1 -1
  76. package/build-module/number-control/index.js +15 -9
  77. package/build-module/number-control/index.js.map +1 -1
  78. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  79. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  80. package/build-module/toggle-group-control/toggle-group-control-option/component.js +1 -4
  81. package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  82. package/build-module/toggle-group-control/toggle-group-control-option/styles.js +11 -17
  83. package/build-module/toggle-group-control/toggle-group-control-option/styles.js.map +1 -1
  84. package/build-module/tree-grid/index.js +4 -1
  85. package/build-module/tree-grid/index.js.map +1 -1
  86. package/build-module/unit-control/index.js +47 -25
  87. package/build-module/unit-control/index.js.map +1 -1
  88. package/build-module/unit-control/unit-select-control.js +2 -3
  89. package/build-module/unit-control/unit-select-control.js.map +1 -1
  90. package/build-style/style-rtl.css +29 -181
  91. package/build-style/style.css +29 -181
  92. package/build-types/base-control/index.d.ts +23 -18
  93. package/build-types/base-control/index.d.ts.map +1 -1
  94. package/build-types/base-control/styles/base-control-styles.d.ts +4 -0
  95. package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
  96. package/build-types/card/card-divider/hook.d.ts +1 -1
  97. package/build-types/color-palette/index.d.ts.map +1 -1
  98. package/build-types/color-picker/styles.d.ts +1 -1
  99. package/build-types/divider/stories/index.d.ts +1 -0
  100. package/build-types/divider/stories/index.d.ts.map +1 -1
  101. package/build-types/divider/styles.d.ts.map +1 -1
  102. package/build-types/divider/types.d.ts +8 -1
  103. package/build-types/divider/types.d.ts.map +1 -1
  104. package/build-types/input-control/input-field.d.ts.map +1 -1
  105. package/build-types/input-control/reducer/actions.d.ts +1 -3
  106. package/build-types/input-control/reducer/actions.d.ts.map +1 -1
  107. package/build-types/input-control/reducer/reducer.d.ts +3 -9
  108. package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
  109. package/build-types/input-control/types.d.ts +2 -2
  110. package/build-types/input-control/types.d.ts.map +1 -1
  111. package/build-types/number-control/index.d.ts +3 -3
  112. package/build-types/number-control/index.d.ts.map +1 -1
  113. package/build-types/range-control/styles/range-control-styles.d.ts +1 -1
  114. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts.map +1 -1
  115. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  116. package/build-types/toggle-group-control/toggle-group-control-option/styles.d.ts +0 -4
  117. package/build-types/toggle-group-control/toggle-group-control-option/styles.d.ts.map +1 -1
  118. package/build-types/unit-control/index.d.ts +7 -4
  119. package/build-types/unit-control/index.d.ts.map +1 -1
  120. package/build-types/unit-control/stories/index.d.ts +33 -0
  121. package/build-types/unit-control/stories/index.d.ts.map +1 -0
  122. package/build-types/unit-control/styles/unit-control-styles.d.ts +1 -1
  123. package/build-types/unit-control/types.d.ts +23 -6
  124. package/build-types/unit-control/types.d.ts.map +1 -1
  125. package/build-types/unit-control/unit-select-control.d.ts.map +1 -1
  126. package/package.json +17 -17
  127. package/src/base-control/README.md +9 -1
  128. package/src/base-control/index.js +20 -13
  129. package/src/base-control/stories/index.js +2 -2
  130. package/src/base-control/styles/base-control-styles.js +23 -1
  131. package/src/box-control/all-input-control.js +2 -10
  132. package/src/box-control/axial-input-controls.js +32 -21
  133. package/src/box-control/input-controls.js +30 -19
  134. package/src/box-control/utils.js +29 -12
  135. package/src/checkbox-control/index.js +34 -3
  136. package/src/checkbox-control/stories/index.js +44 -0
  137. package/src/checkbox-control/style.scss +4 -2
  138. package/src/color-palette/index.js +73 -8
  139. package/src/color-palette/stories/index.js +62 -26
  140. package/src/color-palette/style.scss +11 -3
  141. package/src/color-palette/test/__snapshots__/index.js.snap +662 -12
  142. package/src/color-palette/test/index.js +1 -1
  143. package/src/custom-select-control/index.js +8 -2
  144. package/src/custom-select-control/stories/index.js +77 -74
  145. package/src/custom-select-control/style.scss +18 -3
  146. package/src/divider/stories/index.tsx +26 -23
  147. package/src/divider/styles.ts +9 -0
  148. package/src/divider/types.ts +11 -1
  149. package/src/focal-point-picker/controls.js +2 -3
  150. package/src/font-size-picker/test/index.js +0 -2
  151. package/src/form-file-upload/README.md +18 -0
  152. package/src/form-file-upload/index.js +3 -0
  153. package/src/form-file-upload/test/index.js +73 -11
  154. package/src/input-control/input-field.tsx +23 -12
  155. package/src/input-control/reducer/actions.ts +1 -7
  156. package/src/input-control/reducer/reducer.ts +0 -29
  157. package/src/input-control/types.ts +2 -1
  158. package/src/mobile/image/style.native.scss +1 -0
  159. package/src/number-control/README.md +14 -0
  160. package/src/number-control/index.js +13 -12
  161. package/src/number-control/stories/index.js +14 -7
  162. package/src/number-control/test/index.js +79 -1
  163. package/src/range-control/stories/index.js +91 -119
  164. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -0
  165. package/src/toggle-group-control/test/__snapshots__/index.js.snap +0 -27
  166. package/src/toggle-group-control/toggle-group-control-option/component.tsx +1 -4
  167. package/src/toggle-group-control/toggle-group-control-option/styles.ts +0 -12
  168. package/src/toolbar-group/style.scss +0 -73
  169. package/src/tree-grid/README.md +1 -1
  170. package/src/tree-grid/index.js +4 -0
  171. package/src/tree-grid/test/index.js +61 -17
  172. package/src/unit-control/README.md +1 -3
  173. package/src/unit-control/index.tsx +59 -30
  174. package/src/unit-control/stories/index.tsx +170 -0
  175. package/src/unit-control/test/index.js +143 -100
  176. package/src/unit-control/types.ts +60 -41
  177. package/src/unit-control/unit-select-control.tsx +2 -3
  178. package/tsconfig.tsbuildinfo +1 -1
  179. package/src/unit-control/stories/index.js +0 -127
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/divider/styles.ts"],"names":["css","space","rtl","MARGIN_DIRECTIONS","vertical","start","end","horizontal","renderMargin","orientation","margin","marginStart","marginEnd","renderBorder","renderSize","height","width","DividerView"],"mappings":";;AAAA;AACA;AACA;AAEA,SAASA,GAAT,QAAoB,gBAApB;AAEA;AACA;AACA;;AACA,SAASC,KAAT,QAAsB,mBAAtB;AACA,SAASC,GAAT,QAAoB,UAApB;AAGA,MAAMC,iBAGL,GAAG;AACHC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE,YADE;AAETC,IAAAA,GAAG,EAAE;AAFI,GADP;AAKHC,EAAAA,UAAU,EAAE;AACXF,IAAAA,KAAK,EAAE,WADI;AAEXC,IAAAA,GAAG,EAAE;AAFM;AALT,CAHJ,C,CAcA;AACA;AACA;;AACA,MAAME,YAAY,GAAG;AAAA,MAAE;AACtB,wBAAoBC,WAAW,GAAG,YADZ;AAEtBC,IAAAA,MAFsB;AAGtBC,IAAAA,WAHsB;AAItBC,IAAAA;AAJsB,GAAF;AAAA,sBAMpBZ,GAAG,CACFE,GAAG,CAAE;AACJ,KAAEC,iBAAiB,CAAEM,WAAF,CAAjB,CAAiCJ,KAAnC,GAA4CJ,KAAK,CAChDU,WADgD,aAChDA,WADgD,cAChDA,WADgD,GACjCD,MADiC,CAD7C;AAIJ,KAAEP,iBAAiB,CAAEM,WAAF,CAAjB,CAAiCH,GAAnC,GAA0CL,KAAK,CAC9CW,SAD8C,aAC9CA,SAD8C,cAC9CA,SAD8C,GACjCF,MADiC;AAJ3C,GAAF,CAAH,EADE,kqFANiB;AAAA,CAArB;;AAiBA,MAAMG,YAAY,GAAG,SAEP;AAAA,MAFS;AACtB,wBAAoBJ,WAAW,GAAG;AADZ,GAET;AACb,sBAAOT,GAAG,CAAE;AACX,KAAES,WAAW,KAAK,UAAhB,GACC,aADD,GAEC,cAFH,GAEqB;AAHV,GAAF,kqFAAV;AAKA,CARD;;AAUA,MAAMK,UAAU,GAAG;AAAA,MAAE;AACpB,wBAAoBL,WAAW,GAAG;AADd,GAAF;AAAA,sBAGlBT,GAAG,CAAE;AACJe,IAAAA,MAAM,EAAEN,WAAW,KAAK,UAAhB,GAA6B,MAA7B,GAAsC,CAD1C;AAEJO,IAAAA,KAAK,EAAEP,WAAW,KAAK,UAAhB,GAA6B,CAA7B,GAAiC;AAFpC,GAAF,gqFAHe;AAAA,CAAnB;;AAQA,OAAO,MAAMQ,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA,yBAIpBJ,YAJoB,OAKpBC,UALoB,OAMpBN,YANoB,ymFAAjB","sourcesContent":["/**\n * External dependencies\n */\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\n\n/**\n * Internal dependencies\n */\nimport { space } from '../ui/utils/space';\nimport { rtl } from '../utils';\nimport type { Props } from './types';\n\nconst MARGIN_DIRECTIONS: Record<\n\tNonNullable< Props[ 'orientation' ] >,\n\tRecord< 'start' | 'end', string >\n> = {\n\tvertical: {\n\t\tstart: 'marginLeft',\n\t\tend: 'marginRight',\n\t},\n\thorizontal: {\n\t\tstart: 'marginTop',\n\t\tend: 'marginBottom',\n\t},\n};\n\n// Renders the correct margins given the Divider's `orientation` and the writing direction.\n// When both the generic `margin` and the specific `marginStart|marginEnd` props are defined,\n// the latter will take priority.\nconst renderMargin = ( {\n\t'aria-orientation': orientation = 'horizontal',\n\tmargin,\n\tmarginStart,\n\tmarginEnd,\n}: Props ) =>\n\tcss(\n\t\trtl( {\n\t\t\t[ MARGIN_DIRECTIONS[ orientation ].start ]: space(\n\t\t\t\tmarginStart ?? margin\n\t\t\t),\n\t\t\t[ MARGIN_DIRECTIONS[ orientation ].end ]: space(\n\t\t\t\tmarginEnd ?? margin\n\t\t\t),\n\t\t} )()\n\t);\n\nconst renderBorder = ( {\n\t'aria-orientation': orientation = 'horizontal',\n}: Props ) => {\n\treturn css( {\n\t\t[ orientation === 'vertical'\n\t\t\t? 'borderRight'\n\t\t\t: 'borderBottom' ]: '1px solid currentColor',\n\t} );\n};\n\nconst renderSize = ( {\n\t'aria-orientation': orientation = 'horizontal',\n}: Props ) =>\n\tcss( {\n\t\theight: orientation === 'vertical' ? 'auto' : 0,\n\t\twidth: orientation === 'vertical' ? 0 : 'auto',\n\t} );\n\nexport const DividerView = styled.hr< Props >`\n\tborder: 0;\n\tmargin: 0;\n\n\t${ renderBorder }\n\t${ renderSize }\n\t${ renderMargin }\n`;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/divider/styles.ts"],"names":["css","space","rtl","MARGIN_DIRECTIONS","vertical","start","end","horizontal","renderMargin","orientation","margin","marginStart","marginEnd","renderDisplay","undefined","renderBorder","renderSize","height","width","DividerView"],"mappings":";;;;AAAA;AACA;AACA;AAEA,SAASA,GAAT,QAAoB,gBAApB;AAEA;AACA;AACA;;AACA,SAASC,KAAT,QAAsB,mBAAtB;AACA,SAASC,GAAT,QAAoB,UAApB;AAGA,MAAMC,iBAGL,GAAG;AACHC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE,YADE;AAETC,IAAAA,GAAG,EAAE;AAFI,GADP;AAKHC,EAAAA,UAAU,EAAE;AACXF,IAAAA,KAAK,EAAE,WADI;AAEXC,IAAAA,GAAG,EAAE;AAFM;AALT,CAHJ,C,CAcA;AACA;AACA;;AACA,MAAME,YAAY,GAAG;AAAA,MAAE;AACtB,wBAAoBC,WAAW,GAAG,YADZ;AAEtBC,IAAAA,MAFsB;AAGtBC,IAAAA,WAHsB;AAItBC,IAAAA;AAJsB,GAAF;AAAA,sBAMpBZ,GAAG,CACFE,GAAG,CAAE;AACJ,KAAEC,iBAAiB,CAAEM,WAAF,CAAjB,CAAiCJ,KAAnC,GAA4CJ,KAAK,CAChDU,WADgD,aAChDA,WADgD,cAChDA,WADgD,GACjCD,MADiC,CAD7C;AAIJ,KAAEP,iBAAiB,CAAEM,WAAF,CAAjB,CAAiCH,GAAnC,GAA0CL,KAAK,CAC9CW,SAD8C,aAC9CA,SAD8C,cAC9CA,SAD8C,GACjCF,MADiC;AAJ3C,GAAF,CAAH,EADE,k8FANiB;AAAA,CAArB;;;;;;;;;;;;AAiBA,MAAMG,aAAa,GAAG,SAER;AAAA,MAFU;AACvB,wBAAoBJ,WAAW,GAAG;AADX,GAEV;AACb,SAAOA,WAAW,KAAK,UAAhB,UAEJK,SAFH;AAGA,CAND;;AAQA,MAAMC,YAAY,GAAG,SAEP;AAAA,MAFS;AACtB,wBAAoBN,WAAW,GAAG;AADZ,GAET;AACb,sBAAOT,GAAG,CAAE;AACX,KAAES,WAAW,KAAK,UAAhB,GACC,aADD,GAEC,cAFH,GAEqB;AAHV,GAAF,k8FAAV;AAKA,CARD;;AAUA,MAAMO,UAAU,GAAG;AAAA,MAAE;AACpB,wBAAoBP,WAAW,GAAG;AADd,GAAF;AAAA,sBAGlBT,GAAG,CAAE;AACJiB,IAAAA,MAAM,EAAER,WAAW,KAAK,UAAhB,GAA6B,MAA7B,GAAsC,CAD1C;AAEJS,IAAAA,KAAK,EAAET,WAAW,KAAK,UAAhB,GAA6B,CAA7B,GAAiC;AAFpC,GAAF,g8FAHe;AAAA,CAAnB;;AAQA,OAAO,MAAMU,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA,yBAIpBN,aAJoB,OAKpBE,YALoB,OAMpBC,UANoB,OAOpBR,YAPoB,q4FAAjB","sourcesContent":["/**\n * External dependencies\n */\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\n\n/**\n * Internal dependencies\n */\nimport { space } from '../ui/utils/space';\nimport { rtl } from '../utils';\nimport type { Props } from './types';\n\nconst MARGIN_DIRECTIONS: Record<\n\tNonNullable< Props[ 'orientation' ] >,\n\tRecord< 'start' | 'end', string >\n> = {\n\tvertical: {\n\t\tstart: 'marginLeft',\n\t\tend: 'marginRight',\n\t},\n\thorizontal: {\n\t\tstart: 'marginTop',\n\t\tend: 'marginBottom',\n\t},\n};\n\n// Renders the correct margins given the Divider's `orientation` and the writing direction.\n// When both the generic `margin` and the specific `marginStart|marginEnd` props are defined,\n// the latter will take priority.\nconst renderMargin = ( {\n\t'aria-orientation': orientation = 'horizontal',\n\tmargin,\n\tmarginStart,\n\tmarginEnd,\n}: Props ) =>\n\tcss(\n\t\trtl( {\n\t\t\t[ MARGIN_DIRECTIONS[ orientation ].start ]: space(\n\t\t\t\tmarginStart ?? margin\n\t\t\t),\n\t\t\t[ MARGIN_DIRECTIONS[ orientation ].end ]: space(\n\t\t\t\tmarginEnd ?? margin\n\t\t\t),\n\t\t} )()\n\t);\n\nconst renderDisplay = ( {\n\t'aria-orientation': orientation = 'horizontal',\n}: Props ) => {\n\treturn orientation === 'vertical'\n\t\t? css( { display: 'inline' } )\n\t\t: undefined;\n};\n\nconst renderBorder = ( {\n\t'aria-orientation': orientation = 'horizontal',\n}: Props ) => {\n\treturn css( {\n\t\t[ orientation === 'vertical'\n\t\t\t? 'borderRight'\n\t\t\t: 'borderBottom' ]: '1px solid currentColor',\n\t} );\n};\n\nconst renderSize = ( {\n\t'aria-orientation': orientation = 'horizontal',\n}: Props ) =>\n\tcss( {\n\t\theight: orientation === 'vertical' ? 'auto' : 0,\n\t\twidth: orientation === 'vertical' ? 0 : 'auto',\n\t} );\n\nexport const DividerView = styled.hr< Props >`\n\tborder: 0;\n\tmargin: 0;\n\n\t${ renderDisplay }\n\t${ renderBorder }\n\t${ renderSize }\n\t${ renderMargin }\n`;\n"]}
@@ -43,12 +43,12 @@ export default function FocalPointPickerControls(_ref) {
43
43
  className: "focal-point-picker__controls"
44
44
  }, createElement(UnitControl, {
45
45
  label: __('Left'),
46
- value: valueX,
46
+ value: [valueX, '%'].join(''),
47
47
  onChange: next => handleChange(next, 'x'),
48
48
  dragDirection: "e"
49
49
  }), createElement(UnitControl, {
50
50
  label: __('Top'),
51
- value: valueY,
51
+ value: [valueY, '%'].join(''),
52
52
  onChange: next => handleChange(next, 'y'),
53
53
  dragDirection: "s"
54
54
  }));
@@ -60,7 +60,6 @@ function UnitControl(props) {
60
60
  labelPosition: "top",
61
61
  max: TEXTCONTROL_MAX,
62
62
  min: TEXTCONTROL_MIN,
63
- unit: "%",
64
63
  units: [{
65
64
  value: '%',
66
65
  label: '%'
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/focal-point-picker/controls.js"],"names":["noop","__","UnitControl","BaseUnitControl","ControlWrapper","fractionToPercentage","TEXTCONTROL_MIN","TEXTCONTROL_MAX","FocalPointPickerControls","onChange","percentages","x","y","valueX","valueY","handleChange","value","axis","num","parseInt","isNaN","next","props","label"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,QAArB;AAEA;AACA;AACA;;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SACCC,WAAW,IAAIC,eADhB,EAECC,cAFD,QAGO,mCAHP;AAIA,SAASC,oBAAT,QAAqC,SAArC;AAEA,MAAMC,eAAe,GAAG,CAAxB;AACA,MAAMC,eAAe,GAAG,GAAxB;AAEA,eAAe,SAASC,wBAAT,OAMX;AAAA,MAN8C;AACjDC,IAAAA,QAAQ,GAAGT,IADsC;AAEjDU,IAAAA,WAAW,GAAG;AACbC,MAAAA,CAAC,EAAE,GADU;AAEbC,MAAAA,CAAC,EAAE;AAFU;AAFmC,GAM9C;AACH,QAAMC,MAAM,GAAGR,oBAAoB,CAAEK,WAAW,CAACC,CAAd,CAAnC;AACA,QAAMG,MAAM,GAAGT,oBAAoB,CAAEK,WAAW,CAACE,CAAd,CAAnC;;AAEA,QAAMG,YAAY,GAAG,CAAEC,KAAF,EAASC,IAAT,KAAmB;AACvC,UAAMC,GAAG,GAAGC,QAAQ,CAAEH,KAAF,EAAS,EAAT,CAApB;;AAEA,QAAK,CAAEI,KAAK,CAAEF,GAAF,CAAZ,EAAsB;AACrBT,MAAAA,QAAQ,CAAE,EAAE,GAAGC,WAAL;AAAkB,SAAEO,IAAF,GAAUC,GAAG,GAAG;AAAlC,OAAF,CAAR;AACA;AACD,GAND;;AAQA,SACC,cAAC,cAAD;AAAgB,IAAA,SAAS,EAAC;AAA1B,KACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGjB,EAAE,CAAE,MAAF,CADX;AAEC,IAAA,KAAK,EAAGY,MAFT;AAGC,IAAA,QAAQ,EAAKQ,IAAF,IAAYN,YAAY,CAAEM,IAAF,EAAQ,GAAR,CAHpC;AAIC,IAAA,aAAa,EAAC;AAJf,IADD,EAOC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGpB,EAAE,CAAE,KAAF,CADX;AAEC,IAAA,KAAK,EAAGa,MAFT;AAGC,IAAA,QAAQ,EAAKO,IAAF,IAAYN,YAAY,CAAEM,IAAF,EAAQ,GAAR,CAHpC;AAIC,IAAA,aAAa,EAAC;AAJf,IAPD,CADD;AAgBA;;AAED,SAASnB,WAAT,CAAsBoB,KAAtB,EAA8B;AAC7B,SACC,cAAC,eAAD;AACC,IAAA,SAAS,EAAC,oDADX;AAEC,IAAA,aAAa,EAAC,KAFf;AAGC,IAAA,GAAG,EAAGf,eAHP;AAIC,IAAA,GAAG,EAAGD,eAJP;AAKC,IAAA,IAAI,EAAC,GALN;AAMC,IAAA,KAAK,EAAG,CAAE;AAAEU,MAAAA,KAAK,EAAE,GAAT;AAAcO,MAAAA,KAAK,EAAE;AAArB,KAAF;AANT,KAOMD,KAPN,EADD;AAWA","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tUnitControl as BaseUnitControl,\n\tControlWrapper,\n} from './styles/focal-point-picker-style';\nimport { fractionToPercentage } from './utils';\n\nconst TEXTCONTROL_MIN = 0;\nconst TEXTCONTROL_MAX = 100;\n\nexport default function FocalPointPickerControls( {\n\tonChange = noop,\n\tpercentages = {\n\t\tx: 0.5,\n\t\ty: 0.5,\n\t},\n} ) {\n\tconst valueX = fractionToPercentage( percentages.x );\n\tconst valueY = fractionToPercentage( percentages.y );\n\n\tconst handleChange = ( value, axis ) => {\n\t\tconst num = parseInt( value, 10 );\n\n\t\tif ( ! isNaN( num ) ) {\n\t\t\tonChange( { ...percentages, [ axis ]: num / 100 } );\n\t\t}\n\t};\n\n\treturn (\n\t\t<ControlWrapper className=\"focal-point-picker__controls\">\n\t\t\t<UnitControl\n\t\t\t\tlabel={ __( 'Left' ) }\n\t\t\t\tvalue={ valueX }\n\t\t\t\tonChange={ ( next ) => handleChange( next, 'x' ) }\n\t\t\t\tdragDirection=\"e\"\n\t\t\t/>\n\t\t\t<UnitControl\n\t\t\t\tlabel={ __( 'Top' ) }\n\t\t\t\tvalue={ valueY }\n\t\t\t\tonChange={ ( next ) => handleChange( next, 'y' ) }\n\t\t\t\tdragDirection=\"s\"\n\t\t\t/>\n\t\t</ControlWrapper>\n\t);\n}\n\nfunction UnitControl( props ) {\n\treturn (\n\t\t<BaseUnitControl\n\t\t\tclassName=\"focal-point-picker__controls-position-unit-control\"\n\t\t\tlabelPosition=\"top\"\n\t\t\tmax={ TEXTCONTROL_MAX }\n\t\t\tmin={ TEXTCONTROL_MIN }\n\t\t\tunit=\"%\"\n\t\t\tunits={ [ { value: '%', label: '%' } ] }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/focal-point-picker/controls.js"],"names":["noop","__","UnitControl","BaseUnitControl","ControlWrapper","fractionToPercentage","TEXTCONTROL_MIN","TEXTCONTROL_MAX","FocalPointPickerControls","onChange","percentages","x","y","valueX","valueY","handleChange","value","axis","num","parseInt","isNaN","join","next","props","label"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,QAArB;AAEA;AACA;AACA;;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SACCC,WAAW,IAAIC,eADhB,EAECC,cAFD,QAGO,mCAHP;AAIA,SAASC,oBAAT,QAAqC,SAArC;AAEA,MAAMC,eAAe,GAAG,CAAxB;AACA,MAAMC,eAAe,GAAG,GAAxB;AAEA,eAAe,SAASC,wBAAT,OAMX;AAAA,MAN8C;AACjDC,IAAAA,QAAQ,GAAGT,IADsC;AAEjDU,IAAAA,WAAW,GAAG;AACbC,MAAAA,CAAC,EAAE,GADU;AAEbC,MAAAA,CAAC,EAAE;AAFU;AAFmC,GAM9C;AACH,QAAMC,MAAM,GAAGR,oBAAoB,CAAEK,WAAW,CAACC,CAAd,CAAnC;AACA,QAAMG,MAAM,GAAGT,oBAAoB,CAAEK,WAAW,CAACE,CAAd,CAAnC;;AAEA,QAAMG,YAAY,GAAG,CAAEC,KAAF,EAASC,IAAT,KAAmB;AACvC,UAAMC,GAAG,GAAGC,QAAQ,CAAEH,KAAF,EAAS,EAAT,CAApB;;AAEA,QAAK,CAAEI,KAAK,CAAEF,GAAF,CAAZ,EAAsB;AACrBT,MAAAA,QAAQ,CAAE,EAAE,GAAGC,WAAL;AAAkB,SAAEO,IAAF,GAAUC,GAAG,GAAG;AAAlC,OAAF,CAAR;AACA;AACD,GAND;;AAQA,SACC,cAAC,cAAD;AAAgB,IAAA,SAAS,EAAC;AAA1B,KACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGjB,EAAE,CAAE,MAAF,CADX;AAEC,IAAA,KAAK,EAAG,CAAEY,MAAF,EAAU,GAAV,EAAgBQ,IAAhB,CAAsB,EAAtB,CAFT;AAGC,IAAA,QAAQ,EAAKC,IAAF,IAAYP,YAAY,CAAEO,IAAF,EAAQ,GAAR,CAHpC;AAIC,IAAA,aAAa,EAAC;AAJf,IADD,EAOC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGrB,EAAE,CAAE,KAAF,CADX;AAEC,IAAA,KAAK,EAAG,CAAEa,MAAF,EAAU,GAAV,EAAgBO,IAAhB,CAAsB,EAAtB,CAFT;AAGC,IAAA,QAAQ,EAAKC,IAAF,IAAYP,YAAY,CAAEO,IAAF,EAAQ,GAAR,CAHpC;AAIC,IAAA,aAAa,EAAC;AAJf,IAPD,CADD;AAgBA;;AAED,SAASpB,WAAT,CAAsBqB,KAAtB,EAA8B;AAC7B,SACC,cAAC,eAAD;AACC,IAAA,SAAS,EAAC,oDADX;AAEC,IAAA,aAAa,EAAC,KAFf;AAGC,IAAA,GAAG,EAAGhB,eAHP;AAIC,IAAA,GAAG,EAAGD,eAJP;AAKC,IAAA,KAAK,EAAG,CAAE;AAAEU,MAAAA,KAAK,EAAE,GAAT;AAAcQ,MAAAA,KAAK,EAAE;AAArB,KAAF;AALT,KAMMD,KANN,EADD;AAUA","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tUnitControl as BaseUnitControl,\n\tControlWrapper,\n} from './styles/focal-point-picker-style';\nimport { fractionToPercentage } from './utils';\n\nconst TEXTCONTROL_MIN = 0;\nconst TEXTCONTROL_MAX = 100;\n\nexport default function FocalPointPickerControls( {\n\tonChange = noop,\n\tpercentages = {\n\t\tx: 0.5,\n\t\ty: 0.5,\n\t},\n} ) {\n\tconst valueX = fractionToPercentage( percentages.x );\n\tconst valueY = fractionToPercentage( percentages.y );\n\n\tconst handleChange = ( value, axis ) => {\n\t\tconst num = parseInt( value, 10 );\n\n\t\tif ( ! isNaN( num ) ) {\n\t\t\tonChange( { ...percentages, [ axis ]: num / 100 } );\n\t\t}\n\t};\n\n\treturn (\n\t\t<ControlWrapper className=\"focal-point-picker__controls\">\n\t\t\t<UnitControl\n\t\t\t\tlabel={ __( 'Left' ) }\n\t\t\t\tvalue={ [ valueX, '%' ].join( '' ) }\n\t\t\t\tonChange={ ( next ) => handleChange( next, 'x' ) }\n\t\t\t\tdragDirection=\"e\"\n\t\t\t/>\n\t\t\t<UnitControl\n\t\t\t\tlabel={ __( 'Top' ) }\n\t\t\t\tvalue={ [ valueY, '%' ].join( '' ) }\n\t\t\t\tonChange={ ( next ) => handleChange( next, 'y' ) }\n\t\t\t\tdragDirection=\"s\"\n\t\t\t/>\n\t\t</ControlWrapper>\n\t);\n}\n\nfunction UnitControl( props ) {\n\treturn (\n\t\t<BaseUnitControl\n\t\t\tclassName=\"focal-point-picker__controls-position-unit-control\"\n\t\t\tlabelPosition=\"top\"\n\t\t\tmax={ TEXTCONTROL_MAX }\n\t\t\tmin={ TEXTCONTROL_MIN }\n\t\t\tunits={ [ { value: '%', label: '%' } ] }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"]}
@@ -17,6 +17,7 @@ function FormFileUpload(_ref) {
17
17
  children,
18
18
  multiple = false,
19
19
  onChange,
20
+ onClick,
20
21
  render,
21
22
  ...props
22
23
  } = _ref;
@@ -41,7 +42,9 @@ function FormFileUpload(_ref) {
41
42
  display: 'none'
42
43
  },
43
44
  accept: accept,
44
- onChange: onChange
45
+ onChange: onChange,
46
+ onClick: onClick,
47
+ "data-testid": "form-file-upload-input"
45
48
  }));
46
49
  }
47
50
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/form-file-upload/index.js"],"names":["useRef","Button","FormFileUpload","accept","children","multiple","onChange","render","props","ref","openFileDialog","current","click","ui","display"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,MAAT,QAAuB,oBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,WAAnB;;AAEA,SAASC,cAAT,OAOI;AAAA,MAPqB;AACxBC,IAAAA,MADwB;AAExBC,IAAAA,QAFwB;AAGxBC,IAAAA,QAAQ,GAAG,KAHa;AAIxBC,IAAAA,QAJwB;AAKxBC,IAAAA,MALwB;AAMxB,OAAGC;AANqB,GAOrB;AACH,QAAMC,GAAG,GAAGT,MAAM,EAAlB;;AACA,QAAMU,cAAc,GAAG,MAAM;AAC5BD,IAAAA,GAAG,CAACE,OAAJ,CAAYC,KAAZ;AACA,GAFD;;AAIA,QAAMC,EAAE,GAAGN,MAAM,GAChBA,MAAM,CAAE;AAAEG,IAAAA;AAAF,GAAF,CADU,GAGhB,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAGA;AAAlB,KAAwCF,KAAxC,GACGJ,QADH,CAHD;AAOA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGS,EADH,EAEC;AACC,IAAA,IAAI,EAAC,MADN;AAEC,IAAA,GAAG,EAAGJ,GAFP;AAGC,IAAA,QAAQ,EAAGJ,QAHZ;AAIC,IAAA,KAAK,EAAG;AAAES,MAAAA,OAAO,EAAE;AAAX,KAJT;AAKC,IAAA,MAAM,EAAGX,MALV;AAMC,IAAA,QAAQ,EAAGG;AANZ,IAFD,CADD;AAaA;;AAED,eAAeJ,cAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\n\nfunction FormFileUpload( {\n\taccept,\n\tchildren,\n\tmultiple = false,\n\tonChange,\n\trender,\n\t...props\n} ) {\n\tconst ref = useRef();\n\tconst openFileDialog = () => {\n\t\tref.current.click();\n\t};\n\n\tconst ui = render ? (\n\t\trender( { openFileDialog } )\n\t) : (\n\t\t<Button onClick={ openFileDialog } { ...props }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n\treturn (\n\t\t<div className=\"components-form-file-upload\">\n\t\t\t{ ui }\n\t\t\t<input\n\t\t\t\ttype=\"file\"\n\t\t\t\tref={ ref }\n\t\t\t\tmultiple={ multiple }\n\t\t\t\tstyle={ { display: 'none' } }\n\t\t\t\taccept={ accept }\n\t\t\t\tonChange={ onChange }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport default FormFileUpload;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/form-file-upload/index.js"],"names":["useRef","Button","FormFileUpload","accept","children","multiple","onChange","onClick","render","props","ref","openFileDialog","current","click","ui","display"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,MAAT,QAAuB,oBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,WAAnB;;AAEA,SAASC,cAAT,OAQI;AAAA,MARqB;AACxBC,IAAAA,MADwB;AAExBC,IAAAA,QAFwB;AAGxBC,IAAAA,QAAQ,GAAG,KAHa;AAIxBC,IAAAA,QAJwB;AAKxBC,IAAAA,OALwB;AAMxBC,IAAAA,MANwB;AAOxB,OAAGC;AAPqB,GAQrB;AACH,QAAMC,GAAG,GAAGV,MAAM,EAAlB;;AACA,QAAMW,cAAc,GAAG,MAAM;AAC5BD,IAAAA,GAAG,CAACE,OAAJ,CAAYC,KAAZ;AACA,GAFD;;AAIA,QAAMC,EAAE,GAAGN,MAAM,GAChBA,MAAM,CAAE;AAAEG,IAAAA;AAAF,GAAF,CADU,GAGhB,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAGA;AAAlB,KAAwCF,KAAxC,GACGL,QADH,CAHD;AAOA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGU,EADH,EAEC;AACC,IAAA,IAAI,EAAC,MADN;AAEC,IAAA,GAAG,EAAGJ,GAFP;AAGC,IAAA,QAAQ,EAAGL,QAHZ;AAIC,IAAA,KAAK,EAAG;AAAEU,MAAAA,OAAO,EAAE;AAAX,KAJT;AAKC,IAAA,MAAM,EAAGZ,MALV;AAMC,IAAA,QAAQ,EAAGG,QANZ;AAOC,IAAA,OAAO,EAAGC,OAPX;AAQC,mBAAY;AARb,IAFD,CADD;AAeA;;AAED,eAAeL,cAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\n\nfunction FormFileUpload( {\n\taccept,\n\tchildren,\n\tmultiple = false,\n\tonChange,\n\tonClick,\n\trender,\n\t...props\n} ) {\n\tconst ref = useRef();\n\tconst openFileDialog = () => {\n\t\tref.current.click();\n\t};\n\n\tconst ui = render ? (\n\t\trender( { openFileDialog } )\n\t) : (\n\t\t<Button onClick={ openFileDialog } { ...props }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n\treturn (\n\t\t<div className=\"components-form-file-upload\">\n\t\t\t{ ui }\n\t\t\t<input\n\t\t\t\ttype=\"file\"\n\t\t\t\tref={ ref }\n\t\t\t\tmultiple={ multiple }\n\t\t\t\tstyle={ { display: 'none' } }\n\t\t\t\taccept={ accept }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tdata-testid=\"form-file-upload-input\"\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport default FormFileUpload;\n"]}
@@ -11,7 +11,6 @@ import { useDrag } from '@use-gesture/react';
11
11
  * WordPress dependencies
12
12
  */
13
13
  import { forwardRef, useRef } from '@wordpress/element';
14
- import { UP, DOWN, ENTER, ESCAPE } from '@wordpress/keycodes';
15
14
  /**
16
15
  * Internal dependencies
17
16
  */
@@ -58,8 +57,7 @@ function InputField(_ref, ref) {
58
57
  pressDown,
59
58
  pressEnter,
60
59
  pressUp,
61
- reset,
62
- update
60
+ reset
63
61
  } = useInputControlStateReducer(stateReducer, {
64
62
  isDragEnabled,
65
63
  value: valueProp,
@@ -87,7 +85,7 @@ function InputField(_ref, ref) {
87
85
  }
88
86
 
89
87
  if (!isFocused && !wasDirtyOnBlur.current) {
90
- update(valueProp, _event);
88
+ commit(valueProp, _event);
91
89
  } else if (!isDirty) {
92
90
  onChange(value, {
93
91
  event: _event
@@ -104,7 +102,7 @@ function InputField(_ref, ref) {
104
102
  * the onChange callback.
105
103
  */
106
104
 
107
- if (isPressEnterToChange && isDirty) {
105
+ if (isDirty || !event.target.validity.valid) {
108
106
  wasDirtyOnBlur.current = true;
109
107
  handleOnCommit(event);
110
108
  }
@@ -133,20 +131,20 @@ function InputField(_ref, ref) {
133
131
 
134
132
  const handleOnKeyDown = event => {
135
133
  const {
136
- keyCode
134
+ key
137
135
  } = event;
138
136
  onKeyDown(event);
139
137
 
140
- switch (keyCode) {
141
- case UP:
138
+ switch (key) {
139
+ case 'ArrowUp':
142
140
  pressUp(event);
143
141
  break;
144
142
 
145
- case DOWN:
143
+ case 'ArrowDown':
146
144
  pressDown(event);
147
145
  break;
148
146
 
149
- case ENTER:
147
+ case 'Enter':
150
148
  pressEnter(event);
151
149
 
152
150
  if (isPressEnterToChange) {
@@ -156,7 +154,7 @@ function InputField(_ref, ref) {
156
154
 
157
155
  break;
158
156
 
159
- case ESCAPE:
157
+ case 'Escape':
160
158
  if (isPressEnterToChange && isDirty) {
161
159
  event.preventDefault();
162
160
  reset(valueProp, event);
@@ -170,8 +168,18 @@ function InputField(_ref, ref) {
170
168
  const {
171
169
  distance,
172
170
  dragging,
173
- event
174
- } = dragProps;
171
+ event,
172
+ target
173
+ } = dragProps; // The `target` prop always references the `input` element while, by
174
+ // default, the `dragProps.event.target` property would reference the real
175
+ // event target (i.e. any DOM element that the pointer is hovering while
176
+ // dragging). Ensuring that the `target` is always the `input` element
177
+ // allows consumers of `InputControl` (or any higher-level control) to
178
+ // check the input's validity by accessing `event.target.validity.valid`.
179
+
180
+ dragProps.event = { ...dragProps.event,
181
+ target
182
+ };
175
183
  if (!distance) return;
176
184
  event.stopPropagation();
177
185
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/input-field.tsx"],"names":["noop","useDrag","forwardRef","useRef","UP","DOWN","ENTER","ESCAPE","useDragCursor","Input","useInputControlStateReducer","useUpdateEffect","InputField","ref","disabled","dragDirection","dragThreshold","id","isDragEnabled","isFocused","isPressEnterToChange","onBlur","onChange","onDrag","onDragEnd","onDragStart","onFocus","onKeyDown","onValidate","size","setIsFocused","stateReducer","state","value","valueProp","type","props","change","commit","drag","dragEnd","dragStart","invalidate","pressDown","pressEnter","pressUp","reset","update","_event","isDragging","isDirty","wasDirtyOnBlur","dragCursor","current","event","handleOnBlur","handleOnCommit","handleOnFocus","handleOnChange","nextValue","target","currentTarget","err","handleOnKeyDown","keyCode","preventDefault","dragGestureProps","dragProps","distance","dragging","stopPropagation","axis","threshold","enabled","pointer","capture","handleOnMouseDown","onMouseDown","ownerDocument","activeElement","focus","ForwardedComponent"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport { useDrag } from '@use-gesture/react';\nimport type {\n\tSyntheticEvent,\n\tChangeEvent,\n\tKeyboardEvent,\n\tPointerEvent,\n\tFocusEvent,\n\tForwardedRef,\n\tMouseEvent,\n} from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useRef } from '@wordpress/element';\nimport { UP, DOWN, ENTER, ESCAPE } from '@wordpress/keycodes';\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport { useDragCursor } from './utils';\nimport { Input } from './styles/input-control-styles';\nimport { useInputControlStateReducer } from './reducer/reducer';\nimport { useUpdateEffect } from '../utils';\nimport type { InputFieldProps } from './types';\n\nfunction InputField(\n\t{\n\t\tdisabled = false,\n\t\tdragDirection = 'n',\n\t\tdragThreshold = 10,\n\t\tid,\n\t\tisDragEnabled = false,\n\t\tisFocused,\n\t\tisPressEnterToChange = false,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonDrag = noop,\n\t\tonDragEnd = noop,\n\t\tonDragStart = noop,\n\t\tonFocus = noop,\n\t\tonKeyDown = noop,\n\t\tonValidate = noop,\n\t\tsize = 'default',\n\t\tsetIsFocused,\n\t\tstateReducer = ( state: any ) => state,\n\t\tvalue: valueProp,\n\t\ttype,\n\t\t...props\n\t}: WordPressComponentProps< InputFieldProps, 'input', false >,\n\tref: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\t// State.\n\t\tstate,\n\t\t// Actions.\n\t\tchange,\n\t\tcommit,\n\t\tdrag,\n\t\tdragEnd,\n\t\tdragStart,\n\t\tinvalidate,\n\t\tpressDown,\n\t\tpressEnter,\n\t\tpressUp,\n\t\treset,\n\t\tupdate,\n\t} = useInputControlStateReducer( stateReducer, {\n\t\tisDragEnabled,\n\t\tvalue: valueProp,\n\t\tisPressEnterToChange,\n\t} );\n\n\tconst { _event, value, isDragging, isDirty } = state;\n\tconst wasDirtyOnBlur = useRef( false );\n\n\tconst dragCursor = useDragCursor( isDragging, dragDirection );\n\n\t/*\n\t * Handles synchronization of external and internal value state.\n\t * If not focused and did not hold a dirty value[1] on blur\n\t * updates the value from the props. Otherwise if not holding\n\t * a dirty value[1] propagates the value and event through onChange.\n\t * [1] value is only made dirty if isPressEnterToChange is true\n\t */\n\tuseUpdateEffect( () => {\n\t\tif ( valueProp === value ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( ! isFocused && ! wasDirtyOnBlur.current ) {\n\t\t\tupdate( valueProp, _event as SyntheticEvent );\n\t\t} else if ( ! isDirty ) {\n\t\t\tonChange( value, {\n\t\t\t\tevent: _event as ChangeEvent< HTMLInputElement >,\n\t\t\t} );\n\t\t\twasDirtyOnBlur.current = false;\n\t\t}\n\t}, [ value, isDirty, isFocused, valueProp ] );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused?.( false );\n\n\t\t/**\n\t\t * If isPressEnterToChange is set, this commits the value to\n\t\t * the onChange callback.\n\t\t */\n\t\tif ( isPressEnterToChange && isDirty ) {\n\t\t\twasDirtyOnBlur.current = true;\n\t\t\thandleOnCommit( event );\n\t\t}\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused?.( true );\n\t};\n\n\tconst handleOnChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.target.value;\n\t\tchange( nextValue, event );\n\t};\n\n\tconst handleOnCommit = ( event: SyntheticEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.currentTarget.value;\n\n\t\ttry {\n\t\t\tonValidate( nextValue );\n\t\t\tcommit( nextValue, event );\n\t\t} catch ( err ) {\n\t\t\tinvalidate( err, event );\n\t\t}\n\t};\n\n\tconst handleOnKeyDown = ( event: KeyboardEvent< HTMLInputElement > ) => {\n\t\tconst { keyCode } = event;\n\t\tonKeyDown( event );\n\n\t\tswitch ( keyCode ) {\n\t\t\tcase UP:\n\t\t\t\tpressUp( event );\n\t\t\t\tbreak;\n\n\t\t\tcase DOWN:\n\t\t\t\tpressDown( event );\n\t\t\t\tbreak;\n\n\t\t\tcase ENTER:\n\t\t\t\tpressEnter( event );\n\n\t\t\t\tif ( isPressEnterToChange ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\thandleOnCommit( event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase ESCAPE:\n\t\t\t\tif ( isPressEnterToChange && isDirty ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\treset( valueProp, event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\tconst dragGestureProps = useDrag< PointerEvent< HTMLInputElement > >(\n\t\t( dragProps ) => {\n\t\t\tconst { distance, dragging, event } = dragProps;\n\n\t\t\tif ( ! distance ) return;\n\t\t\tevent.stopPropagation();\n\n\t\t\t/**\n\t\t\t * Quick return if no longer dragging.\n\t\t\t * This prevents unnecessary value calculations.\n\t\t\t */\n\t\t\tif ( ! dragging ) {\n\t\t\t\tonDragEnd( dragProps );\n\t\t\t\tdragEnd( dragProps );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tonDrag( dragProps );\n\t\t\tdrag( dragProps );\n\n\t\t\tif ( ! isDragging ) {\n\t\t\t\tonDragStart( dragProps );\n\t\t\t\tdragStart( dragProps );\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\taxis: dragDirection === 'e' || dragDirection === 'w' ? 'x' : 'y',\n\t\t\tthreshold: dragThreshold,\n\t\t\tenabled: isDragEnabled,\n\t\t\tpointer: { capture: false },\n\t\t}\n\t);\n\n\tconst dragProps = isDragEnabled ? dragGestureProps() : {};\n\t/*\n\t * Works around the odd UA (e.g. Firefox) that does not focus inputs of\n\t * type=number when their spinner arrows are pressed.\n\t */\n\tlet handleOnMouseDown;\n\tif ( type === 'number' ) {\n\t\thandleOnMouseDown = ( event: MouseEvent< HTMLInputElement > ) => {\n\t\t\tprops.onMouseDown?.( event );\n\t\t\tif (\n\t\t\t\tevent.currentTarget !==\n\t\t\t\tevent.currentTarget.ownerDocument.activeElement\n\t\t\t) {\n\t\t\t\tevent.currentTarget.focus();\n\t\t\t}\n\t\t};\n\t}\n\n\treturn (\n\t\t<Input\n\t\t\t{ ...props }\n\t\t\t{ ...dragProps }\n\t\t\tclassName=\"components-input-control__input\"\n\t\t\tdisabled={ disabled }\n\t\t\tdragCursor={ dragCursor }\n\t\t\tisDragging={ isDragging }\n\t\t\tid={ id }\n\t\t\tonBlur={ handleOnBlur }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonFocus={ handleOnFocus }\n\t\t\tonKeyDown={ handleOnKeyDown }\n\t\t\tonMouseDown={ handleOnMouseDown }\n\t\t\tref={ ref }\n\t\t\tinputSize={ size }\n\t\t\tvalue={ value }\n\t\t\ttype={ type }\n\t\t/>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( InputField );\n\nexport default ForwardedComponent;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/input-field.tsx"],"names":["noop","useDrag","forwardRef","useRef","useDragCursor","Input","useInputControlStateReducer","useUpdateEffect","InputField","ref","disabled","dragDirection","dragThreshold","id","isDragEnabled","isFocused","isPressEnterToChange","onBlur","onChange","onDrag","onDragEnd","onDragStart","onFocus","onKeyDown","onValidate","size","setIsFocused","stateReducer","state","value","valueProp","type","props","change","commit","drag","dragEnd","dragStart","invalidate","pressDown","pressEnter","pressUp","reset","_event","isDragging","isDirty","wasDirtyOnBlur","dragCursor","current","event","handleOnBlur","target","validity","valid","handleOnCommit","handleOnFocus","handleOnChange","nextValue","currentTarget","err","handleOnKeyDown","key","preventDefault","dragGestureProps","dragProps","distance","dragging","stopPropagation","axis","threshold","enabled","pointer","capture","handleOnMouseDown","onMouseDown","ownerDocument","activeElement","focus","ForwardedComponent"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport { useDrag } from '@use-gesture/react';\nimport type {\n\tSyntheticEvent,\n\tChangeEvent,\n\tKeyboardEvent,\n\tPointerEvent,\n\tFocusEvent,\n\tForwardedRef,\n\tMouseEvent,\n} from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useRef } from '@wordpress/element';\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport { useDragCursor } from './utils';\nimport { Input } from './styles/input-control-styles';\nimport { useInputControlStateReducer } from './reducer/reducer';\nimport { useUpdateEffect } from '../utils';\nimport type { InputFieldProps } from './types';\n\nfunction InputField(\n\t{\n\t\tdisabled = false,\n\t\tdragDirection = 'n',\n\t\tdragThreshold = 10,\n\t\tid,\n\t\tisDragEnabled = false,\n\t\tisFocused,\n\t\tisPressEnterToChange = false,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonDrag = noop,\n\t\tonDragEnd = noop,\n\t\tonDragStart = noop,\n\t\tonFocus = noop,\n\t\tonKeyDown = noop,\n\t\tonValidate = noop,\n\t\tsize = 'default',\n\t\tsetIsFocused,\n\t\tstateReducer = ( state: any ) => state,\n\t\tvalue: valueProp,\n\t\ttype,\n\t\t...props\n\t}: WordPressComponentProps< InputFieldProps, 'input', false >,\n\tref: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\t// State.\n\t\tstate,\n\t\t// Actions.\n\t\tchange,\n\t\tcommit,\n\t\tdrag,\n\t\tdragEnd,\n\t\tdragStart,\n\t\tinvalidate,\n\t\tpressDown,\n\t\tpressEnter,\n\t\tpressUp,\n\t\treset,\n\t} = useInputControlStateReducer( stateReducer, {\n\t\tisDragEnabled,\n\t\tvalue: valueProp,\n\t\tisPressEnterToChange,\n\t} );\n\n\tconst { _event, value, isDragging, isDirty } = state;\n\tconst wasDirtyOnBlur = useRef( false );\n\n\tconst dragCursor = useDragCursor( isDragging, dragDirection );\n\n\t/*\n\t * Handles synchronization of external and internal value state.\n\t * If not focused and did not hold a dirty value[1] on blur\n\t * updates the value from the props. Otherwise if not holding\n\t * a dirty value[1] propagates the value and event through onChange.\n\t * [1] value is only made dirty if isPressEnterToChange is true\n\t */\n\tuseUpdateEffect( () => {\n\t\tif ( valueProp === value ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( ! isFocused && ! wasDirtyOnBlur.current ) {\n\t\t\tcommit( valueProp, _event as SyntheticEvent );\n\t\t} else if ( ! isDirty ) {\n\t\t\tonChange( value, {\n\t\t\t\tevent: _event as\n\t\t\t\t\t| ChangeEvent< HTMLInputElement >\n\t\t\t\t\t| PointerEvent< HTMLInputElement >,\n\t\t\t} );\n\t\t\twasDirtyOnBlur.current = false;\n\t\t}\n\t}, [ value, isDirty, isFocused, valueProp ] );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused?.( false );\n\n\t\t/**\n\t\t * If isPressEnterToChange is set, this commits the value to\n\t\t * the onChange callback.\n\t\t */\n\t\tif ( isDirty || ! event.target.validity.valid ) {\n\t\t\twasDirtyOnBlur.current = true;\n\t\t\thandleOnCommit( event );\n\t\t}\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused?.( true );\n\t};\n\n\tconst handleOnChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.target.value;\n\t\tchange( nextValue, event );\n\t};\n\n\tconst handleOnCommit = ( event: SyntheticEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.currentTarget.value;\n\n\t\ttry {\n\t\t\tonValidate( nextValue );\n\t\t\tcommit( nextValue, event );\n\t\t} catch ( err ) {\n\t\t\tinvalidate( err, event );\n\t\t}\n\t};\n\n\tconst handleOnKeyDown = ( event: KeyboardEvent< HTMLInputElement > ) => {\n\t\tconst { key } = event;\n\t\tonKeyDown( event );\n\n\t\tswitch ( key ) {\n\t\t\tcase 'ArrowUp':\n\t\t\t\tpressUp( event );\n\t\t\t\tbreak;\n\n\t\t\tcase 'ArrowDown':\n\t\t\t\tpressDown( event );\n\t\t\t\tbreak;\n\n\t\t\tcase 'Enter':\n\t\t\t\tpressEnter( event );\n\n\t\t\t\tif ( isPressEnterToChange ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\thandleOnCommit( event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase 'Escape':\n\t\t\t\tif ( isPressEnterToChange && isDirty ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\treset( valueProp, event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\tconst dragGestureProps = useDrag< PointerEvent< HTMLInputElement > >(\n\t\t( dragProps ) => {\n\t\t\tconst { distance, dragging, event, target } = dragProps;\n\n\t\t\t// The `target` prop always references the `input` element while, by\n\t\t\t// default, the `dragProps.event.target` property would reference the real\n\t\t\t// event target (i.e. any DOM element that the pointer is hovering while\n\t\t\t// dragging). Ensuring that the `target` is always the `input` element\n\t\t\t// allows consumers of `InputControl` (or any higher-level control) to\n\t\t\t// check the input's validity by accessing `event.target.validity.valid`.\n\t\t\tdragProps.event = {\n\t\t\t\t...dragProps.event,\n\t\t\t\ttarget,\n\t\t\t};\n\n\t\t\tif ( ! distance ) return;\n\t\t\tevent.stopPropagation();\n\n\t\t\t/**\n\t\t\t * Quick return if no longer dragging.\n\t\t\t * This prevents unnecessary value calculations.\n\t\t\t */\n\t\t\tif ( ! dragging ) {\n\t\t\t\tonDragEnd( dragProps );\n\t\t\t\tdragEnd( dragProps );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tonDrag( dragProps );\n\t\t\tdrag( dragProps );\n\n\t\t\tif ( ! isDragging ) {\n\t\t\t\tonDragStart( dragProps );\n\t\t\t\tdragStart( dragProps );\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\taxis: dragDirection === 'e' || dragDirection === 'w' ? 'x' : 'y',\n\t\t\tthreshold: dragThreshold,\n\t\t\tenabled: isDragEnabled,\n\t\t\tpointer: { capture: false },\n\t\t}\n\t);\n\n\tconst dragProps = isDragEnabled ? dragGestureProps() : {};\n\t/*\n\t * Works around the odd UA (e.g. Firefox) that does not focus inputs of\n\t * type=number when their spinner arrows are pressed.\n\t */\n\tlet handleOnMouseDown;\n\tif ( type === 'number' ) {\n\t\thandleOnMouseDown = ( event: MouseEvent< HTMLInputElement > ) => {\n\t\t\tprops.onMouseDown?.( event );\n\t\t\tif (\n\t\t\t\tevent.currentTarget !==\n\t\t\t\tevent.currentTarget.ownerDocument.activeElement\n\t\t\t) {\n\t\t\t\tevent.currentTarget.focus();\n\t\t\t}\n\t\t};\n\t}\n\n\treturn (\n\t\t<Input\n\t\t\t{ ...props }\n\t\t\t{ ...dragProps }\n\t\t\tclassName=\"components-input-control__input\"\n\t\t\tdisabled={ disabled }\n\t\t\tdragCursor={ dragCursor }\n\t\t\tisDragging={ isDragging }\n\t\t\tid={ id }\n\t\t\tonBlur={ handleOnBlur }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonFocus={ handleOnFocus }\n\t\t\tonKeyDown={ handleOnKeyDown }\n\t\t\tonMouseDown={ handleOnMouseDown }\n\t\t\tref={ ref }\n\t\t\tinputSize={ size }\n\t\t\tvalue={ value }\n\t\t\ttype={ type }\n\t\t/>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( InputField );\n\nexport default ForwardedComponent;\n"]}
@@ -15,5 +15,4 @@ export const PRESS_DOWN = 'PRESS_DOWN';
15
15
  export const PRESS_ENTER = 'PRESS_ENTER';
16
16
  export const PRESS_UP = 'PRESS_UP';
17
17
  export const RESET = 'RESET';
18
- export const UPDATE = 'UPDATE';
19
18
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/reducer/actions.ts"],"names":["CHANGE","COMMIT","DRAG_END","DRAG_START","DRAG","INVALIDATE","PRESS_DOWN","PRESS_ENTER","PRESS_UP","RESET","UPDATE"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AAGA,OAAO,MAAMA,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,IAAI,GAAG,MAAb;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,WAAW,GAAG,aAApB;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,KAAK,GAAG,OAAd;AACP,OAAO,MAAMC,MAAM,GAAG,QAAf","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { DragProps } from '../types';\n\nexport const CHANGE = 'CHANGE';\nexport const COMMIT = 'COMMIT';\nexport const DRAG_END = 'DRAG_END';\nexport const DRAG_START = 'DRAG_START';\nexport const DRAG = 'DRAG';\nexport const INVALIDATE = 'INVALIDATE';\nexport const PRESS_DOWN = 'PRESS_DOWN';\nexport const PRESS_ENTER = 'PRESS_ENTER';\nexport const PRESS_UP = 'PRESS_UP';\nexport const RESET = 'RESET';\nexport const UPDATE = 'UPDATE';\n\ninterface EventPayload {\n\tevent?: SyntheticEvent;\n}\n\ninterface Action< Type, ExtraPayload = {} > {\n\ttype: Type;\n\tpayload: EventPayload & ExtraPayload;\n}\n\ninterface ValuePayload {\n\tvalue: string;\n}\n\nexport type ChangeAction = Action< typeof CHANGE, ValuePayload >;\nexport type CommitAction = Action< typeof COMMIT, ValuePayload >;\nexport type PressUpAction = Action< typeof PRESS_UP >;\nexport type PressDownAction = Action< typeof PRESS_DOWN >;\nexport type PressEnterAction = Action< typeof PRESS_ENTER >;\nexport type DragStartAction = Action< typeof DRAG_START, DragProps >;\nexport type DragEndAction = Action< typeof DRAG_END, DragProps >;\nexport type DragAction = Action< typeof DRAG, DragProps >;\nexport type ResetAction = Action< typeof RESET, Partial< ValuePayload > >;\nexport type UpdateAction = Action< typeof UPDATE, ValuePayload >;\nexport type InvalidateAction = Action< typeof INVALIDATE, { error: unknown } >;\n\nexport type ChangeEventAction =\n\t| ChangeAction\n\t| ResetAction\n\t| CommitAction\n\t| UpdateAction;\n\nexport type DragEventAction = DragStartAction | DragEndAction | DragAction;\n\nexport type KeyEventAction = PressDownAction | PressUpAction | PressEnterAction;\n\nexport type InputAction =\n\t| ChangeEventAction\n\t| KeyEventAction\n\t| DragEventAction\n\t| InvalidateAction;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/reducer/actions.ts"],"names":["CHANGE","COMMIT","DRAG_END","DRAG_START","DRAG","INVALIDATE","PRESS_DOWN","PRESS_ENTER","PRESS_UP","RESET"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AAGA,OAAO,MAAMA,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,IAAI,GAAG,MAAb;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,WAAW,GAAG,aAApB;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,KAAK,GAAG,OAAd","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { DragProps } from '../types';\n\nexport const CHANGE = 'CHANGE';\nexport const COMMIT = 'COMMIT';\nexport const DRAG_END = 'DRAG_END';\nexport const DRAG_START = 'DRAG_START';\nexport const DRAG = 'DRAG';\nexport const INVALIDATE = 'INVALIDATE';\nexport const PRESS_DOWN = 'PRESS_DOWN';\nexport const PRESS_ENTER = 'PRESS_ENTER';\nexport const PRESS_UP = 'PRESS_UP';\nexport const RESET = 'RESET';\n\ninterface EventPayload {\n\tevent?: SyntheticEvent;\n}\n\ninterface Action< Type, ExtraPayload = {} > {\n\ttype: Type;\n\tpayload: EventPayload & ExtraPayload;\n}\n\ninterface ValuePayload {\n\tvalue: string;\n}\n\nexport type ChangeAction = Action< typeof CHANGE, ValuePayload >;\nexport type CommitAction = Action< typeof COMMIT, ValuePayload >;\nexport type PressUpAction = Action< typeof PRESS_UP >;\nexport type PressDownAction = Action< typeof PRESS_DOWN >;\nexport type PressEnterAction = Action< typeof PRESS_ENTER >;\nexport type DragStartAction = Action< typeof DRAG_START, DragProps >;\nexport type DragEndAction = Action< typeof DRAG_END, DragProps >;\nexport type DragAction = Action< typeof DRAG, DragProps >;\nexport type ResetAction = Action< typeof RESET, Partial< ValuePayload > >;\nexport type InvalidateAction = Action< typeof INVALIDATE, { error: unknown } >;\n\nexport type ChangeEventAction = ChangeAction | ResetAction | CommitAction;\n\nexport type DragEventAction = DragStartAction | DragEndAction | DragAction;\n\nexport type KeyEventAction = PressDownAction | PressUpAction | PressEnterAction;\n\nexport type InputAction =\n\t| ChangeEventAction\n\t| KeyEventAction\n\t| DragEventAction\n\t| InvalidateAction;\n"]}
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { isEmpty } from 'lodash';
5
4
 
6
5
  /**
7
6
  * WordPress dependencies
@@ -30,36 +29,6 @@ function mergeInitialState() {
30
29
  initialValue: value
31
30
  };
32
31
  }
33
- /**
34
- * Composes multiple stateReducers into a single stateReducer, building
35
- * the pipeline to control the flow for state and actions.
36
- *
37
- * @param fns State reducers.
38
- * @return The single composed stateReducer.
39
- */
40
-
41
-
42
- export const composeStateReducers = function () {
43
- for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {
44
- fns[_key] = arguments[_key];
45
- }
46
-
47
- return function () {
48
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
49
- args[_key2] = arguments[_key2];
50
- }
51
-
52
- return fns.reduceRight((state, fn) => {
53
- // TODO: Assess whether this can be replaced with a more standard `compose` implementation
54
- // like wp.data.compose() (aka lodash flowRight) or Redux compose().
55
- // The current implementation only works by functions mutating the original state object.
56
- const fnState = fn(...args);
57
- return isEmpty(fnState) ? state : { ...state,
58
- ...fnState
59
- };
60
- }, {});
61
- };
62
- };
63
32
  /**
64
33
  * Creates a reducer that opens the channel for external state subscription
65
34
  * and modification.
@@ -71,6 +40,7 @@ export const composeStateReducers = function () {
71
40
  * @return The reducer.
72
41
  */
73
42
 
43
+
74
44
  function inputControlStateReducer(composedStateReducers) {
75
45
  return (state, action) => {
76
46
  const nextState = { ...state
@@ -125,11 +95,6 @@ function inputControlStateReducer(composedStateReducers) {
125
95
  nextState.value = action.payload.value || state.initialValue;
126
96
  break;
127
97
 
128
- case actions.UPDATE:
129
- nextState.value = action.payload.value;
130
- nextState.isDirty = false;
131
- break;
132
-
133
98
  /**
134
99
  * Validation
135
100
  */
@@ -233,7 +198,6 @@ export function useInputControlStateReducer() {
233
198
 
234
199
  const reset = createChangeEvent(actions.RESET);
235
200
  const commit = createChangeEvent(actions.COMMIT);
236
- const update = createChangeEvent(actions.UPDATE);
237
201
  const dragStart = createDragEvent(actions.DRAG_START);
238
202
  const drag = createDragEvent(actions.DRAG);
239
203
  const dragEnd = createDragEvent(actions.DRAG_END);
@@ -252,8 +216,7 @@ export function useInputControlStateReducer() {
252
216
  pressEnter,
253
217
  pressUp,
254
218
  reset,
255
- state,
256
- update
219
+ state
257
220
  };
258
221
  }
259
222
  //# sourceMappingURL=reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/reducer/reducer.ts"],"names":["isEmpty","useReducer","initialInputControlState","initialStateReducer","actions","mergeInitialState","initialState","value","initialValue","composeStateReducers","fns","args","reduceRight","state","fn","fnState","inputControlStateReducer","composedStateReducers","action","nextState","type","PRESS_UP","isDirty","PRESS_DOWN","DRAG_START","isDragging","DRAG_END","CHANGE","error","payload","isPressEnterToChange","COMMIT","RESET","UPDATE","INVALIDATE","event","_event","useInputControlStateReducer","stateReducer","dispatch","createChangeEvent","nextValue","persist","createKeyEvent","createDragEvent","change","invalidate","reset","commit","update","dragStart","drag","DRAG","dragEnd","pressUp","pressDown","pressEnter","PRESS_ENTER"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\nimport type { SyntheticEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useReducer } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tInputState,\n\tStateReducer,\n\tinitialInputControlState,\n\tinitialStateReducer,\n} from './state';\nimport * as actions from './actions';\n\n/**\n * Prepares initialState for the reducer.\n *\n * @param initialState The initial state.\n * @return Prepared initialState for the reducer\n */\nfunction mergeInitialState(\n\tinitialState: Partial< InputState > = initialInputControlState\n): InputState {\n\tconst { value } = initialState;\n\n\treturn {\n\t\t...initialInputControlState,\n\t\t...initialState,\n\t\tinitialValue: value,\n\t} as InputState;\n}\n\n/**\n * Composes multiple stateReducers into a single stateReducer, building\n * the pipeline to control the flow for state and actions.\n *\n * @param fns State reducers.\n * @return The single composed stateReducer.\n */\nexport const composeStateReducers = (\n\t...fns: StateReducer[]\n): StateReducer => {\n\treturn ( ...args ) => {\n\t\treturn fns.reduceRight( ( state, fn ) => {\n\t\t\t// TODO: Assess whether this can be replaced with a more standard `compose` implementation\n\t\t\t// like wp.data.compose() (aka lodash flowRight) or Redux compose().\n\t\t\t// The current implementation only works by functions mutating the original state object.\n\t\t\tconst fnState = fn( ...args );\n\t\t\treturn isEmpty( fnState ) ? state : { ...state, ...fnState };\n\t\t}, {} as InputState );\n\t};\n};\n\n/**\n * Creates a reducer that opens the channel for external state subscription\n * and modification.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param composedStateReducers A custom reducer that can subscribe and modify state.\n * @return The reducer.\n */\nfunction inputControlStateReducer(\n\tcomposedStateReducers: StateReducer\n): StateReducer {\n\treturn ( state, action ) => {\n\t\tconst nextState = { ...state };\n\n\t\tswitch ( action.type ) {\n\t\t\t/**\n\t\t\t * Keyboard events\n\t\t\t */\n\t\t\tcase actions.PRESS_UP:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.PRESS_DOWN:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Drag events\n\t\t\t */\n\t\t\tcase actions.DRAG_START:\n\t\t\t\tnextState.isDragging = true;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.DRAG_END:\n\t\t\t\tnextState.isDragging = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Input events\n\t\t\t */\n\t\t\tcase actions.CHANGE:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.value = action.payload.value;\n\n\t\t\t\tif ( state.isPressEnterToChange ) {\n\t\t\t\t\tnextState.isDirty = true;\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\n\t\t\tcase actions.COMMIT:\n\t\t\t\tnextState.value = action.payload.value;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.RESET:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tnextState.value = action.payload.value || state.initialValue;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.UPDATE:\n\t\t\t\tnextState.value = action.payload.value;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Validation\n\t\t\t */\n\t\t\tcase actions.INVALIDATE:\n\t\t\t\tnextState.error = action.payload.error;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( action.payload.event ) {\n\t\t\tnextState._event = action.payload.event;\n\t\t}\n\n\t\t/**\n\t\t * Send the nextState + action to the composedReducers via\n\t\t * this \"bridge\" mechanism. This allows external stateReducers\n\t\t * to hook into actions, and modify state if needed.\n\t\t */\n\t\treturn composedStateReducers( nextState, action );\n\t};\n}\n\n/**\n * A custom hook that connects and external stateReducer with an internal\n * reducer. This hook manages the internal state of InputControl.\n * However, by connecting an external stateReducer function, other\n * components can react to actions as well as modify state before it is\n * applied.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param stateReducer An external state reducer.\n * @param initialState The initial state for the reducer.\n * @return State, dispatch, and a collection of actions.\n */\nexport function useInputControlStateReducer(\n\tstateReducer: StateReducer = initialStateReducer,\n\tinitialState: Partial< InputState > = initialInputControlState\n) {\n\tconst [ state, dispatch ] = useReducer< StateReducer >(\n\t\tinputControlStateReducer( stateReducer ),\n\t\tmergeInitialState( initialState )\n\t);\n\n\tconst createChangeEvent = ( type: actions.ChangeEventAction[ 'type' ] ) => (\n\t\tnextValue: actions.ChangeEventAction[ 'payload' ][ 'value' ],\n\t\tevent: actions.ChangeEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( {\n\t\t\ttype,\n\t\t\tpayload: { value: nextValue, event },\n\t\t} as actions.InputAction );\n\t};\n\n\tconst createKeyEvent = ( type: actions.KeyEventAction[ 'type' ] ) => (\n\t\tevent: actions.KeyEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( { type, payload: { event } } );\n\t};\n\n\tconst createDragEvent = ( type: actions.DragEventAction[ 'type' ] ) => (\n\t\tpayload: actions.DragEventAction[ 'payload' ]\n\t) => {\n\t\tdispatch( { type, payload } );\n\t};\n\n\t/**\n\t * Actions for the reducer\n\t */\n\tconst change = createChangeEvent( actions.CHANGE );\n\tconst invalidate = ( error: unknown, event: SyntheticEvent ) =>\n\t\tdispatch( { type: actions.INVALIDATE, payload: { error, event } } );\n\tconst reset = createChangeEvent( actions.RESET );\n\tconst commit = createChangeEvent( actions.COMMIT );\n\tconst update = createChangeEvent( actions.UPDATE );\n\n\tconst dragStart = createDragEvent( actions.DRAG_START );\n\tconst drag = createDragEvent( actions.DRAG );\n\tconst dragEnd = createDragEvent( actions.DRAG_END );\n\n\tconst pressUp = createKeyEvent( actions.PRESS_UP );\n\tconst pressDown = createKeyEvent( actions.PRESS_DOWN );\n\tconst pressEnter = createKeyEvent( actions.PRESS_ENTER );\n\n\treturn {\n\t\tchange,\n\t\tcommit,\n\t\tdispatch,\n\t\tdrag,\n\t\tdragEnd,\n\t\tdragStart,\n\t\tinvalidate,\n\t\tpressDown,\n\t\tpressEnter,\n\t\tpressUp,\n\t\treset,\n\t\tstate,\n\t\tupdate,\n\t} as const;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/reducer/reducer.ts"],"names":["useReducer","initialInputControlState","initialStateReducer","actions","mergeInitialState","initialState","value","initialValue","inputControlStateReducer","composedStateReducers","state","action","nextState","type","PRESS_UP","isDirty","PRESS_DOWN","DRAG_START","isDragging","DRAG_END","CHANGE","error","payload","isPressEnterToChange","COMMIT","RESET","INVALIDATE","event","_event","useInputControlStateReducer","stateReducer","dispatch","createChangeEvent","nextValue","persist","createKeyEvent","createDragEvent","change","invalidate","reset","commit","dragStart","drag","DRAG","dragEnd","pressUp","pressDown","pressEnter","PRESS_ENTER"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useReducer } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tInputState,\n\tStateReducer,\n\tinitialInputControlState,\n\tinitialStateReducer,\n} from './state';\nimport * as actions from './actions';\n\n/**\n * Prepares initialState for the reducer.\n *\n * @param initialState The initial state.\n * @return Prepared initialState for the reducer\n */\nfunction mergeInitialState(\n\tinitialState: Partial< InputState > = initialInputControlState\n): InputState {\n\tconst { value } = initialState;\n\n\treturn {\n\t\t...initialInputControlState,\n\t\t...initialState,\n\t\tinitialValue: value,\n\t} as InputState;\n}\n\n/**\n * Creates a reducer that opens the channel for external state subscription\n * and modification.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param composedStateReducers A custom reducer that can subscribe and modify state.\n * @return The reducer.\n */\nfunction inputControlStateReducer(\n\tcomposedStateReducers: StateReducer\n): StateReducer {\n\treturn ( state, action ) => {\n\t\tconst nextState = { ...state };\n\n\t\tswitch ( action.type ) {\n\t\t\t/**\n\t\t\t * Keyboard events\n\t\t\t */\n\t\t\tcase actions.PRESS_UP:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.PRESS_DOWN:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Drag events\n\t\t\t */\n\t\t\tcase actions.DRAG_START:\n\t\t\t\tnextState.isDragging = true;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.DRAG_END:\n\t\t\t\tnextState.isDragging = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Input events\n\t\t\t */\n\t\t\tcase actions.CHANGE:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.value = action.payload.value;\n\n\t\t\t\tif ( state.isPressEnterToChange ) {\n\t\t\t\t\tnextState.isDirty = true;\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\n\t\t\tcase actions.COMMIT:\n\t\t\t\tnextState.value = action.payload.value;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.RESET:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tnextState.value = action.payload.value || state.initialValue;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Validation\n\t\t\t */\n\t\t\tcase actions.INVALIDATE:\n\t\t\t\tnextState.error = action.payload.error;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( action.payload.event ) {\n\t\t\tnextState._event = action.payload.event;\n\t\t}\n\n\t\t/**\n\t\t * Send the nextState + action to the composedReducers via\n\t\t * this \"bridge\" mechanism. This allows external stateReducers\n\t\t * to hook into actions, and modify state if needed.\n\t\t */\n\t\treturn composedStateReducers( nextState, action );\n\t};\n}\n\n/**\n * A custom hook that connects and external stateReducer with an internal\n * reducer. This hook manages the internal state of InputControl.\n * However, by connecting an external stateReducer function, other\n * components can react to actions as well as modify state before it is\n * applied.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param stateReducer An external state reducer.\n * @param initialState The initial state for the reducer.\n * @return State, dispatch, and a collection of actions.\n */\nexport function useInputControlStateReducer(\n\tstateReducer: StateReducer = initialStateReducer,\n\tinitialState: Partial< InputState > = initialInputControlState\n) {\n\tconst [ state, dispatch ] = useReducer< StateReducer >(\n\t\tinputControlStateReducer( stateReducer ),\n\t\tmergeInitialState( initialState )\n\t);\n\n\tconst createChangeEvent = ( type: actions.ChangeEventAction[ 'type' ] ) => (\n\t\tnextValue: actions.ChangeEventAction[ 'payload' ][ 'value' ],\n\t\tevent: actions.ChangeEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( {\n\t\t\ttype,\n\t\t\tpayload: { value: nextValue, event },\n\t\t} as actions.InputAction );\n\t};\n\n\tconst createKeyEvent = ( type: actions.KeyEventAction[ 'type' ] ) => (\n\t\tevent: actions.KeyEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( { type, payload: { event } } );\n\t};\n\n\tconst createDragEvent = ( type: actions.DragEventAction[ 'type' ] ) => (\n\t\tpayload: actions.DragEventAction[ 'payload' ]\n\t) => {\n\t\tdispatch( { type, payload } );\n\t};\n\n\t/**\n\t * Actions for the reducer\n\t */\n\tconst change = createChangeEvent( actions.CHANGE );\n\tconst invalidate = ( error: unknown, event: SyntheticEvent ) =>\n\t\tdispatch( { type: actions.INVALIDATE, payload: { error, event } } );\n\tconst reset = createChangeEvent( actions.RESET );\n\tconst commit = createChangeEvent( actions.COMMIT );\n\n\tconst dragStart = createDragEvent( actions.DRAG_START );\n\tconst drag = createDragEvent( actions.DRAG );\n\tconst dragEnd = createDragEvent( actions.DRAG_END );\n\n\tconst pressUp = createKeyEvent( actions.PRESS_UP );\n\tconst pressDown = createKeyEvent( actions.PRESS_DOWN );\n\tconst pressEnter = createKeyEvent( actions.PRESS_ENTER );\n\n\treturn {\n\t\tchange,\n\t\tcommit,\n\t\tdispatch,\n\t\tdrag,\n\t\tdragEnd,\n\t\tdragStart,\n\t\tinvalidate,\n\t\tpressDown,\n\t\tpressEnter,\n\t\tpressUp,\n\t\treset,\n\t\tstate,\n\t} as const;\n}\n"]}
@@ -18,12 +18,11 @@ import { isRTL } from '@wordpress/i18n';
18
18
 
19
19
  import { Input } from './styles/number-control-styles';
20
20
  import * as inputControlActionTypes from '../input-control/reducer/actions';
21
- import { composeStateReducers } from '../input-control/reducer/reducer';
22
21
  import { add, subtract, roundClamp } from '../utils/math';
23
22
  import { isValueEmpty } from '../utils/values';
24
23
  export function NumberControl(_ref, ref) {
25
24
  let {
26
- __unstableStateReducer: stateReducer = state => state,
25
+ __unstableStateReducer: stateReducerProp,
27
26
  className,
28
27
  dragDirection = 'n',
29
28
  hideHTMLArrows = false,
@@ -61,12 +60,14 @@ export function NumberControl(_ref, ref) {
61
60
  */
62
61
 
63
62
  const numberControlStateReducer = (state, action) => {
63
+ const nextState = { ...state
64
+ };
64
65
  const {
65
66
  type,
66
67
  payload
67
68
  } = action;
68
69
  const event = payload === null || payload === void 0 ? void 0 : payload.event;
69
- const currentValue = state.value;
70
+ const currentValue = nextState.value;
70
71
  /**
71
72
  * Handles custom UP and DOWN Keyboard events
72
73
  */
@@ -88,7 +89,7 @@ export function NumberControl(_ref, ref) {
88
89
  nextValue = subtract(nextValue, incrementalValue);
89
90
  }
90
91
 
91
- state.value = constrainValue(nextValue, enableShift ? incrementalValue : null);
92
+ nextState.value = constrainValue(nextValue, enableShift ? incrementalValue : null);
92
93
  }
93
94
  /**
94
95
  * Handles drag to update events
@@ -127,20 +128,20 @@ export function NumberControl(_ref, ref) {
127
128
  if (delta !== 0) {
128
129
  delta = Math.ceil(Math.abs(delta)) * Math.sign(delta);
129
130
  const distance = delta * modifier * directionModifier;
130
- state.value = constrainValue(add(currentValue, distance), enableShift ? modifier : null);
131
+ nextState.value = constrainValue(add(currentValue, distance), enableShift ? modifier : null);
131
132
  }
132
133
  }
133
134
  /**
134
- * Handles commit (ENTER key press or on blur if isPressEnterToChange)
135
+ * Handles commit (ENTER key press or blur)
135
136
  */
136
137
 
137
138
 
138
139
  if (type === inputControlActionTypes.PRESS_ENTER || type === inputControlActionTypes.COMMIT) {
139
140
  const applyEmptyValue = required === false && currentValue === '';
140
- state.value = applyEmptyValue ? currentValue : constrainValue(currentValue);
141
+ nextState.value = applyEmptyValue ? currentValue : constrainValue(currentValue);
141
142
  }
142
143
 
143
- return state;
144
+ return nextState;
144
145
  };
145
146
 
146
147
  return createElement(Input, _extends({
@@ -159,7 +160,12 @@ export function NumberControl(_ref, ref) {
159
160
  step: step,
160
161
  type: typeProp,
161
162
  value: valueProp,
162
- __unstableStateReducer: composeStateReducers(numberControlStateReducer, stateReducer)
163
+ __unstableStateReducer: (state, action) => {
164
+ var _stateReducerProp;
165
+
166
+ const baseState = numberControlStateReducer(state, action);
167
+ return (_stateReducerProp = stateReducerProp === null || stateReducerProp === void 0 ? void 0 : stateReducerProp(baseState, action)) !== null && _stateReducerProp !== void 0 ? _stateReducerProp : baseState;
168
+ }
163
169
  }));
164
170
  }
165
171
  export default forwardRef(NumberControl);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/number-control/index.js"],"names":["classNames","forwardRef","isRTL","Input","inputControlActionTypes","composeStateReducers","add","subtract","roundClamp","isValueEmpty","NumberControl","ref","__unstableStateReducer","stateReducer","state","className","dragDirection","hideHTMLArrows","isDragEnabled","isShiftStepEnabled","label","max","Infinity","min","required","shiftStep","step","type","typeProp","value","valueProp","props","isStepAny","baseStep","parseFloat","baseValue","constrainValue","stepOverride","Math","autoComplete","classes","numberControlStateReducer","action","payload","event","currentValue","PRESS_UP","PRESS_DOWN","enableShift","shiftKey","incrementalValue","nextValue","preventDefault","DRAG","x","y","delta","modifier","directionModifier","ceil","abs","sign","distance","PRESS_ENTER","COMMIT","applyEmptyValue"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Input } from './styles/number-control-styles';\nimport * as inputControlActionTypes from '../input-control/reducer/actions';\nimport { composeStateReducers } from '../input-control/reducer/reducer';\nimport { add, subtract, roundClamp } from '../utils/math';\nimport { isValueEmpty } from '../utils/values';\n\nexport function NumberControl(\n\t{\n\t\t__unstableStateReducer: stateReducer = ( state ) => state,\n\t\tclassName,\n\t\tdragDirection = 'n',\n\t\thideHTMLArrows = false,\n\t\tisDragEnabled = true,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmax = Infinity,\n\t\tmin = -Infinity,\n\t\trequired = false,\n\t\tshiftStep = 10,\n\t\tstep = 1,\n\t\ttype: typeProp = 'number',\n\t\tvalue: valueProp,\n\t\t...props\n\t},\n\tref\n) {\n\tconst isStepAny = step === 'any';\n\tconst baseStep = isStepAny ? 1 : parseFloat( step );\n\tconst baseValue = roundClamp( 0, min, max, baseStep );\n\tconst constrainValue = ( value, stepOverride ) => {\n\t\t// When step is \"any\" clamp the value, otherwise round and clamp it.\n\t\treturn isStepAny\n\t\t\t? Math.min( max, Math.max( min, value ) )\n\t\t\t: roundClamp( value, min, max, stepOverride ?? baseStep );\n\t};\n\n\tconst autoComplete = typeProp === 'number' ? 'off' : null;\n\tconst classes = classNames( 'components-number-control', className );\n\n\t/**\n\t * \"Middleware\" function that intercepts updates from InputControl.\n\t * This allows us to tap into actions to transform the (next) state for\n\t * InputControl.\n\t *\n\t * @param {Object} state State from InputControl\n\t * @param {Object} action Action triggering state change\n\t * @return {Object} The updated state to apply to InputControl\n\t */\n\tconst numberControlStateReducer = ( state, action ) => {\n\t\tconst { type, payload } = action;\n\t\tconst event = payload?.event;\n\t\tconst currentValue = state.value;\n\n\t\t/**\n\t\t * Handles custom UP and DOWN Keyboard events\n\t\t */\n\t\tif (\n\t\t\ttype === inputControlActionTypes.PRESS_UP ||\n\t\t\ttype === inputControlActionTypes.PRESS_DOWN\n\t\t) {\n\t\t\tconst enableShift = event.shiftKey && isShiftStepEnabled;\n\n\t\t\tconst incrementalValue = enableShift\n\t\t\t\t? parseFloat( shiftStep ) * baseStep\n\t\t\t\t: baseStep;\n\t\t\tlet nextValue = isValueEmpty( currentValue )\n\t\t\t\t? baseValue\n\t\t\t\t: currentValue;\n\n\t\t\tif ( event?.preventDefault ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tif ( type === inputControlActionTypes.PRESS_UP ) {\n\t\t\t\tnextValue = add( nextValue, incrementalValue );\n\t\t\t}\n\n\t\t\tif ( type === inputControlActionTypes.PRESS_DOWN ) {\n\t\t\t\tnextValue = subtract( nextValue, incrementalValue );\n\t\t\t}\n\n\t\t\tstate.value = constrainValue(\n\t\t\t\tnextValue,\n\t\t\t\tenableShift ? incrementalValue : null\n\t\t\t);\n\t\t}\n\n\t\t/**\n\t\t * Handles drag to update events\n\t\t */\n\t\tif ( type === inputControlActionTypes.DRAG && isDragEnabled ) {\n\t\t\tconst [ x, y ] = payload.delta;\n\t\t\tconst enableShift = payload.shiftKey && isShiftStepEnabled;\n\t\t\tconst modifier = enableShift\n\t\t\t\t? parseFloat( shiftStep ) * baseStep\n\t\t\t\t: baseStep;\n\n\t\t\tlet directionModifier;\n\t\t\tlet delta;\n\n\t\t\tswitch ( dragDirection ) {\n\t\t\t\tcase 'n':\n\t\t\t\t\tdelta = y;\n\t\t\t\t\tdirectionModifier = -1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'e':\n\t\t\t\t\tdelta = x;\n\t\t\t\t\tdirectionModifier = isRTL() ? -1 : 1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 's':\n\t\t\t\t\tdelta = y;\n\t\t\t\t\tdirectionModifier = 1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'w':\n\t\t\t\t\tdelta = x;\n\t\t\t\t\tdirectionModifier = isRTL() ? 1 : -1;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif ( delta !== 0 ) {\n\t\t\t\tdelta = Math.ceil( Math.abs( delta ) ) * Math.sign( delta );\n\t\t\t\tconst distance = delta * modifier * directionModifier;\n\n\t\t\t\tstate.value = constrainValue(\n\t\t\t\t\tadd( currentValue, distance ),\n\t\t\t\t\tenableShift ? modifier : null\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Handles commit (ENTER key press or on blur if isPressEnterToChange)\n\t\t */\n\t\tif (\n\t\t\ttype === inputControlActionTypes.PRESS_ENTER ||\n\t\t\ttype === inputControlActionTypes.COMMIT\n\t\t) {\n\t\t\tconst applyEmptyValue = required === false && currentValue === '';\n\n\t\t\tstate.value = applyEmptyValue\n\t\t\t\t? currentValue\n\t\t\t\t: constrainValue( currentValue );\n\t\t}\n\n\t\treturn state;\n\t};\n\n\treturn (\n\t\t<Input\n\t\t\tautoComplete={ autoComplete }\n\t\t\tinputMode=\"numeric\"\n\t\t\t{ ...props }\n\t\t\tclassName={ classes }\n\t\t\tdragDirection={ dragDirection }\n\t\t\thideHTMLArrows={ hideHTMLArrows }\n\t\t\tisDragEnabled={ isDragEnabled }\n\t\t\tlabel={ label }\n\t\t\tmax={ max }\n\t\t\tmin={ min }\n\t\t\tref={ ref }\n\t\t\trequired={ required }\n\t\t\tstep={ step }\n\t\t\ttype={ typeProp }\n\t\t\tvalue={ valueProp }\n\t\t\t__unstableStateReducer={ composeStateReducers(\n\t\t\t\tnumberControlStateReducer,\n\t\t\t\tstateReducer\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( NumberControl );\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/number-control/index.js"],"names":["classNames","forwardRef","isRTL","Input","inputControlActionTypes","add","subtract","roundClamp","isValueEmpty","NumberControl","ref","__unstableStateReducer","stateReducerProp","className","dragDirection","hideHTMLArrows","isDragEnabled","isShiftStepEnabled","label","max","Infinity","min","required","shiftStep","step","type","typeProp","value","valueProp","props","isStepAny","baseStep","parseFloat","baseValue","constrainValue","stepOverride","Math","autoComplete","classes","numberControlStateReducer","state","action","nextState","payload","event","currentValue","PRESS_UP","PRESS_DOWN","enableShift","shiftKey","incrementalValue","nextValue","preventDefault","DRAG","x","y","delta","modifier","directionModifier","ceil","abs","sign","distance","PRESS_ENTER","COMMIT","applyEmptyValue","baseState"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Input } from './styles/number-control-styles';\nimport * as inputControlActionTypes from '../input-control/reducer/actions';\nimport { add, subtract, roundClamp } from '../utils/math';\nimport { isValueEmpty } from '../utils/values';\n\nexport function NumberControl(\n\t{\n\t\t__unstableStateReducer: stateReducerProp,\n\t\tclassName,\n\t\tdragDirection = 'n',\n\t\thideHTMLArrows = false,\n\t\tisDragEnabled = true,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmax = Infinity,\n\t\tmin = -Infinity,\n\t\trequired = false,\n\t\tshiftStep = 10,\n\t\tstep = 1,\n\t\ttype: typeProp = 'number',\n\t\tvalue: valueProp,\n\t\t...props\n\t},\n\tref\n) {\n\tconst isStepAny = step === 'any';\n\tconst baseStep = isStepAny ? 1 : parseFloat( step );\n\tconst baseValue = roundClamp( 0, min, max, baseStep );\n\tconst constrainValue = ( value, stepOverride ) => {\n\t\t// When step is \"any\" clamp the value, otherwise round and clamp it.\n\t\treturn isStepAny\n\t\t\t? Math.min( max, Math.max( min, value ) )\n\t\t\t: roundClamp( value, min, max, stepOverride ?? baseStep );\n\t};\n\n\tconst autoComplete = typeProp === 'number' ? 'off' : null;\n\tconst classes = classNames( 'components-number-control', className );\n\n\t/**\n\t * \"Middleware\" function that intercepts updates from InputControl.\n\t * This allows us to tap into actions to transform the (next) state for\n\t * InputControl.\n\t *\n\t * @param {Object} state State from InputControl\n\t * @param {Object} action Action triggering state change\n\t * @return {Object} The updated state to apply to InputControl\n\t */\n\tconst numberControlStateReducer = ( state, action ) => {\n\t\tconst nextState = { ...state };\n\n\t\tconst { type, payload } = action;\n\t\tconst event = payload?.event;\n\t\tconst currentValue = nextState.value;\n\n\t\t/**\n\t\t * Handles custom UP and DOWN Keyboard events\n\t\t */\n\t\tif (\n\t\t\ttype === inputControlActionTypes.PRESS_UP ||\n\t\t\ttype === inputControlActionTypes.PRESS_DOWN\n\t\t) {\n\t\t\tconst enableShift = event.shiftKey && isShiftStepEnabled;\n\n\t\t\tconst incrementalValue = enableShift\n\t\t\t\t? parseFloat( shiftStep ) * baseStep\n\t\t\t\t: baseStep;\n\t\t\tlet nextValue = isValueEmpty( currentValue )\n\t\t\t\t? baseValue\n\t\t\t\t: currentValue;\n\n\t\t\tif ( event?.preventDefault ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tif ( type === inputControlActionTypes.PRESS_UP ) {\n\t\t\t\tnextValue = add( nextValue, incrementalValue );\n\t\t\t}\n\n\t\t\tif ( type === inputControlActionTypes.PRESS_DOWN ) {\n\t\t\t\tnextValue = subtract( nextValue, incrementalValue );\n\t\t\t}\n\n\t\t\tnextState.value = constrainValue(\n\t\t\t\tnextValue,\n\t\t\t\tenableShift ? incrementalValue : null\n\t\t\t);\n\t\t}\n\n\t\t/**\n\t\t * Handles drag to update events\n\t\t */\n\t\tif ( type === inputControlActionTypes.DRAG && isDragEnabled ) {\n\t\t\tconst [ x, y ] = payload.delta;\n\t\t\tconst enableShift = payload.shiftKey && isShiftStepEnabled;\n\t\t\tconst modifier = enableShift\n\t\t\t\t? parseFloat( shiftStep ) * baseStep\n\t\t\t\t: baseStep;\n\n\t\t\tlet directionModifier;\n\t\t\tlet delta;\n\n\t\t\tswitch ( dragDirection ) {\n\t\t\t\tcase 'n':\n\t\t\t\t\tdelta = y;\n\t\t\t\t\tdirectionModifier = -1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'e':\n\t\t\t\t\tdelta = x;\n\t\t\t\t\tdirectionModifier = isRTL() ? -1 : 1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 's':\n\t\t\t\t\tdelta = y;\n\t\t\t\t\tdirectionModifier = 1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'w':\n\t\t\t\t\tdelta = x;\n\t\t\t\t\tdirectionModifier = isRTL() ? 1 : -1;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif ( delta !== 0 ) {\n\t\t\t\tdelta = Math.ceil( Math.abs( delta ) ) * Math.sign( delta );\n\t\t\t\tconst distance = delta * modifier * directionModifier;\n\n\t\t\t\tnextState.value = constrainValue(\n\t\t\t\t\tadd( currentValue, distance ),\n\t\t\t\t\tenableShift ? modifier : null\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Handles commit (ENTER key press or blur)\n\t\t */\n\t\tif (\n\t\t\ttype === inputControlActionTypes.PRESS_ENTER ||\n\t\t\ttype === inputControlActionTypes.COMMIT\n\t\t) {\n\t\t\tconst applyEmptyValue = required === false && currentValue === '';\n\n\t\t\tnextState.value = applyEmptyValue\n\t\t\t\t? currentValue\n\t\t\t\t: constrainValue( currentValue );\n\t\t}\n\n\t\treturn nextState;\n\t};\n\n\treturn (\n\t\t<Input\n\t\t\tautoComplete={ autoComplete }\n\t\t\tinputMode=\"numeric\"\n\t\t\t{ ...props }\n\t\t\tclassName={ classes }\n\t\t\tdragDirection={ dragDirection }\n\t\t\thideHTMLArrows={ hideHTMLArrows }\n\t\t\tisDragEnabled={ isDragEnabled }\n\t\t\tlabel={ label }\n\t\t\tmax={ max }\n\t\t\tmin={ min }\n\t\t\tref={ ref }\n\t\t\trequired={ required }\n\t\t\tstep={ step }\n\t\t\ttype={ typeProp }\n\t\t\tvalue={ valueProp }\n\t\t\t__unstableStateReducer={ ( state, action ) => {\n\t\t\t\tconst baseState = numberControlStateReducer( state, action );\n\t\t\t\treturn stateReducerProp?.( baseState, action ) ?? baseState;\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( NumberControl );\n"]}
@@ -22,7 +22,7 @@ export const Root = _styled("div", process.env.NODE_ENV === "production" ? {
22
22
  } : {
23
23
  name: "1cd7zoc",
24
24
  styles: "bottom:0;box-sizing:border-box;left:0;pointer-events:none;position:absolute;right:0;top:0",
25
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVc4QiIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3Jlc2l6YWJsZS1ib3gvcmVzaXplLXRvb2x0aXAvc3R5bGVzL3Jlc2l6ZS10b29sdGlwLnN0eWxlcy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuLyoqXG4gKiBJbnRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gJy4uLy4uLy4uL3RleHQnO1xuaW1wb3J0IHsgQ09MT1JTIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgUm9vdCA9IHN0eWxlZC5kaXZgXG5cdGJvdHRvbTogMDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0bGVmdDogMDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwV3JhcHBlciA9IHN0eWxlZC5kaXZgXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0b3BhY2l0eTogMDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgbGluZWFyO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiAkeyBDT0xPUlMudWkuYm9yZGVyIH07XG5cdGJvcmRlci1yYWRpdXM6IDJweDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbi8vIFRPRE86IFJlc29sdmUgbmVlZCB0byB1c2UgJiYmIHRvIGluY3JlYXNlIHNwZWNpZmljaXR5XG4vLyBodHRwczovL2dpdGh1Yi5jb20vV29yZFByZXNzL2d1dGVuYmVyZy9pc3N1ZXMvMTg0ODNcblxuZXhwb3J0IGNvbnN0IExhYmVsVGV4dCA9IHN0eWxlZCggVGV4dCApYFxuXHQmJiYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMudWkudGV4dERhcmsgfTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNDtcblx0fVxuYDtcbiJdfQ== */",
25
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVc4QiIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3Jlc2l6YWJsZS1ib3gvcmVzaXplLXRvb2x0aXAvc3R5bGVzL3Jlc2l6ZS10b29sdGlwLnN0eWxlcy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuLyoqXG4gKiBJbnRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gJy4uLy4uLy4uL3RleHQnO1xuaW1wb3J0IHsgQ09MT1JTIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgUm9vdCA9IHN0eWxlZC5kaXZgXG5cdGJvdHRvbTogMDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0bGVmdDogMDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwV3JhcHBlciA9IHN0eWxlZC5kaXZgXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0b3BhY2l0eTogMDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgbGluZWFyO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiAkeyBDT0xPUlMudWkuYm9yZGVyIH07XG5cdGJvcmRlci1yYWRpdXM6IDJweDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbi8vIFRPRE86IFJlc29sdmUgbmVlZCB0byB1c2UgJiYmIHRvIGluY3JlYXNlIHNwZWNpZmljaXR5XG4vLyBodHRwczovL2dpdGh1Yi5jb20vV29yZFByZXNzL2d1dGVuYmVyZy9pc3N1ZXMvMTg0ODNcblxuZXhwb3J0IGNvbnN0IExhYmVsVGV4dCA9IHN0eWxlZCggVGV4dCApYFxuXHQmJiYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMudWkudGV4dERhcmsgfTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNDtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR9XG5gO1xuIl19 */",
26
26
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
27
27
  });
28
28
  export const TooltipWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
@@ -36,7 +36,7 @@ export const TooltipWrapper = _styled("div", process.env.NODE_ENV === "productio
36
36
  } : {
37
37
  name: "ajymcs",
38
38
  styles: "align-items:center;box-sizing:border-box;display:inline-flex;justify-content:center;opacity:0;pointer-events:none;transition:opacity 120ms linear",
39
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCd0MiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9yZXNpemFibGUtYm94L3Jlc2l6ZS10b29sdGlwL3N0eWxlcy9yZXNpemUtdG9vbHRpcC5zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi90ZXh0JztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFJvb3QgPSBzdHlsZWQuZGl2YFxuXHRib3R0b206IDA7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGxlZnQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIGxpbmVhcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkLmRpdmBcblx0YmFja2dyb3VuZDogJHsgQ09MT1JTLnVpLmJvcmRlciB9O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6ICR7IENPTE9SUy51aS50ZXh0RGFyayB9O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBMYWJlbFRleHQgPSBzdHlsZWQoIFRleHQgKWBcblx0JiYmIHtcblx0XHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdH1cbmA7XG4iXX0= */",
39
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCd0MiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9yZXNpemFibGUtYm94L3Jlc2l6ZS10b29sdGlwL3N0eWxlcy9yZXNpemUtdG9vbHRpcC5zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi90ZXh0JztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFJvb3QgPSBzdHlsZWQuZGl2YFxuXHRib3R0b206IDA7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGxlZnQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIGxpbmVhcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkLmRpdmBcblx0YmFja2dyb3VuZDogJHsgQ09MT1JTLnVpLmJvcmRlciB9O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6ICR7IENPTE9SUy51aS50ZXh0RGFyayB9O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBMYWJlbFRleHQgPSBzdHlsZWQoIFRleHQgKWBcblx0JiYmIHtcblx0XHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0fVxuYDtcbiJdfQ== */",
40
40
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
41
41
  });
42
42
  export const Tooltip = _styled("div", process.env.NODE_ENV === "production" ? {
@@ -44,7 +44,7 @@ export const Tooltip = _styled("div", process.env.NODE_ENV === "production" ? {
44
44
  } : {
45
45
  target: "ekdag501",
46
46
  label: "Tooltip"
47
- })("background:", COLORS.ui.border, ";border-radius:2px;box-sizing:border-box;font-size:12px;color:", COLORS.ui.textDark, ";padding:4px 8px;position:relative;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStCaUMiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9yZXNpemFibGUtYm94L3Jlc2l6ZS10b29sdGlwL3N0eWxlcy9yZXNpemUtdG9vbHRpcC5zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi90ZXh0JztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFJvb3QgPSBzdHlsZWQuZGl2YFxuXHRib3R0b206IDA7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGxlZnQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIGxpbmVhcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkLmRpdmBcblx0YmFja2dyb3VuZDogJHsgQ09MT1JTLnVpLmJvcmRlciB9O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6ICR7IENPTE9SUy51aS50ZXh0RGFyayB9O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBMYWJlbFRleHQgPSBzdHlsZWQoIFRleHQgKWBcblx0JiYmIHtcblx0XHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdH1cbmA7XG4iXX0= */")); // TODO: Resolve need to use &&& to increase specificity
47
+ })("background:", COLORS.ui.border, ";border-radius:2px;box-sizing:border-box;font-size:12px;color:", COLORS.ui.textDark, ";padding:4px 8px;position:relative;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStCaUMiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9yZXNpemFibGUtYm94L3Jlc2l6ZS10b29sdGlwL3N0eWxlcy9yZXNpemUtdG9vbHRpcC5zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi90ZXh0JztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFJvb3QgPSBzdHlsZWQuZGl2YFxuXHRib3R0b206IDA7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGxlZnQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIGxpbmVhcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkLmRpdmBcblx0YmFja2dyb3VuZDogJHsgQ09MT1JTLnVpLmJvcmRlciB9O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6ICR7IENPTE9SUy51aS50ZXh0RGFyayB9O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBMYWJlbFRleHQgPSBzdHlsZWQoIFRleHQgKWBcblx0JiYmIHtcblx0XHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0fVxuYDtcbiJdfQ== */")); // TODO: Resolve need to use &&& to increase specificity
48
48
  // https://github.com/WordPress/gutenberg/issues/18483
49
49
 
50
50
  export const LabelText = /*#__PURE__*/_styled(Text, process.env.NODE_ENV === "production" ? {
@@ -52,5 +52,5 @@ export const LabelText = /*#__PURE__*/_styled(Text, process.env.NODE_ENV === "pr
52
52
  } : {
53
53
  target: "ekdag500",
54
54
  label: "LabelText"
55
- })("&&&{color:", COLORS.ui.textDark, ";display:block;font-size:13px;line-height:1.4;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRDdUMiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9yZXNpemFibGUtYm94L3Jlc2l6ZS10b29sdGlwL3N0eWxlcy9yZXNpemUtdG9vbHRpcC5zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi90ZXh0JztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFJvb3QgPSBzdHlsZWQuZGl2YFxuXHRib3R0b206IDA7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGxlZnQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIGxpbmVhcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkLmRpdmBcblx0YmFja2dyb3VuZDogJHsgQ09MT1JTLnVpLmJvcmRlciB9O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6ICR7IENPTE9SUy51aS50ZXh0RGFyayB9O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBMYWJlbFRleHQgPSBzdHlsZWQoIFRleHQgKWBcblx0JiYmIHtcblx0XHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdH1cbmA7XG4iXX0= */"));
55
+ })("&&&{color:", COLORS.ui.textDark, ";display:block;font-size:13px;line-height:1.4;white-space:nowrap;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvcmVzaXphYmxlLWJveC9yZXNpemUtdG9vbHRpcC9zdHlsZXMvcmVzaXplLXRvb2x0aXAuc3R5bGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRDdUMiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9yZXNpemFibGUtYm94L3Jlc2l6ZS10b29sdGlwL3N0eWxlcy9yZXNpemUtdG9vbHRpcC5zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi8uLi90ZXh0JztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFJvb3QgPSBzdHlsZWQuZGl2YFxuXHRib3R0b206IDA7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGxlZnQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIGxpbmVhcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkLmRpdmBcblx0YmFja2dyb3VuZDogJHsgQ09MT1JTLnVpLmJvcmRlciB9O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6ICR7IENPTE9SUy51aS50ZXh0RGFyayB9O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBMYWJlbFRleHQgPSBzdHlsZWQoIFRleHQgKWBcblx0JiYmIHtcblx0XHRjb2xvcjogJHsgQ09MT1JTLnVpLnRleHREYXJrIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0fVxuYDtcbiJdfQ== */"));
56
56
  //# sourceMappingURL=resize-tooltip.styles.js.map