atlascamp 2010: needs more jquery - using advanced javascript in atlassian plugins - zach davis

89
Needs more jQuery Using advanced JavaScript in Atlassian Plugins Tuesday, November 2, 2010

Upload: atlassian

Post on 17-May-2015

990 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Needs more jQueryUsing advanced JavaScript in

Atlassian Plugins

Tuesday, November 2, 2010

Page 2: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Needs more jQueryUsing advanced JavaScript in

Atlassian Plugins

Tuesday, November 2, 2010

Page 3: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Needs more jQueryUsing jQuery and AUI to create better plugins with less work

Tuesday, November 2, 2010

Page 4: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUIAtlassian User Interface

Tuesday, November 2, 2010

Page 5: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

“owie”Atlassian User Interface

Tuesday, November 2, 2010

Page 6: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Tuesday, November 2, 2010

Page 7: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Tuesday, November 2, 2010

Page 8: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dropdown

Tuesday, November 2, 2010

Page 9: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dropdown

Tuesday, November 2, 2010

Page 10: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dropdown

Tuesday, November 2, 2010

Page 11: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dropdown

Tuesday, November 2, 2010

Page 12: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Tuesday, November 2, 2010

Page 13: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dialog

Tuesday, November 2, 2010

Page 14: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI DialogAUI Forms

Tuesday, November 2, 2010

Page 15: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Toolbar

Tuesday, November 2, 2010

Page 16: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dialog

Tuesday, November 2, 2010

Page 17: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dialog

Tuesday, November 2, 2010

Page 18: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dialog

Tuesday, November 2, 2010

Page 19: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dialog

Not in AUI

Tuesday, November 2, 2010

Page 20: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI Dialog

Not in AUI. Yet.

Tuesday, November 2, 2010

Page 21: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI is driving a lot of our UI innovation.

Tuesday, November 2, 2010

Page 22: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI is driving a lot of our UI innovation.

It can drive yours too.

Tuesday, November 2, 2010

Page 23: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Who am I?

• Zach Davis

• Front-end Developer

• Integration Team

• San Francisco

Tuesday, November 2, 2010

Page 24: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where

?

Tuesday, November 2, 2010

Page 25: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What the Atlassian User Interface library is

Why

How

Where

?

Tuesday, November 2, 2010

Page 26: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why we chose jQuery

How

Where

?

Tuesday, November 2, 2010

Page 27: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why you should choose AUI

How

Where

?

Tuesday, November 2, 2010

Page 28: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How to use AUI

Where

?

Tuesday, November 2, 2010

Page 29: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where AUI is now

?

Tuesday, November 2, 2010

Page 30: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where AUI is headed

?

Tuesday, November 2, 2010

Page 31: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where

Questions?

Tuesday, November 2, 2010

Page 32: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What is the Atlassian User Interface library?

Why

How

Where

?

Tuesday, November 2, 2010

Page 33: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

“The Atlassian User Interface (AUI) is a set of reusable, cross-browser tested, high-quality JavaScript and CSS UI components. We developed AUI for use in Atlassian applications.”Tuesday, November 2, 2010

Page 34: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

?Tuesday, November 2, 2010

Page 35: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

less work, more awesome

Tuesday, November 2, 2010

Page 36: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What AUI provides• Wraps jQuery

• JS components

• JS utilities

• Ready to go CSS

Tuesday, November 2, 2010

Page 37: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI vs AJS

Tuesday, November 2, 2010

Page 38: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI vs AJS

Tuesday, November 2, 2010

Page 39: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AUI vs AJS

Tuesday, November 2, 2010

Page 40: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dialog

Tuesday, November 2, 2010

Page 41: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dialog

Tuesday, November 2, 2010

Page 42: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Inline Dialog

Tuesday, November 2, 2010

Page 43: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Inline Dialog

Tuesday, November 2, 2010

Page 44: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dropdown

Tuesday, November 2, 2010

Page 45: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dropdown

Tuesday, November 2, 2010

Page 46: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Forms

Tuesday, November 2, 2010

Page 47: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Forms

Tuesday, November 2, 2010

Page 48: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why did Atlassian choose jQuery?

How

Where

?

Tuesday, November 2, 2010

Page 49: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.

“”Tuesday, November 2, 2010

Page 50: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

?Tuesday, November 2, 2010

Page 51: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Tuesday, November 2, 2010

Page 52: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

less work, more awesome

Tuesday, November 2, 2010

Page 53: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Why Atlassian chose jQueryJanuary, 2008

