├── .gitignore
├── .travis.yml
├── BANNER.txt
├── CHANGELOG.md
├── CNAME
├── CONTRIBUTING.md
├── LICENSE.txt
├── README.md
├── RELEASE.md
├── apple-ipad-icon@2x.png
├── apple-iphone-icon@2x.png
├── bower.json
├── dist
├── strand-action
│ └── strand-action.html
├── strand-ajax
│ └── strand-ajax.html
├── strand-array-munge
│ └── strand-array-munge.html
├── strand-autocomplete
│ └── strand-autocomplete.html
├── strand-box
│ └── strand-box.html
├── strand-button
│ └── strand-button.html
├── strand-calendar
│ └── strand-calendar.html
├── strand-checkbox
│ └── strand-checkbox.html
├── strand-collection
│ └── strand-collection.html
├── strand-componentizer
│ └── strand-componentizer.html
├── strand-currency
│ └── strand-currency.html
├── strand-datepicker-panel
│ └── strand-datepicker-panel.html
├── strand-datepicker
│ └── strand-datepicker.html
├── strand-dialog
│ └── strand-dialog.html
├── strand-docs-nav
│ └── strand-docs-nav.html
├── strand-docs-shell
│ └── strand-docs-shell.html
├── strand-drawer
│ └── strand-drawer.html
├── strand-dropdown
│ └── strand-dropdown.html
├── strand-fetch
│ └── strand-fetch.html
├── strand-file-upload
│ └── strand-file-upload.html
├── strand-footer
│ └── strand-footer.html
├── strand-form-message
│ └── strand-form-message.html
├── strand-form
│ └── strand-form.html
├── strand-grid-column
│ └── strand-grid-column.html
├── strand-grid-item
│ └── strand-grid-item.html
├── strand-grid
│ └── strand-grid.html
├── strand-group
│ └── strand-group.html
├── strand-guide-canvas
│ └── strand-guide-canvas.html
├── strand-guide-tooltip
│ └── strand-guide-tooltip.html
├── strand-guide
│ └── strand-guide.html
├── strand-header
│ └── strand-header.html
├── strand-highlight
│ └── strand-highlight.html
├── strand-icon
│ └── strand-icon.html
├── strand-inline-box
│ └── strand-inline-box.html
├── strand-input-mask
│ └── strand-input-mask.html
├── strand-input
│ └── strand-input.html
├── strand-item-recycler
│ └── strand-item-recycler.html
├── strand-list-item
│ └── strand-list-item.html
├── strand-loader
│ └── strand-loader.html
├── strand-localstore
│ └── strand-localstore.html
├── strand-menu
│ └── strand-menu.html
├── strand-modal
│ └── strand-modal.html
├── strand-model
│ └── strand-model.html
├── strand-popover
│ └── strand-popover.html
├── strand-progress-bar
│ └── strand-progress-bar.html
├── strand-pulldown-button
│ └── strand-pulldown-button.html
├── strand-radio
│ └── strand-radio.html
├── strand-repeater-row
│ └── strand-repeater-row.html
├── strand-repeater
│ └── strand-repeater.html
├── strand-scroll-panel
│ └── strand-scroll-panel.html
├── strand-scrollbar-y
│ └── strand-scrollbar-y.html
├── strand-spinner
│ └── strand-spinner.html
├── strand-sync
│ └── strand-sync.html
├── strand-tab
│ └── strand-tab.html
├── strand-tabs
│ └── strand-tabs.html
├── strand-template-finder
│ └── strand-template-finder.html
├── strand-test-form-view
│ └── strand-test-form-view.html
├── strand-textarea
│ └── strand-textarea.html
├── strand-timeformat
│ └── strand-timeformat.html
├── strand-timepicker
│ └── strand-timepicker.html
├── strand-tooltip
│ └── strand-tooltip.html
├── strand-view-manager
│ └── strand-view-manager.html
├── strand-wizard-ribbon
│ └── strand-wizard-ribbon.html
├── strand-wizard
│ └── strand-wizard.html
└── strand.html
├── docs
├── CNAME
├── article_template.html
├── articles
│ ├── data_comps_creating_adapters.md
│ ├── data_comps_intro.md
│ ├── data_comps_using_ajax.md
│ ├── data_comps_using_sync.md
│ ├── getting_started.md
│ ├── grid_config.md
│ ├── grid_custom_grid_item.md
│ ├── grid_data_integration.md
│ ├── grid_intro.md
│ ├── manifest.json
│ ├── migration_guide.md
│ └── repeater.md
├── component_template.html
├── docs.scss
├── footer.html
├── head.html
├── images
│ ├── apple-touch-icons.sketch
│ ├── mediamath-logo.svg
│ ├── mediamath-technology-logo.svg
│ ├── spot-graphic-01.svg
│ ├── spot-graphic-02.svg
│ ├── spot-graphic-03.svg
│ ├── strand-logo-only.svg
│ └── strand-logo.svg
├── index.html
├── sidebar.html
└── template.html
├── favicon.ico
├── gulp
├── env.js
├── tasks
│ ├── build.js
│ ├── docs.js
│ ├── live.js
│ └── release.js
└── templates
│ ├── font_template.html
│ ├── index_template.html
│ ├── lib_color.js
│ ├── lib_index_template.html
│ ├── lib_loader.js
│ ├── lib_template.html
│ ├── lib_version.html
│ └── style_module_template.html
├── gulpfile.js
├── package.json
├── src
├── shared
│ ├── behaviors
│ │ ├── autoclosable.html
│ │ ├── autoclosable.json
│ │ ├── autotogglable.html
│ │ ├── autotogglable.json
│ │ ├── closable.html
│ │ ├── closable.json
│ │ ├── collection.html
│ │ ├── columnable.html
│ │ ├── columnable.json
│ │ ├── debouncable.html
│ │ ├── debouncable.json
│ │ ├── domgettable.html
│ │ ├── domgettable.json
│ │ ├── dommutable.html
│ │ ├── dommutable.json
│ │ ├── domsyncable.html
│ │ ├── domsyncable.json
│ │ ├── falsifiable.html
│ │ ├── falsifiable.json
│ │ ├── followable.html
│ │ ├── followable.json
│ │ ├── jqueryable.html
│ │ ├── jqueryable.json
│ │ ├── keyboardable.html
│ │ ├── keyboardable.json
│ │ ├── keyselectable.html
│ │ ├── keyselectable.json
│ │ ├── lightdomgettable.html
│ │ ├── lightdomgettable.json
│ │ ├── mixinfindable.html
│ │ ├── model.html
│ │ ├── mousewheelable.html
│ │ ├── mousewheelable.json
│ │ ├── nonscrollable.html
│ │ ├── nonscrollable.json
│ │ ├── pageable.html
│ │ ├── pageable.json
│ │ ├── poolusable.html
│ │ ├── positionable-dropdown.html
│ │ ├── positionable-dropdown.json
│ │ ├── positionable-panel.html
│ │ ├── positionable-panel.json
│ │ ├── positionable.html
│ │ ├── positionable.json
│ │ ├── refable.html
│ │ ├── refable.json
│ │ ├── resizable.html
│ │ ├── resizable.json
│ │ ├── resolvable.html
│ │ ├── resolvable.json
│ │ ├── selectable.html
│ │ ├── selectable.json
│ │ ├── sizeresponsible.html
│ │ ├── sizeresponsible.json
│ │ ├── stackable.html
│ │ ├── stackable.json
│ │ ├── stampbindable.html
│ │ ├── stampbindable.json
│ │ ├── stylable.html
│ │ ├── stylable.json
│ │ ├── templatecomponentizable.html
│ │ ├── templatefindable.html
│ │ ├── validatable.html
│ │ ├── validatable.json
│ │ ├── windownotifier.html
│ │ └── windownotifier.json
│ ├── fonts
│ │ ├── a
│ │ │ ├── arimo-bold.eot
│ │ │ ├── arimo-bold.svg
│ │ │ ├── arimo-bold.ttf
│ │ │ ├── arimo-bold.woff
│ │ │ ├── arimo-bolditalic.eot
│ │ │ ├── arimo-bolditalic.svg
│ │ │ ├── arimo-bolditalic.ttf
│ │ │ ├── arimo-bolditalic.woff
│ │ │ ├── arimo-italic.eot
│ │ │ ├── arimo-italic.svg
│ │ │ ├── arimo-italic.ttf
│ │ │ ├── arimo-italic.woff
│ │ │ ├── arimo-regular.eot
│ │ │ ├── arimo-regular.svg
│ │ │ ├── arimo-regular.ttf
│ │ │ └── arimo-regular.woff
│ │ ├── fonts.scss
│ │ └── icon
│ │ │ └── icomoon.woff
│ ├── js
│ │ ├── Colors.js
│ │ ├── ajax.html
│ │ ├── ajaxapiplugin.html
│ │ ├── ajaxbusterplugin.html
│ │ ├── ajaxcsrfplugin.html
│ │ ├── ajaxpageplugin.html
│ │ ├── ajaxplugin.html
│ │ ├── behaviorutils.html
│ │ ├── bitmask.html
│ │ ├── colors.html
│ │ ├── continuum.html
│ │ ├── datautils.html
│ │ ├── datetimeutils.html
│ │ ├── es6-promise.html
│ │ ├── eventdispatcher.html
│ │ ├── fetch.html
│ │ ├── fontloader.html
│ │ ├── measure.html
│ │ ├── moment.html
│ │ ├── momentrange.html
│ │ ├── pinkyswear.html
│ │ ├── point.html
│ │ ├── rectangle.html
│ │ ├── recycler.html
│ │ ├── request.html
│ │ ├── requestqueue.html
│ │ ├── snake.html
│ │ ├── storage.html
│ │ ├── sync.html
│ │ ├── validator.html
│ │ └── zousan.html
│ ├── sass
│ │ ├── _button.scss
│ │ ├── _color.scss
│ │ ├── _disable.scss
│ │ ├── _docs_theme.scss
│ │ ├── _dropdown.scss
│ │ ├── _fonts.scss
│ │ ├── _grid.scss
│ │ ├── _mixins.scss
│ │ ├── _sizeresponsible.scss
│ │ ├── _text.scss
│ │ └── _textinput.scss
│ └── svg
│ │ ├── action.svg
│ │ ├── actions.svg
│ │ ├── alerts.svg
│ │ ├── all-channels.svg
│ │ ├── apps.svg
│ │ ├── arrow-up.svg
│ │ ├── audience.svg
│ │ ├── bar-chart.svg
│ │ ├── block-arrow.svg
│ │ ├── budget-flight.svg
│ │ ├── calendar.svg
│ │ ├── campaigns.svg
│ │ ├── carat-line.svg
│ │ ├── carat.svg
│ │ ├── card.svg
│ │ ├── certificate.svg
│ │ ├── changelog.svg
│ │ ├── charity.svg
│ │ ├── chart-dashed-2.svg
│ │ ├── chart-dashed.svg
│ │ ├── chart.svg
│ │ ├── check-alt.svg
│ │ ├── check.svg
│ │ ├── circle-arrow.svg
│ │ ├── clock.svg
│ │ ├── companion.svg
│ │ ├── contextual.svg
│ │ ├── creatives.svg
│ │ ├── cycle-arrow.svg
│ │ ├── day-part.svg
│ │ ├── deals.svg
│ │ ├── delete.svg
│ │ ├── details.svg
│ │ ├── display.svg
│ │ ├── dmp.svg
│ │ ├── document.svg
│ │ ├── dots.svg
│ │ ├── download.svg
│ │ ├── drag-drop.svg
│ │ ├── duplicate.svg
│ │ ├── edit.svg
│ │ ├── event-marker.svg
│ │ ├── exclude.svg
│ │ ├── expand-all.svg
│ │ ├── fail.svg
│ │ ├── favorite.svg
│ │ ├── filter.svg
│ │ ├── geo-map.svg
│ │ ├── geo-tag.svg
│ │ ├── grid-table.svg
│ │ ├── group.svg
│ │ ├── health.svg
│ │ ├── include-outline.svg
│ │ ├── include.svg
│ │ ├── info.svg
│ │ ├── jump-to.svg
│ │ ├── left-right-arrow.svg
│ │ ├── lego.svg
│ │ ├── line-chart-2nd.svg
│ │ ├── line-chart.svg
│ │ ├── lock.svg
│ │ ├── mail.svg
│ │ ├── markets.svg
│ │ ├── minus.svg
│ │ ├── my-data.svg
│ │ ├── partial-include.svg
│ │ ├── partial.svg
│ │ ├── pause.svg
│ │ ├── pie-chart.svg
│ │ ├── pixel-user.svg
│ │ ├── pixels.svg
│ │ ├── play.svg
│ │ ├── player.svg
│ │ ├── plus.svg
│ │ ├── preview.svg
│ │ ├── question.svg
│ │ ├── quick-edit.svg
│ │ ├── refresh.svg
│ │ ├── reporting.svg
│ │ ├── scatter-plot.svg
│ │ ├── search.svg
│ │ ├── site-list.svg
│ │ ├── sort.svg
│ │ ├── success.svg
│ │ ├── supply-node.svg
│ │ ├── supply.svg
│ │ ├── three-pas-adserver.svg
│ │ ├── tools.svg
│ │ ├── tracker.svg
│ │ ├── unlock.svg
│ │ ├── up-arrow.svg
│ │ ├── upload.svg
│ │ ├── user.svg
│ │ ├── video.svg
│ │ ├── warning.svg
│ │ ├── wireless.svg
│ │ └── xml.svg
├── strand-action
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-action.html
│ ├── strand-action.js
│ └── strand-action.scss
├── strand-ajax
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-ajax.html
│ ├── strand-ajax.js
│ └── strand-ajax.scss
├── strand-array-munge
│ ├── index.html
│ ├── strand-array-munge.html
│ ├── strand-array-munge.js
│ └── strand-array-munge.scss
├── strand-autocomplete
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-autocomplete.html
│ ├── strand-autocomplete.js
│ └── strand-autocomplete.scss
├── strand-box
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-box.html
│ ├── strand-box.js
│ └── strand-box.scss
├── strand-button
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-button.html
│ ├── strand-button.js
│ └── strand-button.scss
├── strand-calendar
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── pointer-right.svg
│ ├── strand-calendar.html
│ ├── strand-calendar.js
│ └── strand-calendar.scss
├── strand-checkbox
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-checkbox.html
│ ├── strand-checkbox.js
│ └── strand-checkbox.scss
├── strand-collection
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-collection.html
│ ├── strand-collection.js
│ └── strand-collection.scss
├── strand-componentizer
│ ├── index.html
│ ├── strand-componentizer.html
│ └── strand-componentizer.js
├── strand-currency
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-currency.html
│ ├── strand-currency.js
│ └── strand-currency.scss
├── strand-datepicker-panel
│ ├── index.html
│ ├── strand-datepicker-panel.html
│ ├── strand-datepicker-panel.js
│ └── strand-datepicker-panel.scss
├── strand-datepicker
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-datepicker.html
│ ├── strand-datepicker.js
│ └── strand-datepicker.scss
├── strand-dialog
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-dialog.html
│ ├── strand-dialog.js
│ └── strand-dialog.scss
├── strand-docs-nav
│ ├── index.html
│ ├── strand-docs-nav.html
│ ├── strand-docs-nav.js
│ └── strand-docs-nav.scss
├── strand-docs-shell
│ ├── index.html
│ ├── strand-docs-shell.html
│ ├── strand-docs-shell.js
│ └── strand-docs-shell.scss
├── strand-drawer
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-drawer.html
│ ├── strand-drawer.js
│ └── strand-drawer.scss
├── strand-dropdown
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-dropdown.html
│ ├── strand-dropdown.js
│ ├── strand-dropdown.scss
│ └── wrapped.html
├── strand-fetch
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-fetch.html
│ ├── strand-fetch.js
│ └── strand-fetch.scss
├── strand-file-upload
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-file-upload.html
│ ├── strand-file-upload.js
│ └── strand-file-upload.scss
├── strand-footer
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-footer.html
│ ├── strand-footer.js
│ └── strand-footer.scss
├── strand-form-message
│ ├── index.html
│ ├── strand-form-message.html
│ ├── strand-form-message.js
│ └── strand-form-message.scss
├── strand-form
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-form.html
│ ├── strand-form.js
│ └── strand-form.scss
├── strand-grid-column
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-grid-column.html
│ ├── strand-grid-column.js
│ └── strand-grid-column.scss
├── strand-grid-item
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-grid-item.html
│ ├── strand-grid-item.js
│ └── strand-grid-item.scss
├── strand-grid
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── mixin1.html
│ ├── mixin2.html
│ ├── mixin3.html
│ ├── resetter.html
│ ├── strand-grid.html
│ ├── strand-grid.js
│ └── strand-grid.scss
├── strand-group
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-group.html
│ ├── strand-group.js
│ └── strand-group.scss
├── strand-guide-canvas
│ ├── index.html
│ ├── strand-guide-canvas.html
│ ├── strand-guide-canvas.js
│ └── strand-guide-canvas.scss
├── strand-guide-tooltip
│ ├── index.html
│ ├── strand-guide-tooltip.html
│ ├── strand-guide-tooltip.js
│ └── strand-guide-tooltip.scss
├── strand-guide
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-guide.html
│ ├── strand-guide.js
│ └── strand-guide.scss
├── strand-header
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-header.html
│ ├── strand-header.js
│ └── strand-header.scss
├── strand-highlight
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-highlight.html
│ ├── strand-highlight.js
│ └── strand-highlight.scss
├── strand-icon
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-icon.html
│ ├── strand-icon.js
│ └── strand-icon.scss
├── strand-inline-box
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-inline-box.html
│ ├── strand-inline-box.js
│ └── strand-inline-box.scss
├── strand-input-mask
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-input-mask.html
│ ├── strand-input-mask.js
│ └── strand-input-mask.scss
├── strand-input
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-input.html
│ ├── strand-input.js
│ └── strand-input.scss
├── strand-item-recycler
│ ├── index.html
│ ├── strand-item-recycler.html
│ ├── strand-item-recycler.js
│ ├── strand-item-recycler.scss
│ └── template.html
├── strand-list-item
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-list-item.html
│ ├── strand-list-item.js
│ └── strand-list-item.scss
├── strand-loader
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-loader.html
│ ├── strand-loader.js
│ └── strand-loader.scss
├── strand-localstore
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-localstore.html
│ ├── strand-localstore.js
│ └── strand-localstore.scss
├── strand-menu
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-menu.html
│ ├── strand-menu.js
│ └── strand-menu.scss
├── strand-modal
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-modal.html
│ ├── strand-modal.js
│ └── strand-modal.scss
├── strand-model
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-model.html
│ ├── strand-model.js
│ └── strand-model.scss
├── strand-popover
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-popover.html
│ ├── strand-popover.js
│ └── strand-popover.scss
├── strand-progress-bar
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-progress-bar.html
│ ├── strand-progress-bar.js
│ └── strand-progress-bar.scss
├── strand-pulldown-button
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-pulldown-button.html
│ ├── strand-pulldown-button.js
│ └── strand-pulldown-button.scss
├── strand-radio
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-radio.html
│ ├── strand-radio.js
│ └── strand-radio.scss
├── strand-repeater-row
│ ├── strand-repeater-row.html
│ ├── strand-repeater-row.js
│ └── strand-repeater-row.scss
├── strand-repeater
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-repeater.html
│ ├── strand-repeater.js
│ └── strand-repeater.scss
├── strand-scroll-panel
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-scroll-panel.html
│ ├── strand-scroll-panel.js
│ └── strand-scroll-panel.scss
├── strand-scrollbar-y
│ ├── strand-scrollbar-y.html
│ ├── strand-scrollbar-y.js
│ └── strand-scrollbar-y.scss
├── strand-spinner
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-spinner.html
│ ├── strand-spinner.js
│ └── strand-spinner.scss
├── strand-sync
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-sync.html
│ ├── strand-sync.js
│ ├── strand-sync.json
│ └── strand-sync.scss
├── strand-tab
│ ├── doc.json
│ ├── example.html
│ ├── strand-tab.html
│ ├── strand-tab.js
│ └── strand-tab.scss
├── strand-tabs
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-tabs.html
│ ├── strand-tabs.js
│ ├── strand-tabs.scss
│ ├── tab-content-alt.html
│ └── tab-content.html
├── strand-template-finder
│ ├── index.html
│ ├── strand-template-finder.html
│ ├── strand-template-finder.js
│ ├── strand-template-finder.scss
│ └── template.html
├── strand-test-form-view
│ ├── index.html
│ ├── strand-test-form-view.html
│ ├── strand-test-form-view.js
│ └── strand-test-form-view.scss
├── strand-textarea
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-textarea.html
│ ├── strand-textarea.js
│ └── strand-textarea.scss
├── strand-timeformat
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-timeformat.html
│ ├── strand-timeformat.js
│ └── strand-timeformat.scss
├── strand-timepicker
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-timepicker.html
│ ├── strand-timepicker.js
│ └── strand-timepicker.scss
├── strand-tooltip
│ ├── doc.json
│ ├── example.html
│ ├── index.html
│ ├── strand-tooltip.html
│ ├── strand-tooltip.js
│ └── strand-tooltip.scss
├── strand-view-manager
│ ├── index.html
│ ├── strand-view-manager.html
│ ├── strand-view-manager.js
│ └── strand-view-manager.scss
├── strand-wizard-ribbon
│ ├── index.html
│ ├── strand-wizard-ribbon.html
│ ├── strand-wizard-ribbon.js
│ └── strand-wizard-ribbon.scss
├── strand-wizard
│ ├── index.html
│ ├── strand-wizard.html
│ ├── strand-wizard.js
│ └── strand-wizard.scss
└── strand.html
├── test
├── TestHelper.js
├── behavior_autoclosable.html
├── behavior_autotogglable.html
├── behavior_closable.html
├── behavior_collection.html
├── behavior_debouncable.html
├── behavior_domgettable.html
├── behavior_dommutable.html
├── behavior_domsyncable.html
├── behavior_falsifiable.html
├── behavior_followable.html
├── behavior_jqueryable.html
├── behavior_keyboardable.html
├── behavior_keyselectable.html
├── behavior_model.html
├── behavior_mousewheelable.html
├── behavior_pageable.html
├── behavior_positionable-dropdown.html
├── behavior_positionable-panel.html
├── behavior_positionable.html
├── behavior_resizable.html
├── behavior_selectable.html
├── behavior_sizeresponsible.html
├── behavior_stackable.html
├── behavior_stampbindable.html
├── behavior_stylable.html
├── behavior_templatefindable.html
├── behavior_validatable.html
├── behavior_windownotifier.html
├── imports
│ ├── test-strand-tabs-aux.html
│ ├── test-strand-template-finder.html
│ └── test_sizeresponsible_iframe.html
├── lib_ajax.html
├── lib_ajaxapiplugin.html
├── lib_ajaxbusterplugin.html
├── lib_ajaxcsrfplugin.html
├── lib_ajaxpageplugin.html
├── lib_ajaxplugin.html
├── lib_behaviorutils.html
├── lib_bitmask.html
├── lib_continuum.html
├── lib_datautils.html
├── lib_fontloader.html
├── lib_measure.html
├── lib_point.html
├── lib_rectangle.html
├── lib_recycler.html
├── lib_request.html
├── lib_requestqueue.html
├── lib_snake.html
├── lib_storage.html
├── lib_sync.html
├── strand-action.html
├── strand-ajax.html
├── strand-autocomplete.html
├── strand-button.html
├── strand-calendar.html
├── strand-checkbox.html
├── strand-collection.html
├── strand-currency.html
├── strand-datepicker.html
├── strand-dialog.html
├── strand-drawer.html
├── strand-dropdown.html
├── strand-fetch.html
├── strand-file-upload.html
├── strand-footer.html
├── strand-form.html
├── strand-grid-column.html
├── strand-grid-item.html
├── strand-grid.html
├── strand-group.html
├── strand-guide.html
├── strand-header.html
├── strand-highlight.html
├── strand-icon.html
├── strand-inline-box.html
├── strand-input-mask.html
├── strand-input.html
├── strand-item-recycler.html
├── strand-list-item.html
├── strand-loader.html
├── strand-localstore.html
├── strand-menu.html
├── strand-modal.html
├── strand-model.html
├── strand-popover.html
├── strand-progress-bar.html
├── strand-pulldown-button.html
├── strand-radio.html
├── strand-repeater-row.html
├── strand-repeater.html
├── strand-scroll-panel.html
├── strand-spinner.html
├── strand-sync.html
├── strand-tabs.html
├── strand-template-finder.html
├── strand-textarea.html
├── strand-timeformat.html
├── strand-tooltip.html
└── strand-view-manager.html
└── wct.conf.json
/.gitignore:
--------------------------------------------------------------------------------
1 | bower_components/
2 | node_modules/
3 | build/
4 | build_docs/
5 | .grunt
6 | .idea
7 | .publish
8 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | sudo: required
3 | dist: trusty
4 | node_js: stable
5 | addons:
6 | firefox: "46.0"
7 | apt:
8 | sources:
9 | - google-chrome
10 | - ubuntu-toolchain-r-test
11 | packages:
12 | - google-chrome-stable
13 | - g++-4.8
14 | before_install:
15 | - source /opt/jdk_switcher/jdk_switcher.sh
16 | - jdk_switcher use oraclejdk8
17 | before_script:
18 | - npm install -g bower web-component-tester
19 | - npm install
20 | - bower install
21 | - gulp clean
22 | - gulp build
23 | script: xvfb-run wct
24 | env:
25 | global:
26 | - CXX=g++-4.8
27 |
--------------------------------------------------------------------------------
/BANNER.txt:
--------------------------------------------------------------------------------
1 | * @license
2 | * Copyright (c) 2015 MediaMath Inc. All rights reserved.
3 | * This code may only be used under the BSD style license found at http://mediamath.github.io/strand/LICENSE.txt
4 |
--------------------------------------------------------------------------------
/CNAME:
--------------------------------------------------------------------------------
1 | strand.mediamath.com
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | [](https://travis-ci.org/MediaMath/strand)
4 |
5 | ### Overview
6 | Strand leverages the [Polymer Project](https://www.polymer-project.org) to provide a collection of modular, reusable [Web Components](http://webcomponents.org/). By using Strand, developers can create and customize new and existing user interfaces with consistency and ease.
7 |
8 | ### Installation
9 |
10 | Use [Bower](http://bower.io/) to get the latest version of Strand:
11 |
12 | `$ bower install strand`
13 |
14 | Then include the Web Components polyfill and import the Strand library in your page:
15 |
16 | ```html
17 |
18 |
19 | ```
20 |
21 | For more information and documentation see [Getting Started](http://mediamath.github.io/strand/article_getting_started.html).
22 |
--------------------------------------------------------------------------------
/RELEASE.md:
--------------------------------------------------------------------------------
1 | #Strand - Release
2 |
3 | ## code release
4 | * merge develop into master
5 | * `git checkout master`
6 | * `git fetch origin master`
7 | * `git pull origin master`
8 | * `git merge origin develop`
9 | * then: `gulp release:[major|minor|patch]`
10 | * push tags: `git push --tags`
11 | * merge master back into develop
12 | * `git checkout develop`
13 | * `git fetch origin develop`
14 | * `git pull origin develop`
15 | * `git merge origin master`
16 |
17 | ## docs release
18 | * `gulp docs`
19 | * verify via `gulp live:docs`
20 | * push via `gulp gh-pages`
21 |
22 | ## notify interested parties
23 |
24 | Internal release notes - craft an email in this format:
25 |
26 | ```
27 | Features: (a condensed, readable version additions derived from changelog.md)
28 | * some feature
29 | * some feature
30 |
31 | Bug Fixes: (a condensed, readable version fixes derived from changelog.md)
32 | * some fix
33 | * some fix
34 |
35 | (always includes a link to current the changelog.md)
36 | https://github.com/MediaMath/strand/blob/master/CHANGELOG.md
37 | ```
38 |
39 |
--------------------------------------------------------------------------------
/apple-ipad-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MediaMath/strand/369956876d6bdd0f63c4f668f3e1700b9f4ead37/apple-ipad-icon@2x.png
--------------------------------------------------------------------------------
/apple-iphone-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MediaMath/strand/369956876d6bdd0f63c4f668f3e1700b9f4ead37/apple-iphone-icon@2x.png
--------------------------------------------------------------------------------
/docs/CNAME:
--------------------------------------------------------------------------------
1 | strand.mediamath.com
--------------------------------------------------------------------------------
/docs/articles/grid_intro.md:
--------------------------------------------------------------------------------
1 | # Introduction to strand-grid
2 |
3 | ## Overview
4 | `strand-grid` is a multi-purpose component for displaying tabular data. It has a number of customizable attributes and sub-components that allow a developer to change its functionality to fit a variety use-cases. Internally it uses a concept known as "item recycling" - reusing a small pool of DOM elements, which drastically improves the rendering performance of large datasets.
5 |
6 | ## Related Components
7 |
8 | Sub-components that are used with strand-grid:
9 |
10 | * [strand-grid-column](strand-grid-column.html): defines data-fields and constructs column headers
11 | * [strand-grid-item](strand-grid-item.html): default item template that works with grid-columns to perform tasks like column resizing
12 | * [strand-item-recycler](strand-item-recycler.html): reuses DOM elements to boost rendering performance
13 |
14 |
15 | #### Continue Reading → [Configuring strand-grid](article_grid_config.html)
--------------------------------------------------------------------------------
/docs/articles/manifest.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "key":"getting_started"
4 | },
5 | {
6 | "key":"data_comps_intro",
7 | "children":["data_comps_using_ajax","data_comps_using_sync"]
8 | },
9 | {
10 | "key":"grid_intro",
11 | "children":["grid_config", "grid_data_integration", "grid_custom_grid_item"]
12 | },
13 | {
14 | "key":"migration_guide"
15 | },
16 | {
17 | "key":"repeater"
18 | }
19 | ]
20 |
--------------------------------------------------------------------------------
/docs/footer.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/images/apple-touch-icons.sketch:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MediaMath/strand/369956876d6bdd0f63c4f668f3e1700b9f4ead37/docs/images/apple-touch-icons.sketch
--------------------------------------------------------------------------------
/docs/sidebar.html:
--------------------------------------------------------------------------------
1 |
v{{revision}}
23 |{{resp}}12 |
Selected Date: {{selectedDate}}
5 |Dual Calendar Example
13 |{{out(data)}}7 | 8 | -------------------------------------------------------------------------------- /src/strand-fetch/strand-fetch.html: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
This is the first tab content.
12 |This is the second tab content.
17 |This is the third tab content.
22 |