Skip to content

cambustion/external-zendeskgarden-react-containers

 
 

Repository files navigation

Garden React Containers Build Status Dependency Status Coverage Status

🌱 Garden is the design system by Zendesk

Garden Containers provide an accessible foundation to start from in your journey to building a11y, keyboard navigable and RTL aware components.

Installation

See the individual package README for the React container you would like to install.

Package Version Size Dependencies
@zendeskgarden/container-accordion npm version npm version Dependency Status
@zendeskgarden/container-breadcrumb npm version npm version Dependency Status
@zendeskgarden/container-buttongroup npm version npm version Dependency Status
@zendeskgarden/container-field npm version npm version Dependency Status
@zendeskgarden/container-focusjail npm version npm version Dependency Status
@zendeskgarden/container-focusvisible npm version npm version Dependency Status
@zendeskgarden/container-grid npm version npm version Dependency Status
@zendeskgarden/container-keyboardfocus npm version npm version Dependency Status
@zendeskgarden/container-modal npm version npm version Dependency Status
@zendeskgarden/container-pagination npm version npm version Dependency Status
@zendeskgarden/container-schedule npm version npm version Dependency Status
@zendeskgarden/container-scrollregion npm version npm version Dependency Status
@zendeskgarden/container-selection npm version npm version Dependency Status
@zendeskgarden/container-slider npm version npm version Dependency Status
@zendeskgarden/container-splitter npm version npm version Dependency Status
@zendeskgarden/container-tabs npm version npm version Dependency Status
@zendeskgarden/container-tooltip npm version npm version Dependency Status
@zendeskgarden/container-treeview npm version npm version Dependency Status
@zendeskgarden/container-utilities npm version npm version Dependency Status

Usage

Packages are easily consumable with create-react-app and standard webpack configs.

All packages follow a similar installation process. Below is an example of consuming the container-schedule package.

Install dependencies

# Install garden package
npm install @zendeskgarden/container-schedule

Using as a hook

import React from 'react';
import { render } from 'react-dom';

/** Consume throughout app */
import { useSchedule } from '@zendeskgarden/container-schedule';

const App = () => {
  const elapsed = useSchedule({ duration: 1000 });
  const x = 900;
  const styles = {
    transform: translateX(`${900 * elapsed}px`)
  };

  return <div style={styles} />;
};

render(<App />, document.getElementById('root'));

Using as a render prop container

import React, { Component } from 'react';
import { render } from 'react-dom';

/** Consume throughout app */
import { ScheduleContainer } from '@zendeskgarden/container-schedule';

class App extends Component {
  render() {
    return (
      <ScheduleContainer>
        {elapsed => {
          const x = 900;
          const styles = {
            transform: translateX(`${900 * elapsed}px`)
          };

          return <div style={styles} />;
        }}
      </ScheduleContainer>
    );
  }
}

render(<App />, document.getElementById('root'));

Contribution

Thanks for your interest in Garden! Community involvement helps make our design system fresh and tasty for everyone.

Got issues with what you find here? Please feel free to create an issue.

If you'd like to take a crack at making some changes, please follow our contributing documentation for details needed to submit a PR.

Community behavior is benevolently ruled by a code of conduct. Please participate accordingly.

License

Copyright 2021 Zendesk

Licensed under the Apache License, Version 2.0

Packages

No packages published

Languages

  • TypeScript 96.1%
  • JavaScript 3.8%
  • Other 0.1%