Juro Oravec
04f79a6e6b
refactor: deprecate Component.input and add raw_args, raw_kwargs, raw_slots ( #1233 )
...
* refactor: deprecate Component.input and add raw_args, raw_kwargs, raw_slots
* docs: update changelog
2025-06-04 23:38:50 +02:00
Juro Oravec
eceebb9696
feat: on_render ( #1231 )
...
* feat: on_render
* docs: fix typos
* refactor: fix linter errors
* refactor: make `error` in on_render_after optional to fix benchmarks
* refactor: benchmark attempt 2
* refactor: fix linter errors
* refactor: fix formatting
2025-06-04 19:30:03 +02:00
Juro Oravec
46e524e37d
refactor: Add Node metadata ( #1229 )
...
* refactor: `Slot.source` replaced with `Slot.fill_node`, new `Component.node` property, and `slot_node` available in `on_slot_rendered()` hook.
* refactor: fix windows path error in tests
2025-06-03 12:58:48 +02:00
Juro Oravec
09cb8714cc
refactor: don't inherit media if child set to None ( #1224 )
...
* refactor: don't inherit media if child set to None
* refactor: fix typing errors
* refactor: more type fixes
2025-06-02 16:24:27 +02:00
Juro Oravec
fa9ae9892f
feat: Slot.extra and Slot.source metadata ( #1221 )
2025-05-31 11:22:45 +02:00
Juro Oravec
bb129aefab
feat: extension defaults + docs + API cleanup ( #1215 )
2025-05-26 23:36:19 +02:00
Juro Oravec
55b1c8bc62
refecator: move defaults applying back to ext, raise on passing Slot to Slot, and docs cleanup ( #1214 )
...
* refecator: move defaults applying back to ext, raise on passing Slot to Slot, and docs cleanup
* docs: fix typo
2025-05-26 11:59:17 +02:00
Juro Oravec
bae0f28813
refactor: Instantiate component when rendering, and remove metadata stack ( #1212 )
...
* refactor: Instantiate component when rendering, and remove metadata stack
* refactor: update test
* refactor: fix linter errors
* docs: remove example from changelog
2025-05-25 23:33:38 +02:00
Juro Oravec
2e08af9a13
refactor: move slot escaping inside Slot, remve Slot.escaped, and remove render kwarg escape_slots_content
( #1211 )
2025-05-25 17:24:45 +02:00
Juro Oravec
223fc2c68c
docs: update docs on slots ( #1208 )
2025-05-25 08:53:09 +02:00
Juro Oravec
e054a68715
feat: Component.args/kwargs/slots and {{ component_vars.args/kwargs/s… ( #1205 )
...
* feat: Component.args/kwargs/slots and {{ component_vars.args/kwargs/slots }}
* docs: fix typo in changelog
2025-05-24 23:24:34 +02:00
Juro Oravec
f069255b64
refactor: simplify slot API ( #1202 )
...
Closes #1096
2025-05-20 09:48:45 +02:00
Juro Oravec
79c42da2f9
feat: slot caching ( #1196 )
...
* feat: slot caching
Closes #1164
* refactor: fix linter
2025-05-19 19:26:57 +02:00
Juro Oravec
ccf02fa316
chore: util to manage URLs in the codebase ( #1179 )
...
* chore: util to manage URLs in the codebase
* docs: mentiion validate_links and supported_versions in docs
* refactor: fix linter errors
2025-05-11 14:59:34 +02:00
Juro Oravec
5f4fbe76e5
feat: add BaseNode.contents ( #1177 )
2025-05-11 08:11:07 +02:00
Juro Oravec
6253042e9e
refactor: remove middleware, add strategy "raw", and call render_deps() from within Template.render() ( #1166 )
...
* refactor: remove middleware, add strategy "raw", and call render_deps() from within Template.render()
* refactor: fix formatting
* refactor: fix benchmark tests
* refactor: avoid processing deps if rendered HTML contains no components
* refactor: remove comments
* refactor: rename "raw" to "ignore"
2025-05-06 21:36:41 +02:00
Juro Oravec
28b61c1609
refactor: Update docs and tests to use get_template_data() ( #1161 )
...
* refactor: update docs and tests to use get_template_data()
* refactor: fix linting
* docs: add note about difference between the two methods
2025-05-03 12:04:10 +02:00
Juro Oravec
c69980493d
feat: allow to set query and fragment on get_component_url ( #1160 )
2025-05-03 10:29:38 +02:00
Juro Oravec
bf7a204e92
feat: add "simple", "prepend", and "append" render types ( #1156 )
...
* feat: add "simple", "prepend", and "append" render types
* refactor: explicitly set strategy for "document" in tests
2025-05-02 15:07:16 +02:00
Juro Oravec
59f82307ae
docs: docstrings, fundamentals, and minor changes ( #1145 )
...
* docs: docstrings, fundamentals, and minor changes
* refactor: fix tests + linter errors
2025-04-24 12:47:04 +02:00
Juro Oravec
519529d4e4
refactor: move Url.public to View.public ( #1140 )
...
* refactor: move Url.public to View.public
* refactor: fix tests / imports
2025-04-21 23:12:40 +02:00
Juro Oravec
b49002b545
refactor: change component typing from generics to class attributes ( #1138 )
2025-04-20 22:05:29 +02:00
Juro Oravec
c650e7f3a5
refactor: prefix component ID with c
( #1127 )
2025-04-14 12:01:16 +02:00
Juro Oravec
fc026cbd99
docs: update section on working with request object ( #1126 )
...
* docs: update section on working with request object
* refactor: fix linting
2025-04-14 11:35:48 +02:00
Juro Oravec
06cad2ec64
refactor: use typevar defaults + raise on conflicting extensions ( #1125 )
...
* refactor: use typevar defaults + raise on conflicting extensions
* refactor: fix linter errors
2025-04-14 10:00:18 +02:00
Juro Oravec
d37291a3b6
docs: document how to access component instance from within View ( #1115 )
2025-04-10 09:39:52 +02:00
Juro Oravec
613dfea379
refactor: cleanup docs, add docs on Render API, allow get_context_data return None ( #1110 )
...
* refactor: cleanup docs, add docs on Render API, allow get_context_data return None
* refactor: fix linter and tests
2025-04-09 15:06:14 +02:00
Juro Oravec
9ede779fa3
docs: update testing, single file comp, and syntax highlight ( #1109 )
2025-04-08 14:32:23 +02:00
Juro Oravec
b6994e9ad3
feat: component caching ( #1097 )
...
* feat: allow to set defaults
* refactor: remove input validation and link to it
* feat: component URL
* feat: component caching
* refactor: Mark `OnComponentRenderedContext` as extension hook for docs
* docs: update changelog
* refactor: simplify hash methods
2025-04-08 11:54:39 +02:00
Juro Oravec
a49f5e51dd
feat: component URL ( #1088 )
...
* feat: allow to set defaults
* refactor: remove input validation and link to it
* feat: component URL
* refactor: fix linter errors
* refactor: fix linter errors + update examples to use Component.View..get
* docs: update comment
* refactor: revert change to hash_comp_cls
* docs: update comment
2025-04-07 10:44:41 +02:00
Juro Oravec
3555411f1e
docs: move extension command- and url-related API to own API pages ( #1093 )
...
* docs: move extension command- and url-related API to own API pages
* refactor: fix linters
2025-04-06 14:12:15 +02:00
Juro Oravec
2499126d1f
refactor: fix ext URLs lookup ( #1086 )
...
* refactor: fix ext URLs lookup
2025-04-05 09:10:04 +02:00
Juro Oravec
7e74831599
refactor: remove input validation and link to it ( #1082 )
...
* feat: allow to set defaults
* refactor: remove input validation and link to it
* docs: update changelog
* Update typing_and_validation.md
* Update typing_and_validation.md
2025-04-05 08:19:19 +02:00
Juro Oravec
f07818fc7d
feat: allow to set defaults ( #1072 )
...
* feat: allow to set defaults
* docs: update changelog
* refactor: fix new linter errors
2025-03-31 10:38:41 +02:00
Juro Oravec
328309a81c
feat: granular handling of class and style in {% html_attrs %} ( #1066 )
...
* feat: granular handling of class and style in {% html_attrs %}
* refactor: fix linter errors
* docs: document deprecation, fix typos, fix broken table of contents
* refactor: remove classes and styles as lists from docs
2025-03-24 17:35:12 +01:00
Juro Oravec
ab75cfdb8f
feat: allow globs when specifynigg additionall JS and CSS ( #1043 )
...
* feat: allow globs when specifynigg additionall JS and CSS
* refactor: fix tests and linter errors
2025-03-21 10:23:38 +01:00
Juro Oravec
0f41a62592
feat: add a command to list all components ( #1041 )
...
* feat: add a command to list all components
* refactor: fix tests
* refactor: fix linter errors
* refactor: fix the tests for tests running within tox
* temp: print out test outputs
* refactor: fix tests for windows
* refactor: remove escape from slash?
* refactor: fixes to regex
* refactor: remove print statements
* docs: update API reference
2025-03-19 09:38:25 +01:00
Juro Oravec
107284f474
feat: registry.has(); helpers to get all components and registries; access component from ext class ( #1030 )
...
* feat: registry.has(); helpers to get all components and registries; access component from ext class
* refactor: add missing import
2025-03-18 11:30:53 +01:00
Juro Oravec
8e7acd82be
docs: fix links in getting started section + few other ( #1026 )
2025-03-17 08:55:42 +01:00
Juro Oravec
12a64f8e41
feat: allow extensions to add url views ( #1025 )
...
* feat: allow extensions to add url views
* refactor: fix linter errors
2025-03-17 08:36:47 +01:00
Juro Oravec
d3d2d0ab08
feat: allow extensions to add commands ( #1017 )
...
* feat: allow extensions to add commands
* refactor: fix tests
* refactor: more test fix
* refactor: more test fixes
* refactor: more linter fixes
2025-03-16 12:03:16 +01:00
Juro Oravec
4d35bc97a2
feat: extensions ( #1009 )
...
* feat: extensions
* refactor: remove support for passing in extensions as instances
2025-03-08 09:41:28 +01:00
Juro Oravec
7dfcb447c4
feat: add decorator for writing component tests ( #1008 )
...
* feat: add decorator for writing component tests
* refactor: udpate changelog + update deps pins
* refactor: fix deps
* refactor: make cached_ref into generic and fix linter errors
* refactor: fix coverage testing
* refactor: use global var instead of env var for is_testing state
2025-03-02 19:46:12 +01:00
Juro Oravec
d5e45125dc
refactor: use .nav.yml to define page order instead of nav weights ( #1000 )
2025-02-23 22:44:12 +01:00
Juro Oravec
314ec77d3d
docs: Syntax highlighting for mkdocs ( #984 )
...
* feat:forward context processors variables in context in ISOLATED mode
provide context_processors_data property to Component to access those variables in Component
* refactor: internalize RequestContext and pass HttpRequest internally
* docs: document HttpRequest and context processors
* docs: use djc_py code blocks for component definitions
---------
Co-authored-by: Lilian Durey <dureylilian@gmail.com>
2025-02-20 11:47:14 +01:00
lilian D
8b5579d2be
feat:forward context processors variables in context in ISOLATED mode ( #975 )
...
* feat:forward context processors variables in context in ISOLATED mode
provide context_processors_data property to Component to access those variables in Component
* refactor: internalize RequestContext and pass HttpRequest internally
* docs: document HttpRequest and context processors
---------
Co-authored-by: Juro Oravec <juraj.oravec.josefson@gmail.com>
2025-02-20 11:06:49 +01:00
Juro Oravec
92f5497c74
refactor: change repo name and URL after org migration ( #924 )
2025-01-22 16:02:46 +01:00
Juro Oravec
f908197850
feat: @template_tag and refactor how template tags are defined ( #910 )
2025-01-20 22:47:04 +01:00
Juro Oravec
6c2a687d69
docs: add djc-heroicons to community examples ( #896 )
2025-01-08 21:58:43 +01:00
Juro Oravec
ab037f24b0
feat: add Media.extend ( #890 )
...
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-01-07 22:55:17 +01:00