Tuesday, November 2, 2010

Page 54: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why should you care?

How

Where

?

Tuesday, November 2, 2010

Page 55: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Consistent look and feel

Tuesday, November 2, 2010

Page 56: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Ready to use components

Tuesday, November 2, 2010

Page 57: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Helpful utilities

Tuesday, November 2, 2010

Page 58: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How do you use AUI?

Where

?

Tuesday, November 2, 2010

Page 59: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dialog

Tuesday, November 2, 2010

Page 60: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dialog

var popup = new AJS.Dialog(400, 200, "my-popup");popup.show( );

Tuesday, November 2, 2010

Page 61: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Inline Dialog

Tuesday, November 2, 2010

Page 62: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Inline Dialog

AJS.InlineDialog(AJS.$("#my-trigger"), 1, "dialog-content.html");

Tuesday, November 2, 2010

Page 63: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dropdown

Tuesday, November 2, 2010

Page 64: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Dropdown

AJS.$("#my-dropdown").dropdown("Standard");

Tuesday, November 2, 2010

Page 65: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AJS.format

Tuesday, November 2, 2010

Page 66: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

AJS.format("Showing entries {0} - {1} of {2}", 0, 10, 11);

AJS.format

Tuesday, November 2, 2010

Page 67: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

>> Showing entries 0 - 10 of 11

AJS.format

AJS.format("Showing entries {0} - {1} of {2}", 0, 10, 11);

Tuesday, November 2, 2010

Page 68: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Keyboard shortcuts

Tuesday, November 2, 2010

Page 69: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Keyboard shortcuts

AJS.whenIType("cl").click("#test-click");

Tuesday, November 2, 2010

Page 70: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Keyboard shortcuts

AJS.whenIType("cl").click("#test-click");

AJS.whenIType("sf").execute(someFunction);

Tuesday, November 2, 2010

Page 71: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Sounds great...

Tuesday, November 2, 2010

Page 72: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Sounds great...

...but how do I get it in my plugin?

Tuesday, November 2, 2010

Page 73: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Sounds great...

$webResourceManager.requireResource("com.atlassian.auiplugin:ajs")

...but how do I get it in my plugin?

Tuesday, November 2, 2010

Page 74: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

atlassian-plugin.xml

<web-resource name="Fake plugin resources" key="fake-resources"><dependency>com.atlassian.auiplugin:ajs</dependency><resource type="download" name="fake-plugin.js" location="js/fake-plugin.js"/><resource type="download" name="fake-plugin.css" location="css/fake-plugin.css"/>

</web-resource>

Tuesday, November 2, 2010

Page 75: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

atlassian-plugin.xml

<web-resource name="Fake plugin resources" key="fake-resources"><dependency>com.atlassian.auiplugin:ajs</dependency><resource type="download" name="fake-plugin.js" location="js/fake-plugin.js"/><resource type="download" name="fake-plugin.css" location="css/fake-plugin.css"/>

</web-resource>

fake-plugin.vm

$webResourceManager.requireResource("com.atlassian.example:fake-resources")

Tuesday, November 2, 2010

Page 76: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How do you use AUI?

Where

?

Tuesday, November 2, 2010

Page 77: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where is AUI now?

?

Tuesday, November 2, 2010

Page 79: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Public vs Private Components

Tuesday, November 2, 2010

Page 80: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Public vs Private Components

Tuesday, November 2, 2010

Page 81: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Public vs Private Components

Tuesday, November 2, 2010

Page 82: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where is AUI headed?

?

Tuesday, November 2, 2010

Page 83: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

More formalized processes

• Testing

• Builds

• Infrastructure

• Dedicated resources

Tuesday, November 2, 2010

Page 84: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Community contributions

Tuesday, November 2, 2010

Page 85: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

Community feedback

Tuesday, November 2, 2010

Page 86: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where

?

Tuesday, November 2, 2010

Page 87: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

What

Why

How

Where

Questions?

Tuesday, November 2, 2010

Page 89: AtlasCamp 2010: Needs more jQuery - Using advanced Javascript in Atlassian Plugins - Zach Davis

More information

• Developer Docs: http://confluence.atlassian.com/display/AUI/Atlassian+User+Interface+(AUI)+Developer+Documentation

• Javadocs: http://docs.atlassian.com/aui/3.0/

• Demos: https://studio.atlassian.com/source/browse/~raw,r=HEAD/AJS/trunk/auiplugin/src/demo/index.html (Studio login required)

Tuesday, November 2, 2010