aboutsummaryrefslogtreecommitdiff
path: root/tools/addon-sdk-1.5/packages/addon-kit/docs/self.md
diff options
context:
space:
mode:
Diffstat (limited to 'tools/addon-sdk-1.5/packages/addon-kit/docs/self.md')
-rw-r--r--tools/addon-sdk-1.5/packages/addon-kit/docs/self.md79
1 files changed, 79 insertions, 0 deletions
diff --git a/tools/addon-sdk-1.5/packages/addon-kit/docs/self.md b/tools/addon-sdk-1.5/packages/addon-kit/docs/self.md
new file mode 100644
index 0000000..06d7404
--- /dev/null
+++ b/tools/addon-sdk-1.5/packages/addon-kit/docs/self.md
@@ -0,0 +1,79 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- edited by Erik Vold [erikvvold@gmail.com] -->
+
+The `self` module provides access to data that is bundled with the add-on
+as a whole. It also provides access to the
+[Program ID](dev-guide/addon-development/program-id.html), a value which is
+unique for each add-on.
+
+Note that the `self` module is completely different from the global `self`
+object accessible to content scripts, which is used by a content script to
+[communicate with the add-on code](dev-guide/addon-development/content-scripts/using-port.html).
+
+<api name="id">
+@property {string}
+This property is a printable string that is unique for each add-on. It comes
+from the `id` property set in the `package.json` file in the main package
+(i.e. the package in which you run `cfx xpi`). While not generally of use to
+add-on code directly, it can be used by internal API code to index local
+storage and other resources that are associated with a particular add-on.
+Eventually, this ID will be unspoofable (see
+[JEP 118](https://wiki.mozilla.org/Labs/Jetpack/Reboot/JEP/118) for details).
+</api>
+
+<api name="name">
+@property {string}
+This property contains the add-on's short name. It comes from the `name`
+property in the main package's `package.json` file.
+</api>
+
+<api name="version">
+@property {string}
+This property contains the add-on's version string. It comes from the
+`version` property set in the `package.json` file in the main package.
+</api>
+
+<api name="data">
+@property {object}
+The `data` object is used to access data that was bundled with the add-on.
+This data lives in the main package's `data/` directory, immediately below
+the `package.json` file. All files in this directory will be copied into the
+XPI and made available through the `data` object.
+
+The [Package Specification](dev-guide/addon-development/package-spec.html)
+section explains the `package.json` file.
+
+<api name="data.load">
+@method
+The `data.load(NAME)` method returns the contents of an embedded data file,
+as a string. It is most useful for data that will be modified or parsed in
+some way, such as JSON, XML, plain text, or perhaps an HTML template. For
+data that can be displayed directly in a content frame, use `data.url(NAME)`.
+@param name {string} The filename to be read, relative to the
+ package's `data` directory. Each package that uses the `self` module
+ will see its own `data` directory.
+@returns {string}
+</api>
+
+<api name="data.url">
+@method
+The `data.url(NAME)` method returns a url that points at an embedded
+data file. It is most useful for data that can be displayed directly in a
+content frame. The url can be passed to a content frame constructor, such
+as the Panel:
+
+ var self = require("self");
+ var myPanel = require("panel").Panel({
+ contentURL: self.data.url("my-panel-content.html")
+ });
+ myPanel.show();
+
+@param name {string} The filename to be read, relative to the
+ package's `data` directory. Each package that uses the `self` module
+ will see its own `data` directory.
+@returns {String}
+</api>
+</api>