Improve packaging, bundling and module boilerplate
Prevent negative interactions with module systems present in injected pages and refactor browserify interactions with angular to increase CommonJS accessibility / legibility and isolate angular module system boilerplate. - Avoid issues due to mis-detected module environments - In the injection script, load only Annotator and jQuery in the global scope and then both removed with `noConflict()`. Both are loaded with browserify-shim, which prevents jQuery from registering itself against require.js, if present (fix #2026). - Be explicit about registration of common cross-frame components (fix #2090). - Lift angular glue into app.coffee. Individual components are exported as CommonJS modules. - Lift Annotator glue into bootstrap.js (renamed hypothesis.js). - Break up all modules that contained multiple services/directives/etc, such as the formHelpers and uiHelpers modules, as well as catch-all files like services.coffee and directives.coffee. For a summary of these movements see the bottom of this commit message. - Rename all services, dropping the -service suffix, to match their injected names. This is consistent with how directives are being treated, and controllers as well (controllers are registered and injected done with the "Controller" suffix). - Move Annotator subclasses into the annotator subdirectory. This change avoids having `Annotator.Host` clash with the `host` service and makes it easy to glob dependencies in assets.yaml to minimally rebuild either the app or the inject. --- Summary of structural reorganisation. Modules that have been trivially renamed (from "foo-service" to "foo") are not included in this list: controllers:AppController app-controller controllers:AnnotationUIController annotation-ui-controller controllers:AnnotationViewerController annotation-viewer-controller controllers:ViewerController widget-controller directives:match directive/match directives:repeatAnim directive/repeat-anim directives:whenscrolled directive/whenscrolled directives/thread:pulse pulse filters:Converter filter/converter filters:momentFilter filter/moment filters:personaFilter filter/persona filters:urlEncodeFilter filter/urlencode guest annotator/guest host annotator/host helpers/form-helpers:createFormHelpers form-respond helpers/form-helpers:formInput directive/form-input helpers/form-helpers:formValidate directive/form-validate helpers/string-helpers:createStringHelpers unicode helpers/tag-helpers tags helpers/time-helpers time helpers/ui-helpers:tabbable directive/tabbable helpers/ui-helpers:tabReveal directive/tab-reveal searchfilters:QueryParser query-parser searchfilters:SearchFilter search-filter searchfilters:StreamFilter stream-filter services:DraftProvider drafts services:ViewFilter view-filter services:renderFactory render session/session-service session streamsearch stream-controller
Showing
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment