@canonical/yui 3.18.2-pre.1 → 3.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/LICENSE.md +33 -138
  2. package/README.md +41 -117
  3. package/package.json +2 -2
package/LICENSE.md CHANGED
@@ -1,145 +1,40 @@
1
- Software License Agreement (BSD License)
2
- ========================================
1
+ BSD 3-Clause License
2
+ ====================
3
3
 
4
- Copyright (c) 2013, Yahoo! Inc. All rights reserved.
5
- ----------------------------------------------------
4
+ Copyright (c) 2013, Yahoo! Inc.
5
+ Copyright (c) 2025, Canonical Ltd.
6
6
 
7
- Redistribution and use of this software in source and binary forms, with or
8
- without modification, are permitted provided that the following conditions are
9
- met:
7
+ All rights reserved.
10
8
 
11
- * Redistributions of source code must retain the above copyright notice, this
12
- list of conditions and the following disclaimer.
13
- * Redistributions in binary form must reproduce the above copyright notice,
14
- this list of conditions and the following disclaimer in the documentation
15
- and/or other materials provided with the distribution.
16
- * Neither the name of Yahoo! Inc. nor the names of YUI's contributors may be
17
- used to endorse or promote products derived from this software without
18
- specific prior written permission of Yahoo! Inc.
9
+ Redistribution and use in source and binary forms, with or without
10
+ modification, are permitted provided that the following conditions are met:
19
11
 
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
21
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
24
- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
25
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
26
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
27
- ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
29
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
-
31
-
32
- Sources of Intellectual Property Included in the YUI Library
33
- ------------------------------------------------------------
34
-
35
- YUI is issued by Yahoo! under the BSD license above. Below is a list of certain
36
- publicly available software that is the source of intellectual property in YUI,
37
- along with the licensing terms that pertain to those sources of IP. This list is
38
- for informational purposes only and is not intended to represent an exhaustive
39
- list of third party contributions to YUI.
40
-
41
- * **Douglas Crockford's JSON parsing and stringifying methods:** In the JSON
42
- Utility, Douglas Crockford's JSON parsing and stringifying methods are
43
- adapted from work published at [JSON.org](http://json.org/). The adapted
44
- work is in the public domain.
45
-
46
- * **Robert Penner's animation-easing algorithms:** In the Animation Utility,
47
- YUI makes use of Robert Penner's algorithms for easing.
48
-
49
- * **Diego Perini's IEContentLoaded technique:** The Event Utility employs
50
- [a technique developed by Diego Perini](http://javascript.nwbox.com/IEContentLoaded/)
51
- and licensed under GPL. YUI's use of this technique is included under our
52
- BSD license with the author's permission.
53
-
54
- * **Handlebars.js**: The Handlebars component is a YUI port of
55
- [Handlebars.js](https://github.com/wycats/handlebars.js) by Yehuda Katz. It
56
- is distributed with YUI under the terms of the MIT License below.
57
-
58
- * **asap.js**: The timers component includes the Asap.js module by Kris Kowal.
59
- It is distributed with YUI under the terms of the MIT License below.
60
-
61
-
62
- Handlebars.js MIT License
63
- -------------------------
64
-
65
- Copyright (C) 2011 by Yehuda Katz
66
- <https://github.com/wycats/handlebars.js>
67
-
68
- Permission is hereby granted, free of charge, to any person obtaining a copy
69
- of this software and associated documentation files (the "Software"), to deal
70
- in the Software without restriction, including without limitation the rights
71
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
72
- copies of the Software, and to permit persons to whom the Software is
73
- furnished to do so, subject to the following conditions:
74
-
75
- The above copyright notice and this permission notice shall be included in
76
- all copies or substantial portions of the Software.
12
+ 1. Redistributions of source code must retain the above copyright notice, this
13
+ list of conditions and the following disclaimer.
77
14
 
78
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
79
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
80
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
81
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
82
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
83
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
84
- THE SOFTWARE.
15
+ 2. Redistributions in binary form must reproduce the above copyright notice,
16
+ this list of conditions and the following disclaimer in the documentation
17
+ and/or other materials provided with the distribution.
85
18
 
19
+ 3. Neither the name of the copyright holder nor the names of its contributors
20
+ may be used to endorse or promote products derived from this software
21
+ without specific prior written permission.
86
22
 
87
- Normalize.css MIT License
88
- -------------------------
89
-
90
- Copyright (c) Nicolas Gallagher and Jonathan Neal
91
- <https://github.com/necolas/normalize.css/>
92
-
93
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
94
-
95
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
96
-
97
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
98
-
99
-
100
- Benchmark.js MIT License
101
- -------------------------
102
- Copyright 2010-2013 Mathias Bynens <http://mathiasbynens.be/>
103
- Based on JSLitmus.js, copyright Robert Kieffer <http://broofa.com/>
104
- Modified by John-David Dalton <http://allyoucanleet.com/>
105
-
106
- Permission is hereby granted, free of charge, to any person obtaining
107
- a copy of this software and associated documentation files (the
108
- "Software"), to deal in the Software without restriction, including
109
- without limitation the rights to use, copy, modify, merge, publish,
110
- distribute, sublicense, and/or sell copies of the Software, and to
111
- permit persons to whom the Software is furnished to do so, subject to
112
- the following conditions:
113
-
114
- The above copyright notice and this permission notice shall be
115
- included in all copies or substantial portions of the Software.
116
-
117
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
118
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
119
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
120
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
121
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
122
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
123
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
124
-
125
-
126
- Asap.js MIT License
127
- -------------------
128
- Copyright 2009–2013 Contributors. All rights reserved.
129
- Permission is hereby granted, free of charge, to any person obtaining a copy
130
- of this software and associated documentation files (the "Software"), to
131
- deal in the Software without restriction, including without limitation the
132
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
133
- sell copies of the Software, and to permit persons to whom the Software is
134
- furnished to do so, subject to the following conditions:
135
-
136
- The above copyright notice and this permission notice shall be included in
137
- all copies or substantial portions of the Software.
138
-
139
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
140
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
141
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
142
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
143
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
144
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
145
- IN THE SOFTWARE.
23
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
24
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
27
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
29
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
31
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
+
34
+ ---
35
+
36
+ This distribution bundles third-party code that retains its own license notices
37
+ in the corresponding source files, including portions under the MIT License
38
+ (Handlebars.js, normalize.css, Asap.js) and the BSD License (Robert Penner's
39
+ easing equations, Douglas Crockford's JSON methods). Those notices remain intact
40
+ in the files to which they apply.
package/README.md CHANGED
@@ -1,133 +1,57 @@
1
- YUI 3: The Yahoo User Interface Library
2
- =======================================
3
-
4
- YUI is a free, open source JavaScript and CSS framework for building richly
5
- interactive web applications. YUI is provided under a BSD license and is
6
- available on GitHub for forking and contribution.
7
-
8
- **Canonical fork:** The upstream project was archived by Yahoo in August 2014.
9
- This fork is maintained by Canonical (`@canonical/yui`) to provide ongoing
10
- **security support** for downstream consumers (e.g. Launchpad). Bug fixes are
11
- out of scope; security fixes are the focus. The documentation will continue to be available at
12
- [yuilibrary.com](https://yuilibrary.com) for reference.
13
-
14
- Links
15
- -----
16
-
17
- * [Home Page](http://yuilibrary.com/)
18
- * [Documentation](http://yuilibrary.com/yui/docs/)
19
- * [Blog](http://yuiblog.com)
20
- * [Latest Production Release](http://yuilibrary.com/download/yui3/)
21
- * [Forums](https://groups.google.com/forum/#!forum/yui-support)
22
- * [License](http://yuilibrary.com/license/)
23
- * [Contributor Info](https://github.com/yui/yui3/blob/master/CONTRIBUTING.md)
24
- * [Contributor Mailing List](https://groups.google.com/forum/?fromgroups#!forum/yui-contrib)
25
- * [Report a Bug](http://yuilibrary.com/yui/docs/tutorials/report-bugs/)
26
- * [Shifter, for building YUI](http://yui.github.com/shifter/)
27
-
28
-
29
- Source Info
30
- -----------
31
-
32
- This is the active working source tree for YUI 3. It contains work in progress
33
- toward the next YUI 3 releases and may be unstable.
34
-
35
- We encourage you to use the latest source for evaluation purposes, testing new
36
- features and bug fixes, and to provide feedback on new functionality. Please
37
- refer to the "Latest Production Release" link above if you're looking for the
38
- latest stable release of YUI recommended for production use.
39
-
40
- If you plan on contributing to YUI, please join and monitor the "Contributor
41
- Mailing List" listed above. Information about milestones and tree closures
42
- will be made available there.
43
-
44
-
45
- ## Branch Information
46
-
47
- YUI's development happens on five main branches. The following describes what
48
- each of these code branches represents:
1
+ @canonical/yui
2
+ ==============
49
3
 
50
- * `live-docs`: Represents the latest GA release of YUI, plus any
51
- documentation-only updates. Any tweaks or additions to the docs for the
52
- latest release happen on this branch, and they are reflected on the website.
4
+ A Canonical-maintained security fork of the archived [YUI 3][yui] JavaScript and
5
+ CSS framework. The upstream project was archived in August 2014; this fork exists
6
+ to provide ongoing **security support** for downstream consumers such as
7
+ [Launchpad](https://launchpad.net/).
53
8
 
54
- * `master`: (Read-only) Contains everything in `live-docs`, plus code changes that will go
55
- into the next YUI release. The code changes in `master` are either bug fixes
56
- or small changes which should not break API compatibility. Patch releases
57
- will be cut from this branch; e.g. 3.6.x. *All code in this branch has fully
58
- passed all unit tests and should be stable.*
9
+ Scope is deliberately narrow: security fixes and the minimal modernization needed
10
+ to keep them shippable. New features and general bug fixes are out of scope.
59
11
 
60
- * `3.x`: (Read-only) Represents the next major YUI release; e.g. 3.7.0. This is an
61
- integration branch which contains everything in `master`, plus larger code
62
- changes which will go into a future YUI release. The changes in `3.x`
63
- require a minor version increment before they are part of release, e.g.,
64
- 3.7.0. Preview Releases will be cut from this branch for developers to test
65
- and evaluate. *All code in this branch has fully passed all unit tests and should be stable.*
12
+ Install
13
+ -------
66
14
 
67
- * `dev-master` and `dev-3.x`: Current working branches containing code that
68
- **has not** been through the CI process. **Developers check their changes in to
69
- these integration branches for the automated testing system to validate.** Once they
70
- are validated, the code is merged into `master` and `3.x` respectively. **Never** check in to
71
- `master` or `3.x` directly.
15
+ ```sh
16
+ npm install @canonical/yui
17
+ ```
72
18
 
73
- * `release-3.x.x`: Short-lived release branches where code checkins are carefully
74
- managed for extensive testing and release deployment.
19
+ The published package mirrors the historical `yui` layout: every module sits at
20
+ the package root (e.g. `yui/yui-min.js`, `loader/loader-min.js`,
21
+ `cssreset/cssreset.css`), so it is a drop-in replacement for consumers that load
22
+ modules by root-relative path.
75
23
 
76
- ## Source Tree
24
+ Documentation
25
+ -------------
77
26
 
78
- The YUI source tree includes the following directories:
27
+ The library's API and component documentation remains available at the official
28
+ YUI site:
79
29
 
80
- * `build`: Built YUI source files. The built files are generated at
81
- development time from the contents of the `src` directory. The build step
82
- generates debug files (unminified and with full comments and logging),
83
- raw files (unminified, but without debug logging), and minified files
84
- (suitable for production deployment and use).
30
+ * [YUI Documentation](https://clarle.github.io/yui3/) (mirror of yuilibrary.com)
85
31
 
86
- * `src` Raw unbuilt source code (JavaScript, CSS, image assets, ActionScript
87
- files, etc.) for the library. Beginning with YUI 3.4.0, the `src` directory
88
- also contains all module-specific documentation, tests and examples. All
89
- modifications to the library and its documentation should take place in
90
- this directory.
32
+ Note that upstream documentation describes the original library; behavior specific
33
+ to this fork (e.g. the native-`fetch` Node transports) is documented in
34
+ [`BUILD.md`](BUILD.md).
91
35
 
92
- ## Initial Setup
36
+ Source layout
37
+ -------------
93
38
 
94
- 1. Fork the project on GitHub (https://github.com/yui/yui3).
95
- 1. Clone the fork to your local environment for development.
39
+ * `src/` raw, unbuilt source (JavaScript, CSS, assets) plus the frozen
40
+ upstream test harnesses. All source changes happen here.
41
+ * `build/` — built artifacts (raw, `-debug`, and `-min`). These are committed
42
+ and hand-synced with `src/`; there is no build step on install. See
43
+ [`BUILD.md`](BUILD.md).
96
44
 
97
- ## Do Good Stuff
98
-
99
- 1. Create a feature branch to house atomic code changes.
100
- `git checkout -b myfeature upstream/master --no-track`
101
- 1. Satisfy the contribution requirements
102
- (see [YUI Contribution Standards](https://github.com/yui/yui3/wiki/Contribution-Standards)).
103
- 1. Push changes to your fork.
104
- 1. Submit a pull request from your fork to the `live-docs`,
105
- `dev-master`, or `dev-3.x` branch for review.
106
- 1. Incorporate community feedback.
107
- 1. Push changes to your fork -- the pull request will automatically update.
108
- 1. Rinse and repeat.
109
-
110
- All changes should continue to be made on the feature branch; that way the pull
111
- request you submit will automatically update to include them. Make sure to keep
112
- the feature branch updated with the latest changes from master, so that they
113
- don't diverge during your development process.
114
-
115
- ## Important Tips
116
-
117
- * Always work from a feature branch. Since all code submissions will be
118
- through a Pull Request, feature branches isolate changes from one submission to another.
119
- * Always start your new branch from the branch you want to submit to:
120
- `git checkout -b myfeature dev-master`
121
- * Remember to submit your Pull Request to the proper `dev-` branch and not
122
- `master` or `3.x`.
123
-
124
- ## Building
125
-
126
- To build YUI components install [Shifter](http://yui.github.com/shifter/) (`npm -g install shifter`)
127
- and then simply run `shifter` in that components directory.
45
+ Development
46
+ -----------
128
47
 
129
- Shifter also allows you to rebuild the entire YUI src tree:
48
+ * Contributor and security-fork guidance: [`AGENTS.md`](AGENTS.md).
49
+ * Build and packaging details: [`BUILD.md`](BUILD.md).
50
+ * Tests run on Vitest (Node) and Playwright (browser/legacy); see `BUILD.md`.
130
51
 
131
- cd yui3/src && shifter --walk
52
+ License
53
+ -------
132
54
 
55
+ Distributed under the BSD 3-Clause License. See [`LICENSE.md`](LICENSE.md).
133
56
 
57
+ [yui]: https://github.com/yui/yui3
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@canonical/yui",
3
- "version": "3.18.2-pre.1",
3
+ "version": "3.18.2",
4
4
  "description": "YUI 3 Source (Canonical security-maintained fork)",
5
5
  "author": "Dav Glass <davglass@gmail.com>",
6
6
  "bugs": {
7
7
  "url": "https://github.com/canonical/yui/issues"
8
8
  },
9
9
  "engines": {
10
- "node": ">=18"
10
+ "node": ">=20"
11
11
  },
12
12
  "main": "index.js",
13
13
  "license": "BSD-3-Clause",