@wordpress/components 21.0.2 → 21.1.2-next.4d3b314fd5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +31 -4
- package/build/autocomplete/get-default-use-items.js +3 -3
- package/build/autocomplete/get-default-use-items.js.map +1 -1
- package/build/box-control/unit-control.js +0 -1
- package/build/box-control/unit-control.js.map +1 -1
- package/build/button/index.js +5 -1
- package/build/button/index.js.map +1 -1
- package/build/draggable/index.js +3 -6
- package/build/draggable/index.js.map +1 -1
- package/build/drop-zone/index.js +7 -1
- package/build/drop-zone/index.js.map +1 -1
- package/build/higher-order/with-filters/index.js +1 -1
- package/build/higher-order/with-filters/index.js.map +1 -1
- package/build/index.js +6 -0
- package/build/index.js.map +1 -1
- package/build/menu-item/index.js +4 -3
- package/build/menu-item/index.js.map +1 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +10 -3
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +15 -6
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
- package/build/mobile/bottom-sheet/sub-sheet/index.native.js +4 -1
- package/build/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
- package/build/mobile/color-settings/index.native.js +3 -1
- package/build/mobile/color-settings/index.native.js.map +1 -1
- package/build/mobile/color-settings/picker-screen.native.js +3 -1
- package/build/mobile/color-settings/picker-screen.native.js.map +1 -1
- package/build/mobile/image/index.native.js +3 -1
- package/build/mobile/image/index.native.js.map +1 -1
- package/build/mobile/keyboard-avoiding-view/index.ios.js +3 -1
- package/build/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
- package/build/mobile/link-picker/index.native.js +3 -1
- package/build/mobile/link-picker/index.native.js.map +1 -1
- package/build/mobile/link-picker/link-picker-results.native.js +6 -4
- package/build/mobile/link-picker/link-picker-results.native.js.map +1 -1
- package/build/mobile/link-picker/link-picker-screen.native.js +3 -1
- package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
- package/build/mobile/link-settings/index.native.js +24 -6
- package/build/mobile/link-settings/index.native.js.map +1 -1
- package/build/mobile/link-settings/link-settings-screen.native.js +3 -1
- package/build/mobile/link-settings/link-settings-screen.native.js.map +1 -1
- package/build/mobile/segmented-control/index.native.js +6 -2
- package/build/mobile/segmented-control/index.native.js.map +1 -1
- package/build/mobile/utils/use-unit-converter-to-mobile.native.js +6 -2
- package/build/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
- package/build/notice/index.native.js +15 -19
- package/build/notice/index.native.js.map +1 -1
- package/build/notice/list.native.js +2 -3
- package/build/notice/list.native.js.map +1 -1
- package/build/palette-edit/index.js +1 -1
- package/build/palette-edit/index.js.map +1 -1
- package/build/popover/index.js +29 -32
- package/build/popover/index.js.map +1 -1
- package/build/popover/limit-shift.js +145 -0
- package/build/popover/limit-shift.js.map +1 -0
- package/build/popover/utils.js +55 -15
- package/build/popover/utils.js.map +1 -1
- package/build/range-control/input-range.js +1 -15
- package/build/range-control/input-range.js.map +1 -1
- package/build/range-control/tooltip.js +1 -1
- package/build/range-control/tooltip.js.map +1 -1
- package/build/range-control/utils.js +2 -58
- package/build/range-control/utils.js.map +1 -1
- package/build/tools-panel/styles.js +27 -12
- package/build/tools-panel/styles.js.map +1 -1
- package/build/tools-panel/tools-panel-header/component.js +19 -6
- package/build/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build/tools-panel/tools-panel-header/hook.js +4 -0
- package/build/tools-panel/tools-panel-header/hook.js.map +1 -1
- package/build/tree-grid/index.js +13 -8
- package/build/tree-grid/index.js.map +1 -1
- package/build/unit-control/index.js +2 -2
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/index.native.js +10 -2
- package/build/unit-control/index.native.js.map +1 -1
- package/build/unit-control/styles/unit-control-styles.js +21 -32
- package/build/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build/utils/hooks/use-controlled-state.js +2 -3
- package/build/utils/hooks/use-controlled-state.js.map +1 -1
- package/build-module/autocomplete/get-default-use-items.js +1 -1
- package/build-module/autocomplete/get-default-use-items.js.map +1 -1
- package/build-module/box-control/unit-control.js +0 -1
- package/build-module/box-control/unit-control.js.map +1 -1
- package/build-module/button/index.js +5 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/draggable/index.js +2 -5
- package/build-module/draggable/index.js.map +1 -1
- package/build-module/drop-zone/index.js +7 -1
- package/build-module/drop-zone/index.js.map +1 -1
- package/build-module/higher-order/with-filters/index.js +2 -2
- package/build-module/higher-order/with-filters/index.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/menu-item/index.js +4 -3
- package/build-module/menu-item/index.js.map +1 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +10 -3
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +13 -4
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js +4 -1
- package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/index.native.js +3 -1
- package/build-module/mobile/color-settings/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/picker-screen.native.js +3 -1
- package/build-module/mobile/color-settings/picker-screen.native.js.map +1 -1
- package/build-module/mobile/image/index.native.js +3 -1
- package/build-module/mobile/image/index.native.js.map +1 -1
- package/build-module/mobile/keyboard-avoiding-view/index.ios.js +3 -1
- package/build-module/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
- package/build-module/mobile/link-picker/index.native.js +3 -1
- package/build-module/mobile/link-picker/index.native.js.map +1 -1
- package/build-module/mobile/link-picker/link-picker-results.native.js +4 -2
- package/build-module/mobile/link-picker/link-picker-results.native.js.map +1 -1
- package/build-module/mobile/link-picker/link-picker-screen.native.js +3 -1
- package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
- package/build-module/mobile/link-settings/index.native.js +24 -6
- package/build-module/mobile/link-settings/index.native.js.map +1 -1
- package/build-module/mobile/link-settings/link-settings-screen.native.js +3 -1
- package/build-module/mobile/link-settings/link-settings-screen.native.js.map +1 -1
- package/build-module/mobile/segmented-control/index.native.js +6 -2
- package/build-module/mobile/segmented-control/index.native.js.map +1 -1
- package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js +6 -2
- package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
- package/build-module/notice/index.native.js +16 -21
- package/build-module/notice/index.native.js.map +1 -1
- package/build-module/notice/list.native.js +3 -3
- package/build-module/notice/list.native.js.map +1 -1
- package/build-module/palette-edit/index.js +1 -1
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/popover/index.js +31 -35
- package/build-module/popover/index.js.map +1 -1
- package/build-module/popover/limit-shift.js +136 -0
- package/build-module/popover/limit-shift.js.map +1 -0
- package/build-module/popover/utils.js +55 -15
- package/build-module/popover/utils.js.map +1 -1
- package/build-module/range-control/input-range.js +1 -14
- package/build-module/range-control/input-range.js.map +1 -1
- package/build-module/range-control/tooltip.js +1 -1
- package/build-module/range-control/tooltip.js.map +1 -1
- package/build-module/range-control/utils.js +2 -57
- package/build-module/range-control/utils.js.map +1 -1
- package/build-module/tools-panel/styles.js +23 -12
- package/build-module/tools-panel/styles.js.map +1 -1
- package/build-module/tools-panel/tools-panel-header/component.js +19 -7
- package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build-module/tools-panel/tools-panel-header/hook.js +4 -0
- package/build-module/tools-panel/tools-panel-header/hook.js.map +1 -1
- package/build-module/tree-grid/index.js +13 -8
- package/build-module/tree-grid/index.js.map +1 -1
- package/build-module/unit-control/index.js +2 -2
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/index.native.js +10 -2
- package/build-module/unit-control/index.native.js.map +1 -1
- package/build-module/unit-control/styles/unit-control-styles.js +20 -31
- package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build-module/utils/hooks/use-controlled-state.js +3 -4
- package/build-module/utils/hooks/use-controlled-state.js.map +1 -1
- package/build-style/style-rtl.css +13 -2
- package/build-style/style.css +13 -2
- package/build-types/button/index.d.ts.map +1 -1
- package/build-types/draggable/index.d.ts.map +1 -1
- package/build-types/drop-zone/index.d.ts.map +1 -1
- package/build-types/external-link/styles/external-link-styles.d.ts +1 -1
- package/build-types/focal-point-picker/styles/focal-point-style.d.ts +3 -3
- package/build-types/menu-item/index.d.ts.map +1 -1
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/popover/limit-shift.d.ts +87 -0
- package/build-types/popover/limit-shift.d.ts.map +1 -0
- package/build-types/popover/stories/e2e/index.d.ts +8 -0
- package/build-types/popover/stories/e2e/index.d.ts.map +1 -0
- package/build-types/popover/test/index.d.ts +2 -0
- package/build-types/popover/test/index.d.ts.map +1 -0
- package/build-types/popover/types.d.ts +1 -1
- package/build-types/popover/types.d.ts.map +1 -1
- package/build-types/popover/utils.d.ts.map +1 -1
- package/build-types/range-control/input-range.d.ts.map +1 -1
- package/build-types/range-control/stories/index.d.ts.map +1 -1
- package/build-types/range-control/types.d.ts +0 -34
- package/build-types/range-control/types.d.ts.map +1 -1
- package/build-types/range-control/utils.d.ts +1 -12
- package/build-types/range-control/utils.d.ts.map +1 -1
- package/build-types/spinner/index.d.ts +1 -1
- package/build-types/tools-panel/styles.d.ts +6 -0
- package/build-types/tools-panel/styles.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel-header/component.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel-header/hook.d.ts +1 -0
- package/build-types/tools-panel/tools-panel-header/hook.d.ts.map +1 -1
- package/build-types/tools-panel/types.d.ts +1 -0
- package/build-types/tools-panel/types.d.ts.map +1 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts +1 -4
- package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
- package/build-types/utils/hooks/use-controlled-state.d.ts.map +1 -1
- package/package.json +17 -17
- package/src/autocomplete/get-default-use-items.js +1 -1
- package/src/box-control/unit-control.js +0 -1
- package/src/button/index.js +7 -1
- package/src/button/test/index.js +36 -0
- package/src/color-palette/test/__snapshots__/index.js.snap +169 -1106
- package/src/color-palette/test/index.js +107 -61
- package/src/draggable/index.js +2 -5
- package/src/drop-zone/index.tsx +4 -1
- package/src/font-size-picker/stories/e2e/index.js +47 -0
- package/src/higher-order/with-filters/index.js +2 -2
- package/src/index.js +1 -1
- package/src/menu-item/README.md +7 -0
- package/src/menu-item/index.js +11 -5
- package/src/menu-item/style.scss +1 -0
- package/src/menu-item/test/index.js +36 -0
- package/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +9 -0
- package/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +12 -2
- package/src/mobile/bottom-sheet/sub-sheet/index.native.js +3 -0
- package/src/mobile/color-settings/index.native.js +3 -0
- package/src/mobile/color-settings/picker-screen.native.js +3 -0
- package/src/mobile/image/index.native.js +3 -0
- package/src/mobile/keyboard-avoiding-view/index.ios.js +3 -0
- package/src/mobile/link-picker/index.native.js +3 -0
- package/src/mobile/link-picker/link-picker-results.native.js +4 -1
- package/src/mobile/link-picker/link-picker-screen.native.js +3 -0
- package/src/mobile/link-settings/index.native.js +18 -0
- package/src/mobile/link-settings/link-settings-screen.native.js +3 -0
- package/src/mobile/segmented-control/index.native.js +6 -0
- package/src/mobile/utils/use-unit-converter-to-mobile.native.js +6 -0
- package/src/notice/index.native.js +17 -20
- package/src/notice/list.native.js +7 -3
- package/src/palette-edit/index.js +1 -1
- package/src/placeholder/style.scss +1 -1
- package/src/popover/index.tsx +26 -42
- package/src/popover/limit-shift.ts +205 -0
- package/src/popover/stories/e2e/index.tsx +25 -0
- package/src/popover/test/index.tsx +230 -0
- package/src/popover/types.ts +1 -0
- package/src/popover/utils.ts +58 -16
- package/src/range-control/README.md +6 -7
- package/src/range-control/input-range.tsx +1 -21
- package/src/range-control/stories/index.tsx +2 -1
- package/src/range-control/tooltip.tsx +1 -1
- package/src/range-control/types.ts +0 -35
- package/src/range-control/utils.ts +3 -75
- package/src/tools-panel/stories/index.js +27 -0
- package/src/tools-panel/styles.ts +28 -1
- package/src/tools-panel/tools-panel-header/component.tsx +12 -5
- package/src/tools-panel/tools-panel-header/hook.ts +5 -0
- package/src/tools-panel/types.ts +1 -0
- package/src/tree-grid/index.js +23 -14
- package/src/tree-grid/test/__snapshots__/cell.js.snap +21 -17
- package/src/tree-grid/test/__snapshots__/index.js.snap +1 -1
- package/src/unit-control/index.native.js +8 -0
- package/src/unit-control/index.tsx +2 -2
- package/src/unit-control/styles/unit-control-styles.ts +0 -20
- package/src/unit-control/test/index.tsx +6 -3
- package/src/utils/hooks/use-controlled-state.js +9 -6
- package/tsconfig.tsbuildinfo +1 -1
- package/src/popover/test/__snapshots__/index.js.snap +0 -34
- package/src/popover/test/index.js +0 -164
- package/src/unit-control/test/__snapshots__/index.tsx.snap +0 -31
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/menu-item/index.js"],"names":["MenuItem","props","ref","children","info","className","icon","iconPosition","shortcut","isSelected","role","buttonProps","undefined"],"mappings":";;;;;;;;;;AASA;;;;AALA;;AAUA;;AACA;;AACA;;AAhBA;;AACA;AACA;AACA;;AAGA;AACA;AACA;;AAGA;AACA;AACA;AAKO,SAASA,QAAT,CAAmBC,KAAnB,EAA0BC,GAA1B,EAAgC;AACtC,MAAI;AACHC,IAAAA,QADG;AAEHC,IAAAA,IAFG;AAGHC,IAAAA,SAHG;AAIHC,IAAAA,IAJG;AAKHC,IAAAA,YAAY,GAAG,OALZ;AAMHC,IAAAA,QANG;AAOHC,IAAAA,UAPG;AAQHC,IAAAA,IAAI,GAAG,UARJ;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/menu-item/index.js"],"names":["MenuItem","props","ref","children","info","className","icon","iconPosition","shortcut","isSelected","role","suffix","buttonProps","undefined"],"mappings":";;;;;;;;;;AASA;;;;AALA;;AAUA;;AACA;;AACA;;AAhBA;;AACA;AACA;AACA;;AAGA;AACA;AACA;;AAGA;AACA;AACA;AAKO,SAASA,QAAT,CAAmBC,KAAnB,EAA0BC,GAA1B,EAAgC;AACtC,MAAI;AACHC,IAAAA,QADG;AAEHC,IAAAA,IAFG;AAGHC,IAAAA,SAHG;AAIHC,IAAAA,IAJG;AAKHC,IAAAA,YAAY,GAAG,OALZ;AAMHC,IAAAA,QANG;AAOHC,IAAAA,UAPG;AAQHC,IAAAA,IAAI,GAAG,UARJ;AASHC,IAAAA,MATG;AAUH,OAAGC;AAVA,MAWAX,KAXJ;AAaAI,EAAAA,SAAS,GAAG,yBAAY,8BAAZ,EAA4CA,SAA5C,CAAZ;;AAEA,MAAKD,IAAL,EAAY;AACXD,IAAAA,QAAQ,GACP;AAAM,MAAA,SAAS,EAAC;AAAhB,OACC;AAAM,MAAA,SAAS,EAAC;AAAhB,OAA+CA,QAA/C,CADD,EAEC;AAAM,MAAA,SAAS,EAAC;AAAhB,OAA+CC,IAA/C,CAFD,CADD;AAMA;;AAED,MAAKE,IAAI,IAAI,OAAOA,IAAP,KAAgB,QAA7B,EAAwC;AACvCA,IAAAA,IAAI,GAAG,2BAAcA,IAAd,EAAoB;AAC1BD,MAAAA,SAAS,EAAE,yBAAY,kCAAZ,EAAgD;AAC1D,0BAAkBE,YAAY,KAAK;AADuB,OAAhD;AADe,KAApB,CAAP;AAKA;;AAED,SACC,4BAAC,eAAD;AACC,IAAA,GAAG,EAAGL,GADP,CAEC;AAFD;AAGC,oBACCQ,IAAI,KAAK,kBAAT,IAA+BA,IAAI,KAAK,eAAxC,GACGD,UADH,GAEGI,SANL;AAQC,IAAA,IAAI,EAAGH,IARR;AASC,IAAA,IAAI,EAAGH,YAAY,KAAK,MAAjB,GAA0BD,IAA1B,GAAiCO,SATzC;AAUC,IAAA,SAAS,EAAGR;AAVb,KAWMO,WAXN,GAaC;AAAM,IAAA,SAAS,EAAC;AAAhB,KAA+CT,QAA/C,CAbD,EAcG,CAAEQ,MAAF,IACD,4BAAC,iBAAD;AACC,IAAA,SAAS,EAAC,gCADX;AAEC,IAAA,QAAQ,EAAGH;AAFZ,IAfF,EAoBG,CAAEG,MAAF,IAAYL,IAAZ,IAAoBC,YAAY,KAAK,OAArC,IACD,4BAAC,aAAD;AAAM,IAAA,IAAI,EAAGD;AAAb,IArBF,EAuBGK,MAvBH,CADD;AA2BA;;eAEc,yBAAYX,QAAZ,C","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { cloneElement, forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Shortcut from '../shortcut';\nimport Button from '../button';\nimport Icon from '../icon';\n\nexport function MenuItem( props, ref ) {\n\tlet {\n\t\tchildren,\n\t\tinfo,\n\t\tclassName,\n\t\ticon,\n\t\ticonPosition = 'right',\n\t\tshortcut,\n\t\tisSelected,\n\t\trole = 'menuitem',\n\t\tsuffix,\n\t\t...buttonProps\n\t} = props;\n\n\tclassName = classnames( 'components-menu-item__button', className );\n\n\tif ( info ) {\n\t\tchildren = (\n\t\t\t<span className=\"components-menu-item__info-wrapper\">\n\t\t\t\t<span className=\"components-menu-item__item\">{ children }</span>\n\t\t\t\t<span className=\"components-menu-item__info\">{ info }</span>\n\t\t\t</span>\n\t\t);\n\t}\n\n\tif ( icon && typeof icon !== 'string' ) {\n\t\ticon = cloneElement( icon, {\n\t\t\tclassName: classnames( 'components-menu-items__item-icon', {\n\t\t\t\t'has-icon-right': iconPosition === 'right',\n\t\t\t} ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<Button\n\t\t\tref={ ref }\n\t\t\t// Make sure aria-checked matches spec https://www.w3.org/TR/wai-aria-1.1/#aria-checked\n\t\t\taria-checked={\n\t\t\t\trole === 'menuitemcheckbox' || role === 'menuitemradio'\n\t\t\t\t\t? isSelected\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t\trole={ role }\n\t\t\ticon={ iconPosition === 'left' ? icon : undefined }\n\t\t\tclassName={ className }\n\t\t\t{ ...buttonProps }\n\t\t>\n\t\t\t<span className=\"components-menu-item__item\">{ children }</span>\n\t\t\t{ ! suffix && (\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-menu-item__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! suffix && icon && iconPosition === 'right' && (\n\t\t\t\t<Icon icon={ icon } />\n\t\t\t) }\n\t\t\t{ suffix }\n\t\t</Button>\n\t);\n}\n\nexport default forwardRef( MenuItem );\n"]}
|
|
@@ -103,7 +103,10 @@ function BottomSheetNavigationContainer(_ref2) {
|
|
|
103
103
|
setCurrentHeight(height);
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
|
-
},
|
|
106
|
+
}, // Disable reason: deferring this refactor to the native team.
|
|
107
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
108
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
109
|
+
[currentHeight]);
|
|
107
110
|
const screens = (0, _element.useMemo)(() => {
|
|
108
111
|
return _element.Children.map(children, child => {
|
|
109
112
|
let screen = child;
|
|
@@ -123,7 +126,9 @@ function BottomSheetNavigationContainer(_ref2) {
|
|
|
123
126
|
}, otherProps, {
|
|
124
127
|
children: () => screen
|
|
125
128
|
}));
|
|
126
|
-
});
|
|
129
|
+
}); // Disable reason: deferring this refactor to the native team.
|
|
130
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
131
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
127
132
|
}, [children]);
|
|
128
133
|
return (0, _element.useMemo)(() => {
|
|
129
134
|
return (0, _element.createElement)(_reactNative.View, {
|
|
@@ -141,7 +146,9 @@ function BottomSheetNavigationContainer(_ref2) {
|
|
|
141
146
|
screenOptions: options
|
|
142
147
|
}, screens)) : (0, _element.createElement)(Stack.Navigator, {
|
|
143
148
|
screenOptions: options
|
|
144
|
-
}, screens)));
|
|
149
|
+
}, screens))); // Disable reason: deferring this refactor to the native team.
|
|
150
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
151
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
145
152
|
}, [currentHeight, _theme]);
|
|
146
153
|
}
|
|
147
154
|
|
package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js"],"names":["AnimationSpec","animation","config","duration","easing","Easing","ease","fadeConfig","current","cardStyle","opacity","progress","options","transitionSpec","open","close","headerShown","gestureEnabled","cardStyleInterpolator","ANIMATION_DURATION","BottomSheetNavigationContainer","children","animate","main","theme","style","Stack","context","BottomSheetNavigationContext","currentHeight","setCurrentHeight","backgroundStyle","styles","background","backgroundDark","_theme","DefaultTheme","colors","backgroundColor","setHeight","height","Math","round","screens","Children","map","child","screen","name","otherProps","props","isNested"],"mappings":";;;;;;;;;AAUA;;;;AAPA;;AACA;;AACA;;AAeA;;AAKA;;AACA;;AAKA;;AA/BA;AACA;AACA;;AAKA;AACA;AACA;;AAaA;AACA;AACA;AASA,MAAMA,aAAa,GAAG;AACrBC,EAAAA,SAAS,EAAE,QADU;AAErBC,EAAAA,MAAM,EAAE;AACPC,IAAAA,QAAQ,EAAE,GADH;AAEPC,IAAAA,MAAM,EAAEC,oBAAOC;AAFR;AAFa,CAAtB;;AAQA,MAAMC,UAAU,GAAG,QAAmB;AAAA,MAAjB;AAAEC,IAAAA;AAAF,GAAiB;AACrC,SAAO;AACNC,IAAAA,SAAS,EAAE;AACVC,MAAAA,OAAO,EAAEF,OAAO,CAACG;AADP;AADL,GAAP;AAKA,CAND;;AAQA,MAAMC,OAAO,GAAG;AACfC,EAAAA,cAAc,EAAE;AACfC,IAAAA,IAAI,EAAEd,aADS;AAEfe,IAAAA,KAAK,EAAEf;AAFQ,GADD;AAKfgB,EAAAA,WAAW,EAAE,KALE;AAMfC,EAAAA,cAAc,EAAE,KAND;AAOfC,EAAAA,qBAAqB,EAAEX;AAPR,CAAhB;AAUA,MAAMY,kBAAkB,GAAG,GAA3B;;AAEA,SAASC,8BAAT,QAMI;AAAA,MANqC;AACxCC,IAAAA,QADwC;AAExCC,IAAAA,OAFwC;AAGxCC,IAAAA,IAHwC;AAIxCC,IAAAA,KAJwC;AAKxCC,IAAAA;AALwC,GAMrC;AACH,QAAMC,KAAK,GAAG,qBAAQ,kCAAR,EAAiClB,OAA/C;AACA,QAAMmB,OAAO,GAAG,yBAAYC,0DAAZ,CAAhB;AACA,QAAM,CAAEC,aAAF,EAAiBC,gBAAjB,IAAsC,uBAC3CH,OAAO,CAACE,aAAR,IAAyB,CADkB,CAA5C;AAIA,QAAME,eAAe,GAAG,2CACvBC,gBAAOC,UADgB,EAEvBD,gBAAOE,cAFgB,CAAxB;;AAKA,QAAMC,MAAM,GAAGX,KAAK,IAAI,EACvB,GAAGY,oBADoB;AAEvBC,IAAAA,MAAM,EAAE,EACP,GAAGD,qBAAaC,MADT;AAEPJ,MAAAA,UAAU,EAAEF,eAAe,CAACO;AAFrB;AAFe,GAAxB;;AAQA,QAAMC,SAAS,GAAG,0BACfC,MAAF,IAAc;AACb;AACA,QACC,OAAOA,MAAP,KAAkB,QAAlB,IACA,OAAOA,MAAP,KAAkB,OAAOX,aAF1B,EAGE;AACD,mDAAwBV,kBAAxB;AACAW,MAAAA,gBAAgB,CAAEU,MAAF,CAAhB;AAEA;AACA;;AAED,QACCA,MAAM,GAAG,CAAT,IACAC,IAAI,CAACC,KAAL,CAAYF,MAAZ,MAAyBC,IAAI,CAACC,KAAL,CAAYb,aAAZ,CAF1B,EAGE;AACD,UAAKA,aAAa,KAAK,CAAvB,EAA2B;AAC1BC,QAAAA,gBAAgB,CAAEU,MAAF,CAAhB;AACA,OAFD,MAEO,IAAKlB,OAAL,EAAe;AACrB,qDAAwBH,kBAAxB;AACAW,QAAAA,gBAAgB,CAAEU,MAAF,CAAhB;AACA,OAHM,MAGA;AACNV,QAAAA,gBAAgB,CAAEU,MAAF,CAAhB;AACA;AACD;AACD,GA1BgB,EA2BjB,
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js"],"names":["AnimationSpec","animation","config","duration","easing","Easing","ease","fadeConfig","current","cardStyle","opacity","progress","options","transitionSpec","open","close","headerShown","gestureEnabled","cardStyleInterpolator","ANIMATION_DURATION","BottomSheetNavigationContainer","children","animate","main","theme","style","Stack","context","BottomSheetNavigationContext","currentHeight","setCurrentHeight","backgroundStyle","styles","background","backgroundDark","_theme","DefaultTheme","colors","backgroundColor","setHeight","height","Math","round","screens","Children","map","child","screen","name","otherProps","props","isNested"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Easing } from 'react-native';\nimport { NavigationContainer, DefaultTheme } from '@react-navigation/native';\nimport { createStackNavigator } from '@react-navigation/stack';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tChildren,\n\tuseRef,\n\tcloneElement,\n} from '@wordpress/element';\n\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { performLayoutAnimation } from '../../layout-animation';\nimport {\n\tBottomSheetNavigationContext,\n\tBottomSheetNavigationProvider,\n} from './bottom-sheet-navigation-context';\n\nimport styles from './styles.scss';\n\nconst AnimationSpec = {\n\tanimation: 'timing',\n\tconfig: {\n\t\tduration: 200,\n\t\teasing: Easing.ease,\n\t},\n};\n\nconst fadeConfig = ( { current } ) => {\n\treturn {\n\t\tcardStyle: {\n\t\t\topacity: current.progress,\n\t\t},\n\t};\n};\n\nconst options = {\n\ttransitionSpec: {\n\t\topen: AnimationSpec,\n\t\tclose: AnimationSpec,\n\t},\n\theaderShown: false,\n\tgestureEnabled: false,\n\tcardStyleInterpolator: fadeConfig,\n};\n\nconst ANIMATION_DURATION = 190;\n\nfunction BottomSheetNavigationContainer( {\n\tchildren,\n\tanimate,\n\tmain,\n\ttheme,\n\tstyle,\n} ) {\n\tconst Stack = useRef( createStackNavigator() ).current;\n\tconst context = useContext( BottomSheetNavigationContext );\n\tconst [ currentHeight, setCurrentHeight ] = useState(\n\t\tcontext.currentHeight || 1\n\t);\n\n\tconst backgroundStyle = usePreferredColorSchemeStyle(\n\t\tstyles.background,\n\t\tstyles.backgroundDark\n\t);\n\n\tconst _theme = theme || {\n\t\t...DefaultTheme,\n\t\tcolors: {\n\t\t\t...DefaultTheme.colors,\n\t\t\tbackground: backgroundStyle.backgroundColor,\n\t\t},\n\t};\n\n\tconst setHeight = useCallback(\n\t\t( height ) => {\n\t\t\t// The screen is fullHeight.\n\t\t\tif (\n\t\t\t\ttypeof height === 'string' &&\n\t\t\t\ttypeof height !== typeof currentHeight\n\t\t\t) {\n\t\t\t\tperformLayoutAnimation( ANIMATION_DURATION );\n\t\t\t\tsetCurrentHeight( height );\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\theight > 1 &&\n\t\t\t\tMath.round( height ) !== Math.round( currentHeight )\n\t\t\t) {\n\t\t\t\tif ( currentHeight === 1 ) {\n\t\t\t\t\tsetCurrentHeight( height );\n\t\t\t\t} else if ( animate ) {\n\t\t\t\t\tperformLayoutAnimation( ANIMATION_DURATION );\n\t\t\t\t\tsetCurrentHeight( height );\n\t\t\t\t} else {\n\t\t\t\t\tsetCurrentHeight( height );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ currentHeight ]\n\t);\n\n\tconst screens = useMemo( () => {\n\t\treturn Children.map( children, ( child ) => {\n\t\t\tlet screen = child;\n\t\t\tconst { name, ...otherProps } = child.props;\n\t\t\tif ( ! main ) {\n\t\t\t\tscreen = cloneElement( child, {\n\t\t\t\t\t...child.props,\n\t\t\t\t\tisNested: true,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<Stack.Screen\n\t\t\t\t\tname={ name }\n\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\tchildren={ () => screen }\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ children ] );\n\n\treturn useMemo( () => {\n\t\treturn (\n\t\t\t<View style={ [ style, { height: currentHeight } ] }>\n\t\t\t\t<BottomSheetNavigationProvider\n\t\t\t\t\tvalue={ {\n\t\t\t\t\t\tsetHeight,\n\t\t\t\t\t\tcurrentHeight,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ main ? (\n\t\t\t\t\t\t<NavigationContainer theme={ _theme }>\n\t\t\t\t\t\t\t<Stack.Navigator screenOptions={ options }>\n\t\t\t\t\t\t\t\t{ screens }\n\t\t\t\t\t\t\t</Stack.Navigator>\n\t\t\t\t\t\t</NavigationContainer>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<Stack.Navigator screenOptions={ options }>\n\t\t\t\t\t\t\t{ screens }\n\t\t\t\t\t\t</Stack.Navigator>\n\t\t\t\t\t) }\n\t\t\t\t</BottomSheetNavigationProvider>\n\t\t\t</View>\n\t\t);\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ currentHeight, _theme ] );\n}\n\nexport default BottomSheetNavigationContainer;\n"]}
|
|
@@ -13,10 +13,10 @@ var _native = require("@react-navigation/native");
|
|
|
13
13
|
|
|
14
14
|
var _reactNative = require("react-native");
|
|
15
15
|
|
|
16
|
-
var _lodash = require("lodash");
|
|
17
|
-
|
|
18
16
|
var _components = require("@wordpress/components");
|
|
19
17
|
|
|
18
|
+
var _compose = require("@wordpress/compose");
|
|
19
|
+
|
|
20
20
|
var _bottomSheetNavigationContext = require("./bottom-sheet-navigation-context");
|
|
21
21
|
|
|
22
22
|
var _styles = _interopRequireDefault(require("./styles.scss"));
|
|
@@ -54,8 +54,11 @@ const BottomSheetNavigationScreen = _ref => {
|
|
|
54
54
|
} = (0, _element.useContext)(_components.BottomSheetContext);
|
|
55
55
|
const {
|
|
56
56
|
setHeight
|
|
57
|
-
} = (0, _element.useContext)(_bottomSheetNavigationContext.BottomSheetNavigationContext);
|
|
58
|
-
|
|
57
|
+
} = (0, _element.useContext)(_bottomSheetNavigationContext.BottomSheetNavigationContext); // Disable reason: deferring this refactor to the native team.
|
|
58
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
59
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
60
|
+
|
|
61
|
+
const setHeightDebounce = (0, _element.useCallback)((0, _compose.debounce)(setHeight, 10), [setHeight]);
|
|
59
62
|
(0, _native.useFocusEffect)((0, _element.useCallback)(() => {
|
|
60
63
|
onHandleHardwareButtonPress(() => {
|
|
61
64
|
if (navigation.canGoBack()) {
|
|
@@ -81,6 +84,8 @@ const BottomSheetNavigationScreen = _ref => {
|
|
|
81
84
|
*
|
|
82
85
|
* Related: https://github.com/WordPress/gutenberg/pull/36328#discussion_r768897546
|
|
83
86
|
*/
|
|
87
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
88
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
84
89
|
}, []));
|
|
85
90
|
(0, _native.useFocusEffect)((0, _element.useCallback)(() => {
|
|
86
91
|
if (fullScreen) {
|
|
@@ -91,7 +96,9 @@ const BottomSheetNavigationScreen = _ref => {
|
|
|
91
96
|
setHeight(heightRef.current.maxHeight);
|
|
92
97
|
}
|
|
93
98
|
|
|
94
|
-
return () => {};
|
|
99
|
+
return () => {}; // Disable reason: deferring this refactor to the native team.
|
|
100
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
101
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
95
102
|
}, [setHeight]));
|
|
96
103
|
|
|
97
104
|
const onLayout = _ref2 => {
|
|
@@ -126,7 +133,9 @@ const BottomSheetNavigationScreen = _ref => {
|
|
|
126
133
|
style: {
|
|
127
134
|
height: safeAreaBottomInset || _styles.default.scrollableContent.paddingBottom
|
|
128
135
|
}
|
|
129
|
-
}))));
|
|
136
|
+
})))); // Disable reason: deferring this refactor to the native team.
|
|
137
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
138
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
130
139
|
}, [children, isFocused, safeAreaBottomInset, listProps, name, isScrollable, isNested, onLayout]);
|
|
131
140
|
};
|
|
132
141
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js"],"names":["BottomSheetNavigationScreen","children","fullScreen","isScrollable","isNested","name","navigation","heightRef","maxHeight","isFocused","onHandleHardwareButtonPress","shouldEnableBottomSheetMaxHeight","setIsFullScreen","listProps","safeAreaBottomInset","BottomSheetContext","setHeight","BottomSheetNavigationContext","setHeightDebounce","canGoBack","goBack","current","onLayout","nativeEvent","height","layout","styles","scrollableContent","paddingBottom"],"mappings":";;;;;;;;;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js"],"names":["BottomSheetNavigationScreen","children","fullScreen","isScrollable","isNested","name","navigation","heightRef","maxHeight","isFocused","onHandleHardwareButtonPress","shouldEnableBottomSheetMaxHeight","setIsFullScreen","listProps","safeAreaBottomInset","BottomSheetContext","setHeight","BottomSheetNavigationContext","setHeightDebounce","canGoBack","goBack","current","onLayout","nativeEvent","height","layout","styles","scrollableContent","paddingBottom"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tuseIsFocused,\n\tuseNavigation,\n\tuseFocusEffect,\n} from '@react-navigation/native';\nimport { View, ScrollView, TouchableHighlight } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { BottomSheetContext } from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport { useRef, useCallback, useContext, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { BottomSheetNavigationContext } from './bottom-sheet-navigation-context';\nimport styles from './styles.scss';\n\nconst BottomSheetNavigationScreen = ( {\n\tchildren,\n\tfullScreen,\n\tisScrollable,\n\tisNested,\n\tname,\n} ) => {\n\tconst navigation = useNavigation();\n\tconst heightRef = useRef( { maxHeight: 0 } );\n\tconst isFocused = useIsFocused();\n\tconst {\n\t\tonHandleHardwareButtonPress,\n\t\tshouldEnableBottomSheetMaxHeight,\n\t\tsetIsFullScreen,\n\t\tlistProps,\n\t\tsafeAreaBottomInset,\n\t} = useContext( BottomSheetContext );\n\n\tconst { setHeight } = useContext( BottomSheetNavigationContext );\n\n\t// Disable reason: deferring this refactor to the native team.\n\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\tconst setHeightDebounce = useCallback( debounce( setHeight, 10 ), [\n\t\tsetHeight,\n\t] );\n\n\tuseFocusEffect(\n\t\tuseCallback( () => {\n\t\t\tonHandleHardwareButtonPress( () => {\n\t\t\t\tif ( navigation.canGoBack() ) {\n\t\t\t\t\tshouldEnableBottomSheetMaxHeight( true );\n\t\t\t\t\tnavigation.goBack();\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tonHandleHardwareButtonPress( null );\n\t\t\t\treturn false;\n\t\t\t} );\n\t\t\t/**\n\t\t\t * TODO: onHandleHardwareButtonPress stores a single value, which means\n\t\t\t * future invocations from sibling screens can replace the callback for\n\t\t\t * the currently active screen. Currently, the empty dependency array\n\t\t\t * passed to useCallback here is what prevents erroneous callback\n\t\t\t * replacements, but leveraging memoization to achieve this is brittle and\n\t\t\t * explicitly discouraged in the React documentation.\n\t\t\t * https://reactjs.org/docs/hooks-reference.html#usememo\n\t\t\t *\n\t\t\t * Ideally, we refactor onHandleHardwareButtonPress to manage multiple\n\t\t\t * callbacks triggered based upon which screen is currently active.\n\t\t\t *\n\t\t\t * Related: https://github.com/WordPress/gutenberg/pull/36328#discussion_r768897546\n\t\t\t */\n\t\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, [] )\n\t);\n\n\tuseFocusEffect(\n\t\tuseCallback( () => {\n\t\t\tif ( fullScreen ) {\n\t\t\t\tsetHeight( '100%' );\n\t\t\t\tsetIsFullScreen( true );\n\t\t\t} else if ( heightRef.current.maxHeight !== 0 ) {\n\t\t\t\tsetIsFullScreen( false );\n\t\t\t\tsetHeight( heightRef.current.maxHeight );\n\t\t\t}\n\t\t\treturn () => {};\n\t\t\t// Disable reason: deferring this refactor to the native team.\n\t\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, [ setHeight ] )\n\t);\n\n\tconst onLayout = ( { nativeEvent } ) => {\n\t\tif ( fullScreen ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { height } = nativeEvent.layout;\n\n\t\tif ( heightRef.current.maxHeight !== height && isFocused ) {\n\t\t\theightRef.current.maxHeight = height;\n\t\t\tsetHeightDebounce( height );\n\t\t}\n\t};\n\n\treturn useMemo( () => {\n\t\treturn isScrollable || isNested ? (\n\t\t\t<View\n\t\t\t\tonLayout={ onLayout }\n\t\t\t\ttestID={ `navigation-screen-${ name }` }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</View>\n\t\t) : (\n\t\t\t<ScrollView { ...listProps }>\n\t\t\t\t<TouchableHighlight accessible={ false }>\n\t\t\t\t\t<View\n\t\t\t\t\t\tonLayout={ onLayout }\n\t\t\t\t\t\ttestID={ `navigation-screen-${ name }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t{ ! isNested && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t\t\t\tsafeAreaBottomInset ||\n\t\t\t\t\t\t\t\t\t\tstyles.scrollableContent.paddingBottom,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableHighlight>\n\t\t\t</ScrollView>\n\t\t);\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [\n\t\tchildren,\n\t\tisFocused,\n\t\tsafeAreaBottomInset,\n\t\tlistProps,\n\t\tname,\n\t\tisScrollable,\n\t\tisNested,\n\t\tonLayout,\n\t] );\n};\n\nexport default BottomSheetNavigationScreen;\n"]}
|
|
@@ -36,7 +36,10 @@ const BottomSheetSubSheet = _ref => {
|
|
|
36
36
|
(0, _element.useEffect)(() => {
|
|
37
37
|
if (showSheet) {
|
|
38
38
|
setIsFullScreen(isFullScreen);
|
|
39
|
-
}
|
|
39
|
+
} // Disable reason: deferring this refactor to the native team.
|
|
40
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
41
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
42
|
+
|
|
40
43
|
}, [showSheet, isFullScreen]);
|
|
41
44
|
return (0, _element.createElement)(_element.Fragment, null, showSheet && (0, _element.createElement)(Fill, null, (0, _element.createElement)(_reactNative.SafeAreaView, null, children)), _element.Children.count(children) > 0 && navigationButton);
|
|
42
45
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/bottom-sheet/sub-sheet/index.native.js"],"names":["Fill","Slot","BottomSheetSubSheet","children","navigationButton","showSheet","isFullScreen","setIsFullScreen","BottomSheetContext","Children","count","screenName"],"mappings":";;;;;;;AAQA;;AALA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAM;AAAEA,EAAAA,IAAF;AAAQC,EAAAA;AAAR,IAAiB,gCAAgB,qBAAhB,CAAvB;;AAEA,MAAMC,mBAAmB,GAAG,QAKrB;AAAA,MALuB;AAC7BC,IAAAA,QAD6B;AAE7BC,IAAAA,gBAF6B;AAG7BC,IAAAA,SAH6B;AAI7BC,IAAAA;AAJ6B,GAKvB;AACN,QAAM;AAAEC,IAAAA;AAAF,MAAsB,yBAAYC,8BAAZ,CAA5B;AAEA,0BAAW,MAAM;AAChB,QAAKH,SAAL,EAAiB;AAChBE,MAAAA,eAAe,CAAED,YAAF,CAAf;AACA;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/bottom-sheet/sub-sheet/index.native.js"],"names":["Fill","Slot","BottomSheetSubSheet","children","navigationButton","showSheet","isFullScreen","setIsFullScreen","BottomSheetContext","Children","count","screenName"],"mappings":";;;;;;;AAQA;;AALA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAM;AAAEA,EAAAA,IAAF;AAAQC,EAAAA;AAAR,IAAiB,gCAAgB,qBAAhB,CAAvB;;AAEA,MAAMC,mBAAmB,GAAG,QAKrB;AAAA,MALuB;AAC7BC,IAAAA,QAD6B;AAE7BC,IAAAA,gBAF6B;AAG7BC,IAAAA,SAH6B;AAI7BC,IAAAA;AAJ6B,GAKvB;AACN,QAAM;AAAEC,IAAAA;AAAF,MAAsB,yBAAYC,8BAAZ,CAA5B;AAEA,0BAAW,MAAM;AAChB,QAAKH,SAAL,EAAiB;AAChBE,MAAAA,eAAe,CAAED,YAAF,CAAf;AACA,KAHe,CAIhB;AACA;AACA;;AACA,GAPD,EAOG,CAAED,SAAF,EAAaC,YAAb,CAPH;AASA,SACC,qDACGD,SAAS,IACV,4BAAC,IAAD,QACC,4BAAC,yBAAD,QAAgBF,QAAhB,CADD,CAFF,EAMGM,kBAASC,KAAT,CAAgBP,QAAhB,IAA6B,CAA7B,IAAkCC,gBANrC,CADD;AAUA,CA3BD;;AA6BAF,mBAAmB,CAACD,IAApB,GAA2BA,IAA3B;AACAC,mBAAmB,CAACS,UAApB,GAAiC,qBAAjC;eAEeT,mB","sourcesContent":["/**\n * External dependencies\n */\nimport { SafeAreaView } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Children, useEffect, useContext } from '@wordpress/element';\nimport { createSlotFill, BottomSheetContext } from '@wordpress/components';\n\nconst { Fill, Slot } = createSlotFill( 'BottomSheetSubSheet' );\n\nconst BottomSheetSubSheet = ( {\n\tchildren,\n\tnavigationButton,\n\tshowSheet,\n\tisFullScreen,\n} ) => {\n\tconst { setIsFullScreen } = useContext( BottomSheetContext );\n\n\tuseEffect( () => {\n\t\tif ( showSheet ) {\n\t\t\tsetIsFullScreen( isFullScreen );\n\t\t}\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ showSheet, isFullScreen ] );\n\n\treturn (\n\t\t<>\n\t\t\t{ showSheet && (\n\t\t\t\t<Fill>\n\t\t\t\t\t<SafeAreaView>{ children }</SafeAreaView>\n\t\t\t\t</Fill>\n\t\t\t) }\n\t\t\t{ Children.count( children ) > 0 && navigationButton }\n\t\t</>\n\t);\n};\n\nBottomSheetSubSheet.Slot = Slot;\nBottomSheetSubSheet.screenName = 'BottomSheetSubSheet';\n\nexport default BottomSheetSubSheet;\n"]}
|
|
@@ -49,7 +49,9 @@ const ColorSettingsMemo = (0, _element.memo)(_ref => {
|
|
|
49
49
|
} = _ref;
|
|
50
50
|
(0, _element.useEffect)(() => {
|
|
51
51
|
shouldEnableBottomSheetMaxHeight(true);
|
|
52
|
-
onHandleClosingBottomSheet(null);
|
|
52
|
+
onHandleClosingBottomSheet(null); // Disable reason: deferring this refactor to the native team.
|
|
53
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
54
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
53
55
|
}, []);
|
|
54
56
|
return (0, _element.createElement)(_components.BottomSheet.NavigationContainer, null, (0, _element.createElement)(_components.BottomSheet.NavigationScreen, {
|
|
55
57
|
name: _utils.colorsUtils.screens.palette,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/color-settings/index.native.js"],"names":["ColorSettingsMemo","defaultSettings","onHandleClosingBottomSheet","shouldEnableBottomSheetMaxHeight","onColorChange","colorValue","gradientValue","onGradientChange","onColorCleared","label","hideNavigation","colorsUtils","screens","palette","picker","gradientPicker","ColorSettings","props","route","BottomSheetContext","params"],"mappings":";;;;;;;;;AAQA;;;;AALA;;AAMA;;AAKA;;AACA;;AACA;;AAEA;;AAlBA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAOA,MAAMA,iBAAiB,GAAG,mBACzB,QAWO;AAAA,MAXL;AACDC,IAAAA,eADC;AAEDC,IAAAA,0BAFC;AAGDC,IAAAA,gCAHC;AAIDC,IAAAA,aAJC;AAKDC,IAAAA,UALC;AAMDC,IAAAA,aANC;AAODC,IAAAA,gBAPC;AAQDC,IAAAA,cARC;AASDC,IAAAA,KATC;AAUDC,IAAAA;AAVC,GAWK;AACN,0BAAW,MAAM;AAChBP,IAAAA,gCAAgC,CAAE,IAAF,CAAhC;AACAD,IAAAA,0BAA0B,CAAE,IAAF,CAA1B;AACA,
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/color-settings/index.native.js"],"names":["ColorSettingsMemo","defaultSettings","onHandleClosingBottomSheet","shouldEnableBottomSheetMaxHeight","onColorChange","colorValue","gradientValue","onGradientChange","onColorCleared","label","hideNavigation","colorsUtils","screens","palette","picker","gradientPicker","ColorSettings","props","route","BottomSheetContext","params"],"mappings":";;;;;;;;;AAQA;;;;AALA;;AAMA;;AAKA;;AACA;;AACA;;AAEA;;AAlBA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAOA,MAAMA,iBAAiB,GAAG,mBACzB,QAWO;AAAA,MAXL;AACDC,IAAAA,eADC;AAEDC,IAAAA,0BAFC;AAGDC,IAAAA,gCAHC;AAIDC,IAAAA,aAJC;AAKDC,IAAAA,UALC;AAMDC,IAAAA,aANC;AAODC,IAAAA,gBAPC;AAQDC,IAAAA,cARC;AASDC,IAAAA,KATC;AAUDC,IAAAA;AAVC,GAWK;AACN,0BAAW,MAAM;AAChBP,IAAAA,gCAAgC,CAAE,IAAF,CAAhC;AACAD,IAAAA,0BAA0B,CAAE,IAAF,CAA1B,CAFgB,CAGhB;AACA;AACA;AACA,GAND,EAMG,EANH;AAOA,SACC,4BAAC,uBAAD,CAAa,mBAAb,QACC,4BAAC,uBAAD,CAAa,gBAAb;AACC,IAAA,IAAI,EAAGS,mBAAYC,OAAZ,CAAoBC,OAD5B;AAEC,IAAA,aAAa,EAAG;AACfZ,MAAAA,eADe;AAEfG,MAAAA,aAFe;AAGfC,MAAAA,UAHe;AAIfC,MAAAA,aAJe;AAKfC,MAAAA,gBALe;AAMfC,MAAAA,cANe;AAOfC,MAAAA,KAPe;AAQfC,MAAAA;AARe;AAFjB,KAaC,4BAAC,gBAAD,OAbD,CADD,EAgBC,4BAAC,uBAAD,CAAa,gBAAb;AACC,IAAA,IAAI,EAAGC,mBAAYC,OAAZ,CAAoBE;AAD5B,KAGC,4BAAC,qBAAD,OAHD,CAhBD,EAqBC,4BAAC,uBAAD,CAAa,gBAAb;AACC,IAAA,IAAI,EAAGH,mBAAYC,OAAZ,CAAoBG;AAD5B,KAGC,4BAAC,6BAAD,OAHD,CArBD,CADD;AA6BA,CAjDwB,CAA1B;;AAmDA,SAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAC/B,QAAMC,KAAK,GAAG,uBAAd;AACA,QAAM;AAAEhB,IAAAA,0BAAF;AAA8BC,IAAAA;AAA9B,MACL,yBAAYgB,8BAAZ,CADD;AAGA,SACC,4BAAC,iBAAD;AACC,IAAA,0BAA0B,EAAGjB,0BAD9B;AAEC,IAAA,gCAAgC,EAC/BC;AAHF,KAKMc,KALN,EAMMC,KAAK,CAACE,MANZ,EADD;AAUA;;eAEcJ,a","sourcesContent":["/**\n * External dependencies\n */\nimport { useRoute } from '@react-navigation/native';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useEffect, useContext } from '@wordpress/element';\nimport { BottomSheetContext, BottomSheet } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport PickerScreen from './picker-screen';\nimport GradientPickerScreen from './gradient-picker-screen';\nimport PaletteScreen from './palette.screen';\n\nimport { colorsUtils } from './utils';\n\nconst ColorSettingsMemo = memo(\n\t( {\n\t\tdefaultSettings,\n\t\tonHandleClosingBottomSheet,\n\t\tshouldEnableBottomSheetMaxHeight,\n\t\tonColorChange,\n\t\tcolorValue,\n\t\tgradientValue,\n\t\tonGradientChange,\n\t\tonColorCleared,\n\t\tlabel,\n\t\thideNavigation,\n\t} ) => {\n\t\tuseEffect( () => {\n\t\t\tshouldEnableBottomSheetMaxHeight( true );\n\t\t\tonHandleClosingBottomSheet( null );\n\t\t\t// Disable reason: deferring this refactor to the native team.\n\t\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, [] );\n\t\treturn (\n\t\t\t<BottomSheet.NavigationContainer>\n\t\t\t\t<BottomSheet.NavigationScreen\n\t\t\t\t\tname={ colorsUtils.screens.palette }\n\t\t\t\t\tinitialParams={ {\n\t\t\t\t\t\tdefaultSettings,\n\t\t\t\t\t\tonColorChange,\n\t\t\t\t\t\tcolorValue,\n\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\tonGradientChange,\n\t\t\t\t\t\tonColorCleared,\n\t\t\t\t\t\tlabel,\n\t\t\t\t\t\thideNavigation,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<PaletteScreen />\n\t\t\t\t</BottomSheet.NavigationScreen>\n\t\t\t\t<BottomSheet.NavigationScreen\n\t\t\t\t\tname={ colorsUtils.screens.picker }\n\t\t\t\t>\n\t\t\t\t\t<PickerScreen />\n\t\t\t\t</BottomSheet.NavigationScreen>\n\t\t\t\t<BottomSheet.NavigationScreen\n\t\t\t\t\tname={ colorsUtils.screens.gradientPicker }\n\t\t\t\t>\n\t\t\t\t\t<GradientPickerScreen />\n\t\t\t\t</BottomSheet.NavigationScreen>\n\t\t\t</BottomSheet.NavigationContainer>\n\t\t);\n\t}\n);\nfunction ColorSettings( props ) {\n\tconst route = useRoute();\n\tconst { onHandleClosingBottomSheet, shouldEnableBottomSheetMaxHeight } =\n\t\tuseContext( BottomSheetContext );\n\n\treturn (\n\t\t<ColorSettingsMemo\n\t\t\tonHandleClosingBottomSheet={ onHandleClosingBottomSheet }\n\t\t\tshouldEnableBottomSheetMaxHeight={\n\t\t\t\tshouldEnableBottomSheetMaxHeight\n\t\t\t}\n\t\t\t{ ...props }\n\t\t\t{ ...route.params }\n\t\t/>\n\t);\n}\n\nexport default ColorSettings;\n"]}
|
|
@@ -52,7 +52,9 @@ const PickerScreen = () => {
|
|
|
52
52
|
isBottomSheetContentScrolling: isBottomSheetContentScrolling,
|
|
53
53
|
shouldEnableBottomSheetScroll: shouldEnableBottomSheetScroll,
|
|
54
54
|
onHandleHardwareButtonPress: onHandleHardwareButtonPress
|
|
55
|
-
});
|
|
55
|
+
}); // Disable reason: deferring this refactor to the native team.
|
|
56
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
57
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
56
58
|
}, [setColor, currentValue, isGradientColor, onShouldEnableInnerHandling, shouldEnableBottomSheetMaxHeight, onHandleClosingBottomSheet, isBottomSheetContentScrolling, shouldEnableBottomSheetScroll, onHandleHardwareButtonPress]);
|
|
57
59
|
};
|
|
58
60
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/color-settings/picker-screen.native.js"],"names":["PickerScreen","route","navigation","onShouldEnableInnerHandling","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","isBottomSheetContentScrolling","shouldEnableBottomSheetScroll","onHandleHardwareButtonPress","BottomSheetContext","setColor","currentValue","isGradientColor","params","goBack"],"mappings":";;;;;;;AAQA;;AALA;;AAMA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAGA,MAAMA,YAAY,GAAG,MAAM;AAC1B,QAAMC,KAAK,GAAG,uBAAd;AACA,QAAMC,UAAU,GAAG,4BAAnB;AACA,QAAM;AACLC,IAAAA,2BADK;AAELC,IAAAA,gCAFK;AAGLC,IAAAA,0BAHK;AAILC,IAAAA,6BAJK;AAKLC,IAAAA,6BALK;AAMLC,IAAAA;AANK,MAOF,yBAAYC,8BAAZ,CAPJ;AAQA,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,YAAZ;AAA0BC,IAAAA;AAA1B,MAA8CX,KAAK,CAACY,MAA1D;AACA,SAAO,sBAAS,MAAM;AACrB,WACC,4BAAC,wBAAD;AACC,MAAA,2BAA2B,EAAGV,2BAD/B;AAEC,MAAA,gCAAgC,EAC/BC,gCAHF;AAKC,MAAA,QAAQ,EAAGM,QALZ;AAMC,MAAA,WAAW,EAAGC,YANf;AAOC,MAAA,eAAe,EAAGC,eAPnB;AAQC,MAAA,gBAAgB,EAAGV,UAAU,CAACY,MAR/B;AASC,MAAA,0BAA0B,EAAGT,0BAT9B;AAUC,MAAA,6BAA6B,EAAGC,6BAVjC;AAWC,MAAA,6BAA6B,EAAGC,6BAXjC;AAYC,MAAA,2BAA2B,EAAGC;AAZ/B,MADD;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/color-settings/picker-screen.native.js"],"names":["PickerScreen","route","navigation","onShouldEnableInnerHandling","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","isBottomSheetContentScrolling","shouldEnableBottomSheetScroll","onHandleHardwareButtonPress","BottomSheetContext","setColor","currentValue","isGradientColor","params","goBack"],"mappings":";;;;;;;AAQA;;AALA;;AAMA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAGA,MAAMA,YAAY,GAAG,MAAM;AAC1B,QAAMC,KAAK,GAAG,uBAAd;AACA,QAAMC,UAAU,GAAG,4BAAnB;AACA,QAAM;AACLC,IAAAA,2BADK;AAELC,IAAAA,gCAFK;AAGLC,IAAAA,0BAHK;AAILC,IAAAA,6BAJK;AAKLC,IAAAA,6BALK;AAMLC,IAAAA;AANK,MAOF,yBAAYC,8BAAZ,CAPJ;AAQA,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,YAAZ;AAA0BC,IAAAA;AAA1B,MAA8CX,KAAK,CAACY,MAA1D;AACA,SAAO,sBAAS,MAAM;AACrB,WACC,4BAAC,wBAAD;AACC,MAAA,2BAA2B,EAAGV,2BAD/B;AAEC,MAAA,gCAAgC,EAC/BC,gCAHF;AAKC,MAAA,QAAQ,EAAGM,QALZ;AAMC,MAAA,WAAW,EAAGC,YANf;AAOC,MAAA,eAAe,EAAGC,eAPnB;AAQC,MAAA,gBAAgB,EAAGV,UAAU,CAACY,MAR/B;AASC,MAAA,0BAA0B,EAAGT,0BAT9B;AAUC,MAAA,6BAA6B,EAAGC,6BAVjC;AAWC,MAAA,6BAA6B,EAAGC,6BAXjC;AAYC,MAAA,2BAA2B,EAAGC;AAZ/B,MADD,CADqB,CAiBrB;AACA;AACA;AACA,GApBM,EAoBJ,CACFE,QADE,EAEFC,YAFE,EAGFC,eAHE,EAIFT,2BAJE,EAKFC,gCALE,EAMFC,0BANE,EAOFC,6BAPE,EAQFC,6BARE,EASFC,2BATE,CApBI,CAAP;AA+BA,CA3CD;;eA6CeR,Y","sourcesContent":["/**\n * External dependencies\n */\nimport { useRoute, useNavigation } from '@react-navigation/native';\n\n/**\n * WordPress dependencies\n */\nimport { useContext, useMemo } from '@wordpress/element';\nimport { BottomSheetContext } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { ColorPicker } from '../../color-picker';\n\nconst PickerScreen = () => {\n\tconst route = useRoute();\n\tconst navigation = useNavigation();\n\tconst {\n\t\tonShouldEnableInnerHandling,\n\t\tshouldEnableBottomSheetMaxHeight,\n\t\tonHandleClosingBottomSheet,\n\t\tisBottomSheetContentScrolling,\n\t\tshouldEnableBottomSheetScroll,\n\t\tonHandleHardwareButtonPress,\n\t} = useContext( BottomSheetContext );\n\tconst { setColor, currentValue, isGradientColor } = route.params;\n\treturn useMemo( () => {\n\t\treturn (\n\t\t\t<ColorPicker\n\t\t\t\tonShouldEnableInnerHandling={ onShouldEnableInnerHandling }\n\t\t\t\tshouldEnableBottomSheetMaxHeight={\n\t\t\t\t\tshouldEnableBottomSheetMaxHeight\n\t\t\t\t}\n\t\t\t\tsetColor={ setColor }\n\t\t\t\tactiveColor={ currentValue }\n\t\t\t\tisGradientColor={ isGradientColor }\n\t\t\t\tonNavigationBack={ navigation.goBack }\n\t\t\t\tonHandleClosingBottomSheet={ onHandleClosingBottomSheet }\n\t\t\t\tisBottomSheetContentScrolling={ isBottomSheetContentScrolling }\n\t\t\t\tshouldEnableBottomSheetScroll={ shouldEnableBottomSheetScroll }\n\t\t\t\tonHandleHardwareButtonPress={ onHandleHardwareButtonPress }\n\t\t\t/>\n\t\t);\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [\n\t\tsetColor,\n\t\tcurrentValue,\n\t\tisGradientColor,\n\t\tonShouldEnableInnerHandling,\n\t\tshouldEnableBottomSheetMaxHeight,\n\t\tonHandleClosingBottomSheet,\n\t\tisBottomSheetContentScrolling,\n\t\tshouldEnableBottomSheetScroll,\n\t\tonHandleHardwareButtonPress,\n\t] );\n};\n\nexport default PickerScreen;\n"]}
|
|
@@ -106,7 +106,9 @@ const ImageComponent = _ref => {
|
|
|
106
106
|
});
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
return () => isCurrent = false;
|
|
109
|
+
return () => isCurrent = false; // Disable reason: deferring this refactor to the native team.
|
|
110
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
111
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
110
112
|
}, [url]);
|
|
111
113
|
|
|
112
114
|
const onContainerLayout = event => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/image/index.native.js"],"names":["ICON_TYPE","PLACEHOLDER","RETRY","UPLOAD","IMAGE_DEFAULT_FOCAL_POINT","x","y","ImageComponent","align","alt","editButton","focalPoint","height","imageHeight","highlightSelected","isSelected","shouldUseFastImage","isUploadFailed","isUploadInProgress","mediaPickerOptions","onImageDataLoad","onSelectMediaUploadOption","openMediaOptions","resizeMode","retryMessage","retryIcon","url","shapeStyle","style","width","imageWidth","imageData","setImageData","containerSize","setContainerSize","Image","Platform","isAndroid","RNImage","FastImage","imageResizeMode","isCurrent","getSize","imgWidth","imgHeight","metaData","aspectRatio","onContainerLayout","event","nativeEvent","layout","getIcon","iconType","iconStyle","SvgIconRetry","styles","iconRetry","iconPlaceholderStyles","iconUploadStyles","icon","iconPlaceholder","iconPlaceholderDark","iconUpload","iconUploadDark","placeholderStyles","imageContainerUpload","imageContainerUploadDark","imageContainerUploadWithFocalpoint","customWidth","wide","imageContainerStyles","imageContent","focalPointContainer","imageStyles","opacity","undefined","container","alignItems","imageBorder","imageUploadingIconContainer","focalPointContent","uri","resizeMethod","imageContainer","retryContainer","customRetryIcon","uploadFailedText"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Image as RNImage, Text, View } from 'react-native';\nimport FastImage from 'react-native-fast-image';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Icon } from '@wordpress/components';\nimport { image as icon } from '@wordpress/icons';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useEffect, useState, Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getImageWithFocalPointStyles } from './utils';\nimport styles from './style.scss';\nimport SvgIconRetry from './icon-retry';\nimport ImageEditingButton from './image-editing-button';\n\nconst ICON_TYPE = {\n\tPLACEHOLDER: 'placeholder',\n\tRETRY: 'retry',\n\tUPLOAD: 'upload',\n};\n\nexport const IMAGE_DEFAULT_FOCAL_POINT = { x: 0.5, y: 0.5 };\n\nconst ImageComponent = ( {\n\talign,\n\talt,\n\teditButton = true,\n\tfocalPoint,\n\theight: imageHeight,\n\thighlightSelected = true,\n\tisSelected,\n\tshouldUseFastImage,\n\tisUploadFailed,\n\tisUploadInProgress,\n\tmediaPickerOptions,\n\tonImageDataLoad,\n\tonSelectMediaUploadOption,\n\topenMediaOptions,\n\tresizeMode,\n\tretryMessage,\n\tretryIcon,\n\turl,\n\tshapeStyle,\n\tstyle,\n\twidth: imageWidth,\n} ) => {\n\tconst [ imageData, setImageData ] = useState( null );\n\tconst [ containerSize, setContainerSize ] = useState( null );\n\n\t// Disabled for Android due to https://github.com/WordPress/gutenberg/issues/43149\n\tconst Image =\n\t\t! shouldUseFastImage || Platform.isAndroid ? RNImage : FastImage;\n\tconst imageResizeMode =\n\t\t! shouldUseFastImage || Platform.isAndroid\n\t\t\t? resizeMode\n\t\t\t: FastImage.resizeMode[ resizeMode ];\n\n\tuseEffect( () => {\n\t\tlet isCurrent = true;\n\t\tif ( url ) {\n\t\t\tRNImage.getSize( url, ( imgWidth, imgHeight ) => {\n\t\t\t\tif ( ! isCurrent ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst metaData = {\n\t\t\t\t\taspectRatio: imgWidth / imgHeight,\n\t\t\t\t\twidth: imgWidth,\n\t\t\t\t\theight: imgHeight,\n\t\t\t\t};\n\t\t\t\tsetImageData( metaData );\n\t\t\t\tif ( onImageDataLoad ) {\n\t\t\t\t\tonImageDataLoad( metaData );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t\treturn () => ( isCurrent = false );\n\t}, [ url ] );\n\n\tconst onContainerLayout = ( event ) => {\n\t\tconst { height, width } = event.nativeEvent.layout;\n\n\t\tif (\n\t\t\twidth !== 0 &&\n\t\t\theight !== 0 &&\n\t\t\t( containerSize?.width !== width ||\n\t\t\t\tcontainerSize?.height !== height )\n\t\t) {\n\t\t\tsetContainerSize( { width, height } );\n\t\t}\n\t};\n\n\tconst getIcon = ( iconType ) => {\n\t\tlet iconStyle;\n\t\tswitch ( iconType ) {\n\t\t\tcase ICON_TYPE.RETRY:\n\t\t\t\treturn (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ retryIcon || SvgIconRetry }\n\t\t\t\t\t\t{ ...styles.iconRetry }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase ICON_TYPE.PLACEHOLDER:\n\t\t\t\ticonStyle = iconPlaceholderStyles;\n\t\t\t\tbreak;\n\t\t\tcase ICON_TYPE.UPLOAD:\n\t\t\t\ticonStyle = iconUploadStyles;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn <Icon icon={ icon } { ...iconStyle } />;\n\t};\n\n\tconst iconPlaceholderStyles = usePreferredColorSchemeStyle(\n\t\tstyles.iconPlaceholder,\n\t\tstyles.iconPlaceholderDark\n\t);\n\n\tconst iconUploadStyles = usePreferredColorSchemeStyle(\n\t\tstyles.iconUpload,\n\t\tstyles.iconUploadDark\n\t);\n\n\tconst placeholderStyles = [\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.imageContainerUpload,\n\t\t\tstyles.imageContainerUploadDark\n\t\t),\n\t\tfocalPoint && styles.imageContainerUploadWithFocalpoint,\n\t\timageHeight && { height: imageHeight },\n\t];\n\n\tconst customWidth =\n\t\timageData?.width < containerSize?.width\n\t\t\t? imageData?.width\n\t\t\t: styles.wide?.width;\n\n\tconst imageContainerStyles = [\n\t\tstyles.imageContent,\n\t\t{\n\t\t\twidth:\n\t\t\t\timageWidth === styles.wide?.width ||\n\t\t\t\t( imageData &&\n\t\t\t\t\timageWidth > 0 &&\n\t\t\t\t\timageWidth < containerSize?.width )\n\t\t\t\t\t? imageWidth\n\t\t\t\t\t: customWidth,\n\t\t},\n\t\tresizeMode && { width: styles.wide?.width },\n\t\tfocalPoint && styles.focalPointContainer,\n\t];\n\n\tconst imageStyles = [\n\t\t{\n\t\t\topacity: isUploadInProgress ? 0.3 : 1,\n\t\t\theight: containerSize?.height,\n\t\t},\n\t\t! resizeMode && {\n\t\t\taspectRatio: imageData?.aspectRatio,\n\t\t},\n\t\tfocalPoint && styles.focalPoint,\n\t\tfocalPoint &&\n\t\t\tgetImageWithFocalPointStyles(\n\t\t\t\tfocalPoint,\n\t\t\t\tcontainerSize,\n\t\t\t\timageData\n\t\t\t),\n\t\t! focalPoint &&\n\t\t\timageData &&\n\t\t\tcontainerSize && {\n\t\t\t\theight:\n\t\t\t\t\timageData?.width > containerSize?.width\n\t\t\t\t\t\t? containerSize?.width / imageData?.aspectRatio\n\t\t\t\t\t\t: undefined,\n\t\t\t},\n\t\timageHeight && { height: imageHeight },\n\t\tshapeStyle,\n\t];\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tstyles.container,\n\t\t\t\t// Only set alignItems if an image exists because alignItems causes the placeholder\n\t\t\t\t// to disappear when an aligned image can't be downloaded\n\t\t\t\t// https://github.com/wordpress-mobile/gutenberg-mobile/issues/1592\n\t\t\t\timageData && align && { alignItems: align },\n\t\t\t\tstyle,\n\t\t\t] }\n\t\t\tonLayout={ onContainerLayout }\n\t\t>\n\t\t\t<View\n\t\t\t\taccessible\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\taccessibilityLabel={ alt }\n\t\t\t\taccessibilityHint={ __( 'Double tap and hold to edit' ) }\n\t\t\t\taccessibilityRole={ 'imagebutton' }\n\t\t\t\tkey={ url }\n\t\t\t\tstyle={ imageContainerStyles }\n\t\t\t>\n\t\t\t\t{ isSelected &&\n\t\t\t\t\thighlightSelected &&\n\t\t\t\t\t! ( isUploadInProgress || isUploadFailed ) && (\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.imageBorder,\n\t\t\t\t\t\t\t\t{ height: containerSize?.height },\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\n\t\t\t\t{ ! imageData ? (\n\t\t\t\t\t<View style={ placeholderStyles }>\n\t\t\t\t\t\t<View style={ styles.imageUploadingIconContainer }>\n\t\t\t\t\t\t\t{ getIcon( ICON_TYPE.UPLOAD ) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t) : (\n\t\t\t\t\t<View style={ focalPoint && styles.focalPointContent }>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\t\t{ ...( ! focalPoint && {\n\t\t\t\t\t\t\t\tresizeMethod: 'scale',\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\tresizeMode={ imageResizeMode }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t\t{ isUploadFailed && retryMessage && (\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\t\t\tstyles.retryContainer,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.retryIcon,\n\t\t\t\t\t\t\t\tretryIcon && styles.customRetryIcon,\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ getIcon( ICON_TYPE.RETRY ) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<Text style={ styles.uploadFailedText }>\n\t\t\t\t\t\t\t{ retryMessage }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t</View>\n\n\t\t\t{ editButton && isSelected && ! isUploadInProgress && (\n\t\t\t\t<ImageEditingButton\n\t\t\t\t\tonSelectMediaUploadOption={ onSelectMediaUploadOption }\n\t\t\t\t\topenMediaOptions={ openMediaOptions }\n\t\t\t\t\turl={ ! isUploadFailed && imageData && url }\n\t\t\t\t\tpickerOptions={ mediaPickerOptions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default ImageComponent;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/image/index.native.js"],"names":["ICON_TYPE","PLACEHOLDER","RETRY","UPLOAD","IMAGE_DEFAULT_FOCAL_POINT","x","y","ImageComponent","align","alt","editButton","focalPoint","height","imageHeight","highlightSelected","isSelected","shouldUseFastImage","isUploadFailed","isUploadInProgress","mediaPickerOptions","onImageDataLoad","onSelectMediaUploadOption","openMediaOptions","resizeMode","retryMessage","retryIcon","url","shapeStyle","style","width","imageWidth","imageData","setImageData","containerSize","setContainerSize","Image","Platform","isAndroid","RNImage","FastImage","imageResizeMode","isCurrent","getSize","imgWidth","imgHeight","metaData","aspectRatio","onContainerLayout","event","nativeEvent","layout","getIcon","iconType","iconStyle","SvgIconRetry","styles","iconRetry","iconPlaceholderStyles","iconUploadStyles","icon","iconPlaceholder","iconPlaceholderDark","iconUpload","iconUploadDark","placeholderStyles","imageContainerUpload","imageContainerUploadDark","imageContainerUploadWithFocalpoint","customWidth","wide","imageContainerStyles","imageContent","focalPointContainer","imageStyles","opacity","undefined","container","alignItems","imageBorder","imageUploadingIconContainer","focalPointContent","uri","resizeMethod","imageContainer","retryContainer","customRetryIcon","uploadFailedText"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Image as RNImage, Text, View } from 'react-native';\nimport FastImage from 'react-native-fast-image';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Icon } from '@wordpress/components';\nimport { image as icon } from '@wordpress/icons';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useEffect, useState, Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getImageWithFocalPointStyles } from './utils';\nimport styles from './style.scss';\nimport SvgIconRetry from './icon-retry';\nimport ImageEditingButton from './image-editing-button';\n\nconst ICON_TYPE = {\n\tPLACEHOLDER: 'placeholder',\n\tRETRY: 'retry',\n\tUPLOAD: 'upload',\n};\n\nexport const IMAGE_DEFAULT_FOCAL_POINT = { x: 0.5, y: 0.5 };\n\nconst ImageComponent = ( {\n\talign,\n\talt,\n\teditButton = true,\n\tfocalPoint,\n\theight: imageHeight,\n\thighlightSelected = true,\n\tisSelected,\n\tshouldUseFastImage,\n\tisUploadFailed,\n\tisUploadInProgress,\n\tmediaPickerOptions,\n\tonImageDataLoad,\n\tonSelectMediaUploadOption,\n\topenMediaOptions,\n\tresizeMode,\n\tretryMessage,\n\tretryIcon,\n\turl,\n\tshapeStyle,\n\tstyle,\n\twidth: imageWidth,\n} ) => {\n\tconst [ imageData, setImageData ] = useState( null );\n\tconst [ containerSize, setContainerSize ] = useState( null );\n\n\t// Disabled for Android due to https://github.com/WordPress/gutenberg/issues/43149\n\tconst Image =\n\t\t! shouldUseFastImage || Platform.isAndroid ? RNImage : FastImage;\n\tconst imageResizeMode =\n\t\t! shouldUseFastImage || Platform.isAndroid\n\t\t\t? resizeMode\n\t\t\t: FastImage.resizeMode[ resizeMode ];\n\n\tuseEffect( () => {\n\t\tlet isCurrent = true;\n\t\tif ( url ) {\n\t\t\tRNImage.getSize( url, ( imgWidth, imgHeight ) => {\n\t\t\t\tif ( ! isCurrent ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst metaData = {\n\t\t\t\t\taspectRatio: imgWidth / imgHeight,\n\t\t\t\t\twidth: imgWidth,\n\t\t\t\t\theight: imgHeight,\n\t\t\t\t};\n\t\t\t\tsetImageData( metaData );\n\t\t\t\tif ( onImageDataLoad ) {\n\t\t\t\t\tonImageDataLoad( metaData );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t\treturn () => ( isCurrent = false );\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ url ] );\n\n\tconst onContainerLayout = ( event ) => {\n\t\tconst { height, width } = event.nativeEvent.layout;\n\n\t\tif (\n\t\t\twidth !== 0 &&\n\t\t\theight !== 0 &&\n\t\t\t( containerSize?.width !== width ||\n\t\t\t\tcontainerSize?.height !== height )\n\t\t) {\n\t\t\tsetContainerSize( { width, height } );\n\t\t}\n\t};\n\n\tconst getIcon = ( iconType ) => {\n\t\tlet iconStyle;\n\t\tswitch ( iconType ) {\n\t\t\tcase ICON_TYPE.RETRY:\n\t\t\t\treturn (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ retryIcon || SvgIconRetry }\n\t\t\t\t\t\t{ ...styles.iconRetry }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase ICON_TYPE.PLACEHOLDER:\n\t\t\t\ticonStyle = iconPlaceholderStyles;\n\t\t\t\tbreak;\n\t\t\tcase ICON_TYPE.UPLOAD:\n\t\t\t\ticonStyle = iconUploadStyles;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn <Icon icon={ icon } { ...iconStyle } />;\n\t};\n\n\tconst iconPlaceholderStyles = usePreferredColorSchemeStyle(\n\t\tstyles.iconPlaceholder,\n\t\tstyles.iconPlaceholderDark\n\t);\n\n\tconst iconUploadStyles = usePreferredColorSchemeStyle(\n\t\tstyles.iconUpload,\n\t\tstyles.iconUploadDark\n\t);\n\n\tconst placeholderStyles = [\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.imageContainerUpload,\n\t\t\tstyles.imageContainerUploadDark\n\t\t),\n\t\tfocalPoint && styles.imageContainerUploadWithFocalpoint,\n\t\timageHeight && { height: imageHeight },\n\t];\n\n\tconst customWidth =\n\t\timageData?.width < containerSize?.width\n\t\t\t? imageData?.width\n\t\t\t: styles.wide?.width;\n\n\tconst imageContainerStyles = [\n\t\tstyles.imageContent,\n\t\t{\n\t\t\twidth:\n\t\t\t\timageWidth === styles.wide?.width ||\n\t\t\t\t( imageData &&\n\t\t\t\t\timageWidth > 0 &&\n\t\t\t\t\timageWidth < containerSize?.width )\n\t\t\t\t\t? imageWidth\n\t\t\t\t\t: customWidth,\n\t\t},\n\t\tresizeMode && { width: styles.wide?.width },\n\t\tfocalPoint && styles.focalPointContainer,\n\t];\n\n\tconst imageStyles = [\n\t\t{\n\t\t\topacity: isUploadInProgress ? 0.3 : 1,\n\t\t\theight: containerSize?.height,\n\t\t},\n\t\t! resizeMode && {\n\t\t\taspectRatio: imageData?.aspectRatio,\n\t\t},\n\t\tfocalPoint && styles.focalPoint,\n\t\tfocalPoint &&\n\t\t\tgetImageWithFocalPointStyles(\n\t\t\t\tfocalPoint,\n\t\t\t\tcontainerSize,\n\t\t\t\timageData\n\t\t\t),\n\t\t! focalPoint &&\n\t\t\timageData &&\n\t\t\tcontainerSize && {\n\t\t\t\theight:\n\t\t\t\t\timageData?.width > containerSize?.width\n\t\t\t\t\t\t? containerSize?.width / imageData?.aspectRatio\n\t\t\t\t\t\t: undefined,\n\t\t\t},\n\t\timageHeight && { height: imageHeight },\n\t\tshapeStyle,\n\t];\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tstyles.container,\n\t\t\t\t// Only set alignItems if an image exists because alignItems causes the placeholder\n\t\t\t\t// to disappear when an aligned image can't be downloaded\n\t\t\t\t// https://github.com/wordpress-mobile/gutenberg-mobile/issues/1592\n\t\t\t\timageData && align && { alignItems: align },\n\t\t\t\tstyle,\n\t\t\t] }\n\t\t\tonLayout={ onContainerLayout }\n\t\t>\n\t\t\t<View\n\t\t\t\taccessible\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\taccessibilityLabel={ alt }\n\t\t\t\taccessibilityHint={ __( 'Double tap and hold to edit' ) }\n\t\t\t\taccessibilityRole={ 'imagebutton' }\n\t\t\t\tkey={ url }\n\t\t\t\tstyle={ imageContainerStyles }\n\t\t\t>\n\t\t\t\t{ isSelected &&\n\t\t\t\t\thighlightSelected &&\n\t\t\t\t\t! ( isUploadInProgress || isUploadFailed ) && (\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.imageBorder,\n\t\t\t\t\t\t\t\t{ height: containerSize?.height },\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\n\t\t\t\t{ ! imageData ? (\n\t\t\t\t\t<View style={ placeholderStyles }>\n\t\t\t\t\t\t<View style={ styles.imageUploadingIconContainer }>\n\t\t\t\t\t\t\t{ getIcon( ICON_TYPE.UPLOAD ) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t) : (\n\t\t\t\t\t<View style={ focalPoint && styles.focalPointContent }>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\t\t{ ...( ! focalPoint && {\n\t\t\t\t\t\t\t\tresizeMethod: 'scale',\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\tresizeMode={ imageResizeMode }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t\t{ isUploadFailed && retryMessage && (\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\t\t\tstyles.retryContainer,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.retryIcon,\n\t\t\t\t\t\t\t\tretryIcon && styles.customRetryIcon,\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ getIcon( ICON_TYPE.RETRY ) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<Text style={ styles.uploadFailedText }>\n\t\t\t\t\t\t\t{ retryMessage }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t</View>\n\n\t\t\t{ editButton && isSelected && ! isUploadInProgress && (\n\t\t\t\t<ImageEditingButton\n\t\t\t\t\tonSelectMediaUploadOption={ onSelectMediaUploadOption }\n\t\t\t\t\topenMediaOptions={ openMediaOptions }\n\t\t\t\t\turl={ ! isUploadFailed && imageData && url }\n\t\t\t\t\tpickerOptions={ mediaPickerOptions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default ImageComponent;\n"]}
|
|
@@ -75,7 +75,9 @@ const KeyboardAvoidingView = _ref => {
|
|
|
75
75
|
safeAreaSubscription.remove();
|
|
76
76
|
keyboardShowSubscription.remove();
|
|
77
77
|
keyboardHideSubscription.remove();
|
|
78
|
-
};
|
|
78
|
+
}; // Disable reason: deferring this refactor to the native team.
|
|
79
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
80
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
79
81
|
}, []);
|
|
80
82
|
|
|
81
83
|
function onSafeAreaInsetsUpdate(_ref3) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/keyboard-avoiding-view/index.ios.js"],"names":["AnimatedKeyboardAvoidingView","Animated","createAnimatedComponent","IOSKeyboardAvoidingView","MIN_HEIGHT","KeyboardAvoidingView","parentHeight","style","withAnimatedHeight","otherProps","resizeObserver","sizes","isKeyboardOpen","setIsKeyboardOpen","safeAreaBottomInset","setSafeAreaBottomInset","height","floatingKeyboard","animatedHeight","Value","current","fullHeight","Dimensions","get","keyboardVerticalOffset","SafeArea","getSafeAreaInsetsForRootView","then","safeAreaInsets","bottom","safeAreaSubscription","addEventListener","onSafeAreaInsetsUpdate","keyboardShowSubscription","Keyboard","addListener","onKeyboardWillShow","keyboardHideSubscription","onKeyboardWillHide","remove","endCoordinates","setValue","duration","startCoordinates","keyboardIsOpenBreakpoint","animatedListenerId","value","timing","toValue","useNativeDriver","start","removeListener","marginBottom","top","styles","animatedChildStyle","defaultChildStyle","children"],"mappings":";;;;;;;;;AAeA;;;;AAZA;;AAOA;;AAMA;;AAKA;;AACA;;AAtBA;AACA;AACA;;AAUA;AACA;AACA;;AAIA;AACA;AACA;AAIA,MAAMA,4BAA4B,GAAGC,sBAASC,uBAAT,CACpCC,iCADoC,CAArC;;AAIA,MAAMC,UAAU,GAAG,EAAnB;;AAEO,MAAMC,oBAAoB,GAAG,QAK7B;AAAA,MAL+B;AACrCC,IAAAA,YADqC;AAErCC,IAAAA,KAFqC;AAGrCC,IAAAA,kBAAkB,GAAG,KAHgB;AAIrC,OAAGC;AAJkC,GAK/B;AACN,QAAM,CAAEC,cAAF,EAAkBC,KAAlB,IAA4B,iCAAlC;AACA,QAAM,CAAEC,cAAF,EAAkBC,iBAAlB,IAAwC,uBAAU,KAAV,CAA9C;AACA,QAAM,CAAEC,mBAAF,EAAuBC,sBAAvB,IAAkD,uBAAU,CAAV,CAAxD;AACA,QAAM;AAAEC,IAAAA,MAAM,GAAG;AAAX,MAAiBL,KAAK,IAAI,EAAhC;AACA,QAAMM,gBAAgB,GAAG,qCAAzB;AAEA,QAAMC,cAAc,GAAG,qBAAQ,IAAIjB,sBAASkB,KAAb,CAAoBf,UAApB,CAAR,EAA2CgB,OAAlE;;AAEA,QAAM;AAAEJ,IAAAA,MAAM,EAAEK;AAAV,MAAyBC,wBAAWC,GAAX,CAAgB,QAAhB,CAA/B;;AACA,QAAMC,sBAAsB,GAAGH,UAAU,GAAGf,YAA5C;AAEA,0BAAW,MAAM;AAChBmB,iCAASC,4BAAT,GAAwCC,IAAxC,CACC,SAA0B;AAAA,UAAxB;AAAEC,QAAAA;AAAF,OAAwB;AACzBb,MAAAA,sBAAsB,CAAEa,cAAc,CAACC,MAAjB,CAAtB;AACA,KAHF;;AAKA,UAAMC,oBAAoB,GAAGL,6BAASM,gBAAT,CAC5B,oCAD4B,EAE5BC,sBAF4B,CAA7B;;AAIA,UAAMC,wBAAwB,GAAGC,sBAASC,WAAT,CAChC,kBADgC,EAEhCC,kBAFgC,CAAjC;;AAIA,UAAMC,wBAAwB,GAAGH,sBAASC,WAAT,CAChC,kBADgC,EAEhCG,kBAFgC,CAAjC;;AAKA,WAAO,MAAM;AACZR,MAAAA,oBAAoB,CAACS,MAArB;AACAN,MAAAA,wBAAwB,CAACM,MAAzB;AACAF,MAAAA,wBAAwB,CAACE,MAAzB;AACA,KAJD;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/keyboard-avoiding-view/index.ios.js"],"names":["AnimatedKeyboardAvoidingView","Animated","createAnimatedComponent","IOSKeyboardAvoidingView","MIN_HEIGHT","KeyboardAvoidingView","parentHeight","style","withAnimatedHeight","otherProps","resizeObserver","sizes","isKeyboardOpen","setIsKeyboardOpen","safeAreaBottomInset","setSafeAreaBottomInset","height","floatingKeyboard","animatedHeight","Value","current","fullHeight","Dimensions","get","keyboardVerticalOffset","SafeArea","getSafeAreaInsetsForRootView","then","safeAreaInsets","bottom","safeAreaSubscription","addEventListener","onSafeAreaInsetsUpdate","keyboardShowSubscription","Keyboard","addListener","onKeyboardWillShow","keyboardHideSubscription","onKeyboardWillHide","remove","endCoordinates","setValue","duration","startCoordinates","keyboardIsOpenBreakpoint","animatedListenerId","value","timing","toValue","useNativeDriver","start","removeListener","marginBottom","top","styles","animatedChildStyle","defaultChildStyle","children"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tKeyboardAvoidingView as IOSKeyboardAvoidingView,\n\tAnimated,\n\tKeyboard,\n\tDimensions,\n\tView,\n} from 'react-native';\nimport SafeArea from 'react-native-safe-area';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useIsFloatingKeyboard from '../utils/use-is-floating-keyboard';\nimport styles from './styles.scss';\n\nconst AnimatedKeyboardAvoidingView = Animated.createAnimatedComponent(\n\tIOSKeyboardAvoidingView\n);\n\nconst MIN_HEIGHT = 44;\n\nexport const KeyboardAvoidingView = ( {\n\tparentHeight,\n\tstyle,\n\twithAnimatedHeight = false,\n\t...otherProps\n} ) => {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ isKeyboardOpen, setIsKeyboardOpen ] = useState( false );\n\tconst [ safeAreaBottomInset, setSafeAreaBottomInset ] = useState( 0 );\n\tconst { height = 0 } = sizes || {};\n\tconst floatingKeyboard = useIsFloatingKeyboard();\n\n\tconst animatedHeight = useRef( new Animated.Value( MIN_HEIGHT ) ).current;\n\n\tconst { height: fullHeight } = Dimensions.get( 'screen' );\n\tconst keyboardVerticalOffset = fullHeight - parentHeight;\n\n\tuseEffect( () => {\n\t\tSafeArea.getSafeAreaInsetsForRootView().then(\n\t\t\t( { safeAreaInsets } ) => {\n\t\t\t\tsetSafeAreaBottomInset( safeAreaInsets.bottom );\n\t\t\t}\n\t\t);\n\t\tconst safeAreaSubscription = SafeArea.addEventListener(\n\t\t\t'safeAreaInsetsForRootViewDidChange',\n\t\t\tonSafeAreaInsetsUpdate\n\t\t);\n\t\tconst keyboardShowSubscription = Keyboard.addListener(\n\t\t\t'keyboardWillShow',\n\t\t\tonKeyboardWillShow\n\t\t);\n\t\tconst keyboardHideSubscription = Keyboard.addListener(\n\t\t\t'keyboardWillHide',\n\t\t\tonKeyboardWillHide\n\t\t);\n\n\t\treturn () => {\n\t\t\tsafeAreaSubscription.remove();\n\t\t\tkeyboardShowSubscription.remove();\n\t\t\tkeyboardHideSubscription.remove();\n\t\t};\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [] );\n\n\tfunction onSafeAreaInsetsUpdate( { safeAreaInsets } ) {\n\t\tsetSafeAreaBottomInset( safeAreaInsets.bottom );\n\t}\n\n\tfunction onKeyboardWillShow( { endCoordinates } ) {\n\t\tsetIsKeyboardOpen( true );\n\t\tanimatedHeight.setValue( endCoordinates.height + MIN_HEIGHT );\n\t}\n\n\tfunction onKeyboardWillHide( { duration, startCoordinates } ) {\n\t\t// The startCoordinates.height is set to wrong value when we use cmd + k for hide the keyboard (Have no idea why).\n\t\t// Because of that the `setIsKeyboardOpened` is not invoked and the state of keyboard is wrong.\n\t\t// The keyboardIsOpenBreakpoint use 100 as a fallback if the startCoordinates.height is too small (cmd + k case)\n\t\tconst keyboardIsOpenBreakpoint =\n\t\t\tstartCoordinates.height > 100 ? startCoordinates.height / 3 : 100;\n\t\tconst animatedListenerId = animatedHeight.addListener(\n\t\t\t( { value } ) => {\n\t\t\t\tif ( value < keyboardIsOpenBreakpoint ) {\n\t\t\t\t\tsetIsKeyboardOpen( false );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tAnimated.timing( animatedHeight, {\n\t\t\ttoValue: MIN_HEIGHT,\n\t\t\tduration,\n\t\t\tuseNativeDriver: false,\n\t\t} ).start( () => {\n\t\t\tanimatedHeight.removeListener( animatedListenerId );\n\t\t} );\n\t}\n\n\treturn (\n\t\t<AnimatedKeyboardAvoidingView\n\t\t\t{ ...otherProps }\n\t\t\tenabled={ ! floatingKeyboard }\n\t\t\tbehavior=\"padding\"\n\t\t\tkeyboardVerticalOffset={ keyboardVerticalOffset }\n\t\t\tstyle={\n\t\t\t\twithAnimatedHeight\n\t\t\t\t\t? [\n\t\t\t\t\t\t\tstyle,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\theight: animatedHeight,\n\t\t\t\t\t\t\t\tmarginBottom: isKeyboardOpen\n\t\t\t\t\t\t\t\t\t? -safeAreaBottomInset\n\t\t\t\t\t\t\t\t\t: 0,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: style\n\t\t\t}\n\t\t>\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\t{\n\t\t\t\t\t\ttop: -height + MIN_HEIGHT,\n\t\t\t\t\t},\n\t\t\t\t\tstyles.animatedChildStyle,\n\t\t\t\t\t! withAnimatedHeight && styles.defaultChildStyle,\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ resizeObserver }\n\t\t\t\t{ otherProps.children }\n\t\t\t</View>\n\t\t</AnimatedKeyboardAvoidingView>\n\t);\n};\n\nexport default KeyboardAvoidingView;\n"]}
|
|
@@ -122,7 +122,9 @@ const LinkPicker = _ref => {
|
|
|
122
122
|
})).catch(() => setValue({
|
|
123
123
|
value,
|
|
124
124
|
clipboardUrl: ''
|
|
125
|
-
}));
|
|
125
|
+
})); // Disable reason: deferring this refactor to the native team.
|
|
126
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
127
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
126
128
|
}, []); // TODO: Localize the accessibility label.
|
|
127
129
|
// TODO: Decide on if `LinkSuggestionItemCell` with `isDirectEntry` makes sense.
|
|
128
130
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/link-picker/index.native.js"],"names":["createDirectEntry","value","type","protocol","toLowerCase","includes","startsWith","isDirectEntry","title","url","getURLFromClipboard","text","Clipboard","getString","LinkPicker","initialValue","onLinkPicked","onCancel","cancel","clipboardUrl","setValue","directEntry","pickLink","onSubmit","clear","omniCellStyle","styles","omniCell","omniCellDark","iconStyle","icon","iconDark","then","catch","safeArea","contentContainer","link","omniInput","newValue","clearIcon","cancelCircleFilled","color"],"mappings":";;;;;;;;;AASA;;AANA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AArBA;AACA;AACA;;AAIA;AACA;AACA;;AAQA;AACA;AACA;AAKA;AACO,MAAMA,iBAAiB,GAAKC,KAAF,IAAa;AAAA;;AAC7C,MAAIC,IAAI,GAAG,KAAX;AAEA,QAAMC,QAAQ,GAAG,uCAAaF,KAAb,+DAAsBG,WAAtB,OAAuC,EAAxD;;AAEA,MAAKD,QAAQ,CAACE,QAAT,CAAmB,QAAnB,CAAL,EAAqC;AACpCH,IAAAA,IAAI,GAAG,QAAP;AACA;;AAED,MAAKC,QAAQ,CAACE,QAAT,CAAmB,KAAnB,CAAL,EAAkC;AACjCH,IAAAA,IAAI,GAAG,KAAP;AACA;;AAED,MAAKD,KAAL,aAAKA,KAAL,eAAKA,KAAK,CAAEK,UAAP,CAAmB,GAAnB,CAAL,EAAgC;AAC/BJ,IAAAA,IAAI,GAAG,UAAP;AACA;;AAED,SAAO;AACNK,IAAAA,aAAa,EAAE,IADT;AAENC,IAAAA,KAAK,EAAEP,KAFD;AAGNQ,IAAAA,GAAG,EAAEP,IAAI,KAAK,KAAT,GAAiB,sBAAaD,KAAb,CAAjB,GAAwCA,KAHvC;AAINC,IAAAA;AAJM,GAAP;AAMA,CAvBM;;;;AAyBP,MAAMQ,mBAAmB,GAAG,YAAY;AACvC,QAAMC,IAAI,GAAG,MAAMC,mBAAUC,SAAV,EAAnB;AACA,SAAO,CAAC,CAAEF,IAAH,IAAW,gBAAOA,IAAP,CAAX,GAA2BA,IAA3B,GAAkC,EAAzC;AACA,CAHD;;AAKO,MAAMG,UAAU,GAAG,QAInB;AAAA,MAJqB;AAC3Bb,IAAAA,KAAK,EAAEc,YADoB;AAE3BC,IAAAA,YAF2B;AAG3BC,IAAAA,QAAQ,EAAEC;AAHiB,GAIrB;AACN,QAAM,CAAE;AAAEjB,IAAAA,KAAF;AAASkB,IAAAA;AAAT,GAAF,EAA2BC,QAA3B,IAAwC,uBAAU;AACvDnB,IAAAA,KAAK,EAAEc,YADgD;AAEvDI,IAAAA,YAAY,EAAE;AAFyC,GAAV,CAA9C;AAIA,QAAME,WAAW,GAAGrB,iBAAiB,CAAEC,KAAF,CAArC,CALM,CAON;AACA;;AACA,QAAMqB,QAAQ,GAAG,SAAqC;AAAA,QAAnC;AAAEd,MAAAA,KAAF;AAASC,MAAAA,GAAT;AAAcF,MAAAA;AAAd,KAAmC;AACrDS,IAAAA,YAAY,CAAE;AAAER,MAAAA,KAAK,EAAED,aAAa,GAAGE,GAAH,GAASD,KAA/B;AAAsCC,MAAAA;AAAtC,KAAF,CAAZ;AACA,GAFD;;AAIA,QAAMc,QAAQ,GAAG,MAAM;AACtBD,IAAAA,QAAQ,CAAED,WAAF,CAAR;AACA,GAFD;;AAIA,QAAMG,KAAK,GAAG,MAAM;AACnBJ,IAAAA,QAAQ,CAAE;AAAEnB,MAAAA,KAAK,EAAE,EAAT;AAAakB,MAAAA;AAAb,KAAF,CAAR;AACA,GAFD;;AAIA,QAAMM,aAAa,GAAG,2CACrBC,gBAAOC,QADc,EAErBD,gBAAOE,YAFc,CAAtB;AAKA,QAAMC,SAAS,GAAG,2CACjBH,gBAAOI,IADU,EAEjBJ,gBAAOK,QAFU,CAAlB;AAKA,0BAAW,MAAM;AAChBrB,IAAAA,mBAAmB,GACjBsB,IADF,CACUvB,GAAF,IAAWW,QAAQ,CAAE;AAAEnB,MAAAA,KAAF;AAASkB,MAAAA,YAAY,EAAEV;AAAvB,KAAF,CAD3B,EAEEwB,KAFF,CAES,MAAMb,QAAQ,CAAE;AAAEnB,MAAAA,KAAF;AAASkB,MAAAA,YAAY,EAAE;AAAvB,KAAF,CAFvB;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/link-picker/index.native.js"],"names":["createDirectEntry","value","type","protocol","toLowerCase","includes","startsWith","isDirectEntry","title","url","getURLFromClipboard","text","Clipboard","getString","LinkPicker","initialValue","onLinkPicked","onCancel","cancel","clipboardUrl","setValue","directEntry","pickLink","onSubmit","clear","omniCellStyle","styles","omniCell","omniCellDark","iconStyle","icon","iconDark","then","catch","safeArea","contentContainer","link","omniInput","newValue","clearIcon","cancelCircleFilled","color"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { SafeAreaView, TouchableOpacity, View } from 'react-native';\nimport Clipboard from '@react-native-clipboard/clipboard';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { BottomSheet, Icon } from '@wordpress/components';\nimport { getProtocol, isURL, prependHTTP } from '@wordpress/url';\nimport { link, cancelCircleFilled } from '@wordpress/icons';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport LinkPickerResults from './link-picker-results';\nimport NavBar from '../bottom-sheet/nav-bar';\nimport styles from './styles.scss';\n\n// This creates a search suggestion for adding a url directly.\nexport const createDirectEntry = ( value ) => {\n\tlet type = 'URL';\n\n\tconst protocol = getProtocol( value )?.toLowerCase() || '';\n\n\tif ( protocol.includes( 'mailto' ) ) {\n\t\ttype = 'mailto';\n\t}\n\n\tif ( protocol.includes( 'tel' ) ) {\n\t\ttype = 'tel';\n\t}\n\n\tif ( value?.startsWith( '#' ) ) {\n\t\ttype = 'internal';\n\t}\n\n\treturn {\n\t\tisDirectEntry: true,\n\t\ttitle: value,\n\t\turl: type === 'URL' ? prependHTTP( value ) : value,\n\t\ttype,\n\t};\n};\n\nconst getURLFromClipboard = async () => {\n\tconst text = await Clipboard.getString();\n\treturn !! text && isURL( text ) ? text : '';\n};\n\nexport const LinkPicker = ( {\n\tvalue: initialValue,\n\tonLinkPicked,\n\tonCancel: cancel,\n} ) => {\n\tconst [ { value, clipboardUrl }, setValue ] = useState( {\n\t\tvalue: initialValue,\n\t\tclipboardUrl: '',\n\t} );\n\tconst directEntry = createDirectEntry( value );\n\n\t// The title of a direct entry is displayed as the raw input value, but if we\n\t// are replacing empty text, we want to use the generated url.\n\tconst pickLink = ( { title, url, isDirectEntry } ) => {\n\t\tonLinkPicked( { title: isDirectEntry ? url : title, url } );\n\t};\n\n\tconst onSubmit = () => {\n\t\tpickLink( directEntry );\n\t};\n\n\tconst clear = () => {\n\t\tsetValue( { value: '', clipboardUrl } );\n\t};\n\n\tconst omniCellStyle = usePreferredColorSchemeStyle(\n\t\tstyles.omniCell,\n\t\tstyles.omniCellDark\n\t);\n\n\tconst iconStyle = usePreferredColorSchemeStyle(\n\t\tstyles.icon,\n\t\tstyles.iconDark\n\t);\n\n\tuseEffect( () => {\n\t\tgetURLFromClipboard()\n\t\t\t.then( ( url ) => setValue( { value, clipboardUrl: url } ) )\n\t\t\t.catch( () => setValue( { value, clipboardUrl: '' } ) );\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [] );\n\n\t// TODO: Localize the accessibility label.\n\t// TODO: Decide on if `LinkSuggestionItemCell` with `isDirectEntry` makes sense.\n\treturn (\n\t\t<SafeAreaView style={ styles.safeArea }>\n\t\t\t<NavBar>\n\t\t\t\t<NavBar.DismissButton onPress={ cancel } />\n\t\t\t\t<NavBar.Heading>{ __( 'Link to' ) }</NavBar.Heading>\n\t\t\t\t<NavBar.ApplyButton onPress={ onSubmit } />\n\t\t\t</NavBar>\n\t\t\t<View style={ styles.contentContainer }>\n\t\t\t\t<BottomSheet.Cell\n\t\t\t\t\ticon={ link }\n\t\t\t\t\tstyle={ omniCellStyle }\n\t\t\t\t\tvalueStyle={ styles.omniInput }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tplaceholder={ __( 'Search or type URL' ) }\n\t\t\t\t\tautoCapitalize=\"none\"\n\t\t\t\t\tautoCorrect={ false }\n\t\t\t\t\tkeyboardType=\"url\"\n\t\t\t\t\tonChangeValue={ ( newValue ) => {\n\t\t\t\t\t\tsetValue( { value: newValue, clipboardUrl } );\n\t\t\t\t\t} }\n\t\t\t\t\tonSubmit={ onSubmit }\n\t\t\t\t\t/* eslint-disable-next-line jsx-a11y/no-autofocus */\n\t\t\t\t\tautoFocus\n\t\t\t\t\tseparatorType=\"none\"\n\t\t\t\t>\n\t\t\t\t\t{ value !== '' && (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={ clear }\n\t\t\t\t\t\t\tstyle={ styles.clearIcon }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ cancelCircleFilled }\n\t\t\t\t\t\t\t\tfill={ iconStyle.color }\n\t\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t) }\n\t\t\t\t</BottomSheet.Cell>\n\t\t\t\t{ !! clipboardUrl && clipboardUrl !== value && (\n\t\t\t\t\t<BottomSheet.LinkSuggestionItemCell\n\t\t\t\t\t\taccessible\n\t\t\t\t\t\taccessibilityLabel={ sprintf(\n\t\t\t\t\t\t\t/* translators: Copy URL from the clipboard, https://sample.url */\n\t\t\t\t\t\t\t__( 'Copy URL from the clipboard, %s' ),\n\t\t\t\t\t\t\tclipboardUrl\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tsuggestion={ {\n\t\t\t\t\t\t\ttype: 'clipboard',\n\t\t\t\t\t\t\turl: clipboardUrl,\n\t\t\t\t\t\t\tisDirectEntry: true,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonLinkPicked={ pickLink }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ !! value && (\n\t\t\t\t\t<LinkPickerResults\n\t\t\t\t\t\tquery={ value }\n\t\t\t\t\t\tonLinkPicked={ pickLink }\n\t\t\t\t\t\tdirectEntry={ directEntry }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</SafeAreaView>\n\t);\n};\n"]}
|
|
@@ -13,10 +13,10 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
13
13
|
|
|
14
14
|
var _reactNative = require("react-native");
|
|
15
15
|
|
|
16
|
-
var _lodash = require("lodash");
|
|
17
|
-
|
|
18
16
|
var _components = require("@wordpress/components");
|
|
19
17
|
|
|
18
|
+
var _compose = require("@wordpress/compose");
|
|
19
|
+
|
|
20
20
|
var _data = require("@wordpress/data");
|
|
21
21
|
|
|
22
22
|
var _styles = _interopRequireDefault(require("./styles.scss"));
|
|
@@ -108,7 +108,7 @@ function LinkPickerResults(_ref) {
|
|
|
108
108
|
};
|
|
109
109
|
|
|
110
110
|
return {
|
|
111
|
-
fetchMoreSuggestions: (0,
|
|
111
|
+
fetchMoreSuggestions: (0, _compose.debounce)(fetchMore, REQUEST_DEBOUNCE_DELAY)
|
|
112
112
|
};
|
|
113
113
|
}, []); // Prevent setting state when unmounted.
|
|
114
114
|
|
|
@@ -122,7 +122,9 @@ function LinkPickerResults(_ref) {
|
|
|
122
122
|
fetchMoreSuggestions({
|
|
123
123
|
query,
|
|
124
124
|
links: [directEntry]
|
|
125
|
-
});
|
|
125
|
+
}); // Disable reason: deferring this refactor to the native team.
|
|
126
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
127
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
126
128
|
}, [query]);
|
|
127
129
|
|
|
128
130
|
const onEndReached = () => fetchMoreSuggestions({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/mobile/link-picker/link-picker-results.native.js"],"names":["PER_PAGE","REQUEST_DEBOUNCE_DELAY","MINIMUM_QUERY_SIZE","meetsThreshold","query","length","LinkPickerResults","onLinkPicked","directEntry","links","setLinks","hasAllSuggestions","setHasAllSuggestions","nextPage","pendingRequest","clearRequest","current","fetchMoreSuggestions","select","getSettings","fetchLinkSuggestions","search","__experimentalFetchLinkSuggestions","page","type","perPage","fetchMore","currentSuggestions","request","suggestions","onEndReached","spinner","styles","listProps","item","url","contentContainerStyle","list"],"mappings":";;;;;;;;;AAUA;;;;AAPA;;AACA;;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/mobile/link-picker/link-picker-results.native.js"],"names":["PER_PAGE","REQUEST_DEBOUNCE_DELAY","MINIMUM_QUERY_SIZE","meetsThreshold","query","length","LinkPickerResults","onLinkPicked","directEntry","links","setLinks","hasAllSuggestions","setHasAllSuggestions","nextPage","pendingRequest","clearRequest","current","fetchMoreSuggestions","select","getSettings","fetchLinkSuggestions","search","__experimentalFetchLinkSuggestions","page","type","perPage","fetchMore","currentSuggestions","request","suggestions","onEndReached","spinner","styles","listProps","item","url","contentContainerStyle","list"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { ActivityIndicator, FlatList, View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { BottomSheet, BottomSheetConsumer } from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\n\nconst PER_PAGE = 20;\nconst REQUEST_DEBOUNCE_DELAY = 400;\nconst MINIMUM_QUERY_SIZE = 2;\nconst meetsThreshold = ( query ) => MINIMUM_QUERY_SIZE <= query.length;\n\nexport default function LinkPickerResults( {\n\tquery,\n\tonLinkPicked,\n\tdirectEntry,\n} ) {\n\tconst [ links, setLinks ] = useState( [ directEntry ] );\n\tconst [ hasAllSuggestions, setHasAllSuggestions ] = useState( false );\n\tconst nextPage = useRef( 1 );\n\tconst pendingRequest = useRef();\n\tconst clearRequest = () => {\n\t\tpendingRequest.current = null;\n\t};\n\n\t// A stable debounced function to fetch suggestions and append.\n\tconst { fetchMoreSuggestions } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( 'core/block-editor' );\n\t\tconst fetchLinkSuggestions = async ( { search } ) => {\n\t\t\tif ( meetsThreshold( search ) ) {\n\t\t\t\treturn await getSettings().__experimentalFetchLinkSuggestions(\n\t\t\t\t\tsearch,\n\t\t\t\t\t{ page: nextPage.current, type: 'post', perPage: PER_PAGE }\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\t\tconst fetchMore = async ( {\n\t\t\tquery: search,\n\t\t\tlinks: currentSuggestions,\n\t\t} ) => {\n\t\t\t// Return early if we've already detected the end of data or we are\n\t\t\t// already awaiting a response.\n\t\t\tif ( hasAllSuggestions || pendingRequest.current ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst request = fetchLinkSuggestions( { search } );\n\t\t\tpendingRequest.current = request;\n\t\t\tconst suggestions = await request;\n\n\t\t\t// Only update links for the most recent request.\n\t\t\tif ( suggestions && request === pendingRequest.current ) {\n\t\t\t\t// Since we don't have the response header, we check if the results\n\t\t\t\t// are truncated to determine we've reached the end.\n\t\t\t\tif ( suggestions.length < PER_PAGE ) {\n\t\t\t\t\tsetHasAllSuggestions( true );\n\t\t\t\t}\n\t\t\t\tsetLinks( [ ...currentSuggestions, ...suggestions ] );\n\t\t\t\tnextPage.current++;\n\t\t\t}\n\n\t\t\tclearRequest();\n\t\t};\n\t\treturn {\n\t\t\tfetchMoreSuggestions: debounce( fetchMore, REQUEST_DEBOUNCE_DELAY ),\n\t\t};\n\t}, [] );\n\n\t// Prevent setting state when unmounted.\n\tuseEffect( () => clearRequest, [] );\n\n\t// Any time the query changes, we reset pagination.\n\tuseEffect( () => {\n\t\tclearRequest();\n\t\tnextPage.current = 1;\n\t\tsetHasAllSuggestions( false );\n\t\tsetLinks( [ directEntry ] );\n\t\tfetchMoreSuggestions( { query, links: [ directEntry ] } );\n\t\t// Disable reason: deferring this refactor to the native team.\n\t\t// see https://github.com/WordPress/gutenberg/pull/41166\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ query ] );\n\n\tconst onEndReached = () => fetchMoreSuggestions( { query, links } );\n\n\tconst spinner = ! hasAllSuggestions && meetsThreshold( query ) && (\n\t\t<View style={ styles.spinner }>\n\t\t\t<ActivityIndicator animating />\n\t\t</View>\n\t);\n\n\treturn (\n\t\t<BottomSheetConsumer>\n\t\t\t{ ( { listProps } ) => (\n\t\t\t\t<FlatList\n\t\t\t\t\tdata={ links }\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\trenderItem={ ( { item } ) => (\n\t\t\t\t\t\t<BottomSheet.LinkSuggestionItemCell\n\t\t\t\t\t\t\tsuggestion={ item }\n\t\t\t\t\t\t\tonLinkPicked={ onLinkPicked }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\tkeyExtractor={ ( { url, type } ) => `${ url }-${ type }` }\n\t\t\t\t\tonEndReached={ onEndReached }\n\t\t\t\t\tonEndReachedThreshold={ 0.1 }\n\t\t\t\t\tinitialNumToRender={ PER_PAGE }\n\t\t\t\t\tListFooterComponent={ spinner }\n\t\t\t\t\t{ ...listProps }\n\t\t\t\t\tcontentContainerStyle={ [\n\t\t\t\t\t\t...listProps.contentContainerStyle,\n\t\t\t\t\t\tstyles.list,\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</BottomSheetConsumer>\n\t);\n}\n"]}
|
|
@@ -71,7 +71,9 @@ const LinkPickerScreen = _ref => {
|
|
|
71
71
|
value: inputValue,
|
|
72
72
|
onLinkPicked: onLinkPicked,
|
|
73
73
|
onCancel: onCancel
|
|
74
|
-
});
|
|
74
|
+
}); // Disable reason: deferring this refactor to the native team.
|
|
75
|
+
// see https://github.com/WordPress/gutenberg/pull/41166
|
|
76
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
75
77
|
}, [inputValue]);
|
|
76
78
|
};
|
|
77
79
|
|