woocommerce/packages/js/data
Joshua T Flowers 67d9ba3b19
Add CRUD data store typing (#33680)
* Rename and export selectors for easier typing

* Add CRUD action and selector type mapping

* Add product attribute types

* Separate getItem to provide correct return type

* Rename config to type

* Add generator return types
2022-07-06 12:04:16 -04:00
..
changelog Fix export functionality on Analytic pages (#33709) 2022-07-04 12:55:39 +08:00
src Add CRUD data store typing (#33680) 2022-07-06 12:04:16 -04:00
typings Migrate `@woocommerce/data` user and use-select-with-refresh to TS (#33512) 2022-06-22 17:27:18 +08:00
.eslintrc.js Add .eslintrc config to each packages 2022-03-29 16:08:07 +08:00
.gitignore Update JS packages changelogs (#33412) 2022-06-16 10:06:31 +12:00
.npmrc Moved WCA Packages 2022-03-18 14:25:26 -07:00
CHANGELOG.md Update JS packages changelogs (#33412) 2022-06-16 10:06:31 +12:00
PREVIOUS_CHANGELOG.md Update JS packages changelogs (#33412) 2022-06-16 10:06:31 +12:00
README.md Moved WCA Packages 2022-03-18 14:25:26 -07:00
composer.json Add PR numbers to changelog entries on code freeze process (#33627) 2022-06-28 11:15:39 -07:00
composer.lock Add PR numbers to changelog entries on code freeze process (#33627) 2022-06-28 11:15:39 -07:00
jest.config.json Prefixed Private JS Packages (#33218) 2022-05-31 15:42:00 -07:00
package.json Add helper tool for making sure build, lint, and test are run through Turborepo (#33573) 2022-06-28 13:17:05 -05:00
tsconfig-cjs.json Added EOF Newlines 2022-05-10 13:35:31 -07:00
tsconfig.json Add Typescript type declarations for js packages 2022-04-15 13:50:17 +08:00

README.md

Data

WooCommerce Admin data store and utilities.

Installation

Install the module

pnpm install @woocommerce/data --save

This package assumes that your code will run in an ES2015+ environment. If you're using an environment that has limited or no support for ES2015+ such as lower versions of IE then using core-js or @babel/polyfill will add support for these methods. Learn more about it in Babel docs.

Usage

import { SETTINGS_STORE_NAME } from '@woocommerce/data';
import { useSelect } from '@wordpress/data';

function MySettings() {
	const settings = useSelect( select => {
		return select( SETTINGS_STORE_NAME ).getSettings();
	} );
	return (
		<ul>
			{ settings.map( setting => (
				<li>{ setting.name }</li>
			) ) }
		</ul>
	);
}

// Rendered in the application:
//
//  <MySettings />