@odoo/owl 3.0.0-alpha.26 → 3.0.0-alpha.28
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.
- package/dist/owl.cjs.js +6651 -6652
- package/dist/owl.es.js +6631 -6611
- package/dist/owl.iife.js +6818 -6821
- package/dist/owl.iife.min.js +27 -1
- package/dist/types/owl.d.ts +678 -621
- package/package.json +9 -95
- package/LICENSE +0 -856
- package/README.md +0 -139
- package/dist/compile_templates.mjs +0 -2474
- package/dist/owl-devtools.zip +0 -0
- package/dist/types/common/owl_error.d.ts +0 -3
- package/dist/types/common/utils.d.ts +0 -8
- package/dist/types/compiler/code_generator.d.ts +0 -134
- package/dist/types/compiler/index.d.ts +0 -13
- package/dist/types/compiler/inline_expressions.d.ts +0 -35
- package/dist/types/compiler/parser.d.ts +0 -170
- package/dist/types/compiler/standalone/index.d.ts +0 -2
- package/dist/types/compiler/standalone/setup_jsdom.d.ts +0 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/runtime/app.d.ts +0 -53
- package/dist/types/runtime/blockdom/attributes.d.ts +0 -8
- package/dist/types/runtime/blockdom/block_compiler.d.ts +0 -20
- package/dist/types/runtime/blockdom/config.d.ts +0 -8
- package/dist/types/runtime/blockdom/event_catcher.d.ts +0 -7
- package/dist/types/runtime/blockdom/events.d.ts +0 -8
- package/dist/types/runtime/blockdom/html.d.ts +0 -17
- package/dist/types/runtime/blockdom/index.d.ts +0 -26
- package/dist/types/runtime/blockdom/list.d.ts +0 -18
- package/dist/types/runtime/blockdom/multi.d.ts +0 -17
- package/dist/types/runtime/blockdom/text.d.ts +0 -26
- package/dist/types/runtime/blockdom/toggler.d.ts +0 -17
- package/dist/types/runtime/component.d.ts +0 -17
- package/dist/types/runtime/component_node.d.ts +0 -57
- package/dist/types/runtime/context.d.ts +0 -36
- package/dist/types/runtime/event_handling.d.ts +0 -1
- package/dist/types/runtime/hooks.d.ts +0 -32
- package/dist/types/runtime/index.d.ts +0 -46
- package/dist/types/runtime/lifecycle_hooks.d.ts +0 -10
- package/dist/types/runtime/plugin_hooks.d.ts +0 -6
- package/dist/types/runtime/plugin_manager.d.ts +0 -36
- package/dist/types/runtime/props.d.ts +0 -21
- package/dist/types/runtime/reactivity/computations.d.ts +0 -34
- package/dist/types/runtime/reactivity/computed.d.ts +0 -6
- package/dist/types/runtime/reactivity/effect.d.ts +0 -1
- package/dist/types/runtime/reactivity/proxy.d.ts +0 -47
- package/dist/types/runtime/reactivity/signal.d.ts +0 -31
- package/dist/types/runtime/registry.d.ts +0 -24
- package/dist/types/runtime/rendering/error_handling.d.ts +0 -13
- package/dist/types/runtime/rendering/fibers.d.ts +0 -36
- package/dist/types/runtime/rendering/scheduler.d.ts +0 -20
- package/dist/types/runtime/rendering/template_helpers.d.ts +0 -51
- package/dist/types/runtime/resource.d.ts +0 -18
- package/dist/types/runtime/status.d.ts +0 -11
- package/dist/types/runtime/template_set.d.ts +0 -36
- package/dist/types/runtime/types.d.ts +0 -77
- package/dist/types/runtime/utils.d.ts +0 -25
- package/dist/types/runtime/validation.d.ts +0 -19
- package/dist/types/version.d.ts +0 -1
- package/tools/compile_owl_templates.mjs +0 -31
package/README.md
DELETED
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
<h1 align="center">🦉 <a href="https://odoo.github.io/owl/">Owl</a> 🦉</h1>
|
|
2
|
-
|
|
3
|
-
<p align="center">
|
|
4
|
-
<strong>A modern, lightweight UI framework for applications that scale</strong>
|
|
5
|
-
</p>
|
|
6
|
-
|
|
7
|
-
[](https://www.gnu.org/licenses/lgpl-3.0)
|
|
8
|
-
[](https://badge.fury.io/js/@odoo%2Fowl)
|
|
9
|
-
[](https://www.npmjs.com/package/@odoo/owl)
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
> **Owl 3.0.0 Alpha:** This is an alpha release. The API and features are subject to change without notice.
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## Try it now
|
|
18
|
-
|
|
19
|
-
The fastest way to discover Owl is the **[online playground](https://odoo.github.io/owl/playground)**.
|
|
20
|
-
It features interactive examples, a live editor, and showcases all major features:
|
|
21
|
-
reactivity, components, plugins, and more. It also includes **guided tutorials**
|
|
22
|
-
and is the recommended way to learn about Owl.
|
|
23
|
-
|
|
24
|
-
## What is Owl?
|
|
25
|
-
|
|
26
|
-
Owl is a modern UI framework (~20kb gzipped, zero dependencies) written in TypeScript,
|
|
27
|
-
built by [Odoo](https://www.odoo.com/). It powers Odoo's web client, one of the largest
|
|
28
|
-
open-source business applications, but is equally suited for small projects and prototypes.
|
|
29
|
-
|
|
30
|
-
Key features:
|
|
31
|
-
|
|
32
|
-
- **Signal-based reactivity** — Explicit, composable, and debuggable state management
|
|
33
|
-
- **Plugin system** — Type-safe, composable sharing of state and services
|
|
34
|
-
- **Class-based components** — Familiar OOP patterns with ES6 classes
|
|
35
|
-
- **Declarative templates** — XML templates with a clean syntax
|
|
36
|
-
- **Async rendering** — Concurrent mode for smooth user experiences
|
|
37
|
-
|
|
38
|
-
## Quick Example
|
|
39
|
-
|
|
40
|
-
```javascript
|
|
41
|
-
import { Component, signal, computed, mount, xml } from "@odoo/owl";
|
|
42
|
-
|
|
43
|
-
class TodoList extends Component {
|
|
44
|
-
static template = xml`
|
|
45
|
-
<input placeholder="Add todo..." t-on-keydown="this.onKeydown"/>
|
|
46
|
-
<ul>
|
|
47
|
-
<t t-foreach="this.todos()" t-as="todo" t-key="todo.id">
|
|
48
|
-
<li t-att-class="{ done: todo.done }">
|
|
49
|
-
<input type="checkbox" t-model="todo.done"/>
|
|
50
|
-
<t t-out="todo.text"/>
|
|
51
|
-
</li>
|
|
52
|
-
</t>
|
|
53
|
-
</ul>
|
|
54
|
-
<p t-if="this.remaining() > 0">
|
|
55
|
-
<t t-out="this.remaining()"/> item(s) remaining
|
|
56
|
-
</p>`;
|
|
57
|
-
|
|
58
|
-
todos = signal.Array([
|
|
59
|
-
{ id: 1, text: "Learn Owl", done: false },
|
|
60
|
-
{ id: 2, text: "Build something", done: false },
|
|
61
|
-
]);
|
|
62
|
-
|
|
63
|
-
remaining = computed(() => this.todos().filter((t) => !t.done).length);
|
|
64
|
-
|
|
65
|
-
onKeydown(ev) {
|
|
66
|
-
if (ev.key === "Enter" && ev.target.value) {
|
|
67
|
-
this.todos.push({
|
|
68
|
-
id: Date.now(),
|
|
69
|
-
text: ev.target.value,
|
|
70
|
-
done: false,
|
|
71
|
-
});
|
|
72
|
-
ev.target.value = "";
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
mount(TodoList, document.body);
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
This example demonstrates Owl's reactivity: `todos` is a signal, `remaining`
|
|
81
|
-
is a computed value that updates automatically, and the UI reacts to changes
|
|
82
|
-
without manual subscription management.
|
|
83
|
-
|
|
84
|
-
## Documentation
|
|
85
|
-
|
|
86
|
-
The documentation below is for **Owl 3**. For the Owl 2 documentation, see the
|
|
87
|
-
[owl-2.x branch](https://github.com/odoo/owl/tree/owl-2.x).
|
|
88
|
-
|
|
89
|
-
### Getting Started
|
|
90
|
-
|
|
91
|
-
- **[Playground](https://odoo.github.io/owl/playground)** — Interactive examples and live coding
|
|
92
|
-
- [Tutorial: Getting Started](https://odoo.github.io/owl/playground#getting_started) — Learn Owl fundamentals step by step
|
|
93
|
-
- [Tutorial: Todo List](https://odoo.github.io/owl/playground#todo_list) — Build a full TodoMVC app
|
|
94
|
-
- [Tutorial: Hibou OS](https://odoo.github.io/owl/playground#hibou_os) — Build a desktop-like interface
|
|
95
|
-
|
|
96
|
-
### Reference
|
|
97
|
-
|
|
98
|
-
- [API Reference](doc/readme.md) — A complete list of everything exported by the Owl library
|
|
99
|
-
- [App](doc/reference/app.md) — Configure and mount an Owl application to the DOM
|
|
100
|
-
- [Component](doc/reference/component.md) — Define components with lifecycle methods and static properties
|
|
101
|
-
- [Error Handling](doc/reference/error_handling.md) — Catch and recover from errors in components
|
|
102
|
-
- [Event Handling](doc/reference/event_handling.md) — Handle DOM events with t-on directives
|
|
103
|
-
- [Form Bindings](doc/reference/form_bindings.md) — Bind form inputs to reactive state with t-model
|
|
104
|
-
- [Hooks](doc/reference/hooks.md) — Use lifecycle hooks and other built-in hooks in components
|
|
105
|
-
- [Plugins](doc/reference/plugins.md) — Share state and services across components with type-safe plugins
|
|
106
|
-
- [Props](doc/reference/props.md) — Pass data to child components with validation and defaults
|
|
107
|
-
- [Reactivity](doc/reference/reactivity.md) — Manage state with signals, computed values, and reactive objects
|
|
108
|
-
- [Refs](doc/reference/refs.md) — Access DOM elements from components with t-ref
|
|
109
|
-
- [Resources and Registries](doc/reference/resources_and_registries.md) — Ordered reactive collections for shared data
|
|
110
|
-
- [Slots](doc/reference/slots.md) — Compose components with named and dynamic slot content
|
|
111
|
-
- [Template Syntax](doc/reference/template_syntax.md) — Write XML templates with QWeb directives
|
|
112
|
-
- [Translations](doc/reference/translations.md) — Translate templates and dynamic strings
|
|
113
|
-
- [Types Validation](doc/reference/types_validation.md) — Validate data structures at runtime with a declarative schema
|
|
114
|
-
|
|
115
|
-
### Misc
|
|
116
|
-
|
|
117
|
-
- [Owl 3.x Release Notes](release_notes.md) — Complete guide to all changes in Owl 3
|
|
118
|
-
- [Design Principles](doc/miscellaneous/design_principles.md)
|
|
119
|
-
- [Why we built Owl](doc/miscellaneous/why_owl.md)
|
|
120
|
-
- [Architecture Notes](doc/miscellaneous/architecture.md)
|
|
121
|
-
- [Comparison with React/Vue](doc/miscellaneous/comparison.md)
|
|
122
|
-
|
|
123
|
-
## Installation
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
npm install @odoo/owl
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
Or download directly: [latest release](https://github.com/odoo/owl/releases/latest)
|
|
130
|
-
|
|
131
|
-
## Devtools
|
|
132
|
-
|
|
133
|
-
The Owl devtools extension helps debug your applications with component tree
|
|
134
|
-
inspection, state visualization, and performance profiling. Download it from
|
|
135
|
-
the [releases page](https://github.com/odoo/owl/releases/latest).
|
|
136
|
-
|
|
137
|
-
## License
|
|
138
|
-
|
|
139
|
-
Owl is released under the [LGPL v3](https://www.gnu.org/licenses/lgpl-3.0) license.
|