ralf
6ebd09b275
size and align icons for url-widgets
2022-03-10 18:14:28 +02:00
Hadi Nategh
1be92b5b61
Style MixinInvoker widgets
2022-03-10 15:39:54 +01:00
ralf
9285b87a92
implement multiple attribute for et2-select reflecting it to selectbox
...
fixing TypeError set_multiple is not a function
2022-03-10 15:48:27 +02:00
ralf
0099b094b9
Fix TypeError: Cannot set property options
2022-03-10 14:57:00 +02:00
ralf
782958d7fc
Fix/remove email validator and implement trailing_slash attribute
2022-03-10 14:26:06 +02:00
ralf
ebaebf65ca
Implement et2-url-* incl. r/o
...
ToDo: implement allow_path and trailing slash attributes for et2-url
2022-03-10 10:15:59 +02:00
nathan
f34d7f4d9c
Solution for boolean attributes that need row data: Use the default but hold on to the value that couldn't be parsed, defer processing until later.
2022-03-09 14:23:45 -07:00
nathan
944c0ad68e
Add disabled to detached attributes
2022-03-09 10:17:59 -07:00
nathan
4d25d2ea8b
Wait on parsing boolean attributes with ${row} if we're not actually in a row, same as string attributes.
...
Fixes boolean attributes don't follow $row values
2022-03-09 10:16:40 -07:00
nathan
d8517edafa
Fix template load failed if it didn't had a template to load, now just resolving quietly.
...
Fixes calendar sidebox integration stalled eTemplate load
2022-03-09 09:02:36 -07:00
Hadi Nategh
7293b34493
Fix broken egwActionObject import, import statement being removed accidentally in f7f4053d1a
2022-03-09 11:21:06 +01:00
ralf
5fd4423775
fix indention making debugging wired otherwise
2022-03-09 09:43:39 +02:00
nathan
f7f4053d1a
Swap Promise for jQuery.Promise in loadingFinished() & doLoadingFinished()
...
This lets us add LitElement's updateComplete Promise into the list of things to wait for, and solves the problem of app init code being run before widgets are complete.
https://lit.dev/docs/components/lifecycle/#reactive-update-cycle-completing
2022-03-08 15:11:32 -07:00
ralf
1b74f1f1a7
WIP URL widget for email and phone (not yet styled)
2022-03-08 20:20:06 +02:00
Hadi Nategh
e9fbc81565
WIP Taglist: implements get and set value
2022-03-08 16:19:03 +01:00
Hadi Nategh
7bdfceda87
WIP Taglist:
...
- fix dropdown menu not positioned correctly
- fix more styling
2022-03-08 09:24:18 +01:00
nathan
d0926226cd
Fix set_min() & set_max() for Date
2022-03-07 14:33:09 -07:00
nathan
734401c6cd
Get Date widget to use slots for better styling, also fixes re-initializing when not needed
2022-03-07 13:33:13 -07:00
Hadi Nategh
db4d0295b8
WIP Taglist: implement edit buttton
2022-03-07 17:36:15 +01:00
nathan
1671e69603
Fix required dates gave missing error even if they had a value
2022-03-07 09:14:15 -07:00
Hadi Nategh
bb1e9d2c30
WIP Taglist:
...
- fix tag style
- fix close button
- allow to open menu when there's fixed sel_options
2022-03-07 16:32:39 +01:00
Hadi Nategh
285b71b6aa
WIP taglist: Fix backspace doesn't remove selected tags
2022-03-07 11:41:02 +01:00
ralf
f76ee3c920
forward min, max and step attribute to input node
2022-03-06 20:44:20 +02:00
ralf
4f93ceb16e
Implement et2-number(_ro) and preprocess <(textbox|float|int(eger)|number) type="float|int(eger)" to it in etemplate.php
...
.
2022-03-06 20:14:53 +02:00
ralf
3b896e0919
deprecated and replace attributes: needed-->required, blur-->placeholder in preprocessor
...
remove client-side code for them and enable translation of placeholder
2022-03-05 15:22:45 +02:00
nathan
aa2dc5c8f0
Maybe stop the disconnected month selectboxes?
2022-03-04 15:42:27 -07:00
nathan
0e4d32ea20
Get some neglected tests working again
2022-03-04 15:37:22 -07:00
nathan
4bd4402e28
Get taglist selected options showing up
...
Note the [internal] event listener bound in Et2Taglist.connectedCallback() that re-renders the TaglistSelection every time the taglist's [internal] value changes
2022-03-04 13:41:37 -07:00
nathan
2d3e3f86e1
Call requestUpdate() to pass on the new "multiple" value
2022-03-04 09:19:17 -07:00
nathan
4445b11a07
Make sure the option tag is included & registered as a webcomponent
2022-03-04 09:09:16 -07:00
Hadi Nategh
77a67d892b
WIP Et2Taglist wiget:
...
- Make the taglist a Lion-combobox
- Use templateOptions for different taglist types
2022-03-04 14:23:19 +01:00
nathan
1893a2c7fe
Fix duration in infolog list
2022-03-03 14:14:26 -07:00
nathan
aff71549a2
Move some code out of Et2Select into parent mixin for better re-use
...
Any child that has selectbox type functionality (extends Et2WidgetWithSelectMixin) needs to implement:
- _optionTargetNode() : HTMLElement
- _optionTemplate(option : SelectOption) : TemplateResult
2022-03-03 10:38:56 -07:00
nathan
882f2a913c
Implement regex validator
2022-03-02 14:22:19 -07:00
Hadi Nategh
d093a7648c
Remove unintentional committed ET2TaglistEmail file
2022-03-02 16:31:07 +01:00
Hadi Nategh
3112dc1399
WIP of Et2Taglist implementation
2022-03-02 16:28:45 +01:00
ralf
89613dd368
fix et2-date-duration showing NaN:NaN in timesheet
...
boolean attributes should not have a default of true, because DOM does NOT reflect false and we need to reflect for use in NM
--> changed default for select_unit for r/o duration to false and set it in timesheet.index to true
--> changing it for r/w too would require a lot of xet files to be updated (we don't need reflection there)
2022-03-02 11:02:24 +02:00
nathan
d7adf26ce6
Implement splitting up widget label using %s
2022-03-01 16:56:58 -07:00
nathan
7eca91e83a
Implement clearing manual validation error messages
2022-03-01 16:55:55 -07:00
nathan
3c9b9540e4
Fix copy/paste error - Et2DateDuration does not have an options property to access
2022-03-01 16:50:05 -07:00
nathan
00f7b51fbd
Hopefully prevent double-bind of input change
...
Should fix addressbook contacts/organisation filter
2022-03-01 15:15:24 -07:00
nathan
ae700fb391
Fix distribution list filter did not change filters when its value changed
2022-03-01 11:22:47 -07:00
ralf
5ff96e7818
fix last option select instead of empty label or any other option
...
eg. "shared by me" in Addressbook instead of "All contacts"
caused by this._inputNode not available when set_value was called
2022-03-01 18:29:13 +02:00
ralf
c70886f106
fix invalid can be null and then gives an error
2022-03-01 16:52:50 +02:00
ralf
36e3bd5de0
fix typo modalValue instead of modelValue to get validation (required) working
...
Had to overwrite formatter as it gave an error for accessing not yet set _inputNode
2022-03-01 16:51:40 +02:00
ralf
ac408f4eef
Change handler setting modelValue for validation
...
setting it in getValue() alone does not remove validation message direct after entering a date
2022-03-01 16:09:27 +02:00
ralf
185e0eaf95
fix error, if widget has no change handler
2022-03-01 14:45:38 +02:00
Hadi Nategh
2d6770ebfa
Fix missing Et2WidgetWithSelect class
2022-03-01 13:31:13 +01:00
Hadi Nategh
08549e25da
Make Et2WidgetWithSelect a Dedup Mixin in order to make it available cross widgets
2022-03-01 12:35:33 +01:00
nathan
f8b1fcf412
Try and get nextmatch header change working with web components
2022-02-28 14:09:09 -07:00
nathan
5406704c74
Add set_min() & set_max()
2022-02-28 14:06:37 -07:00
nathan
30ddeb79b0
Add missing change listener
2022-02-28 13:45:47 -07:00
ralf
9260f25476
fist option with value of 0 was not selected
2022-02-28 17:42:57 +02:00
ralf
eff1f10484
fix sometimes first non-empty label used for empty value
...
seems update got triggered before empty_label was set
2022-02-28 15:21:23 +02:00
ralf
e567a0d465
fix et2-select use first option, not just empty_lable, if value is not in options
2022-02-28 14:11:57 +02:00
ralf
cdb944147f
fix one left over needed property and added getter&setter for deprecated needed property
2022-02-28 12:12:04 +02:00
nathan
e166211a66
Fix required dates always failed as empty
2022-02-25 11:29:36 -07:00
nathan
44221f74ef
Get server-side validation messages displaying
2022-02-25 10:30:55 -07:00
nathan
e048b26235
- Deprecate "needed" attribute in favour of standard "required"
...
- Fix some required CSS
2022-02-25 10:21:16 -07:00
Hadi Nategh
08f45d32db
Fix onclick handling not working on description widget
2022-02-25 11:33:13 +01:00
ralf
832725ce52
fix display_format="h Ⓜ️ s" for r/o only gave one best matching unit (eg. 5m) not all units (eg. 0:05:30)
2022-02-25 10:16:28 +02:00
ralf
83cfb34c3c
fix not working date_format!="m" (the default) in NM by reflecting it into DOM
...
also adding it to all properties used by the r/o widget
This needs to be done by a lot more r/o widgets, if they assign their default values in the constructor!
2022-02-25 09:45:35 +02:00
nathan
d9e95dae87
Get needed attribute working
...
Will cancel submit, shows validation message
2022-02-24 15:53:40 -07:00
nathan
ce84dd753a
Get validation messages working
2022-02-24 15:53:40 -07:00
ralf
c83b281aa9
added et2-date-timeonly_ro widget
2022-02-24 19:44:30 +02:00
nathan
f0455b2ad2
Show empty_label when given a value that is not in the list of options
2022-02-23 13:13:14 -07:00
nathan
41a18b6274
CSS fixes:
...
- Missing border in Et2DateDuration without unit selector
- Box alignment was not applied to widget inputs (Et2DateDuration) when the widget inputs did not fill all available space
2022-02-23 11:15:55 -07:00
nathan
ec13b1a472
Fix missing label in date widgets
2022-02-23 10:43:39 -07:00
ralf
c9f6c98a5d
fix color-picker to not throw errors or lose its value
...
it clearly need more love ;)
2022-02-23 10:38:31 +02:00
nathan
354d15ba57
Support scroll wheel on date year, month, hour, minute
2022-02-22 11:23:54 -07:00
nathan
1e23a3c45e
Fix date duration was 2px too wide
...
A border on et2-date-duration (:host) is sized differently from a border on its children
2022-02-22 10:37:13 -07:00
ralf
c2166c5750
fix select-boxes submit their old value, if they are onchange="1"
...
@Nathan: Not sure if this is the right fix, but I can't see where we use Lit's FormatMixing, which defines serializedValue (and therefore select-box always returns the old modalValue)
2022-02-21 20:58:56 +02:00
ralf
d23c8cbcb4
stub for set_validation_error to silence TypeErrors in app.ts
2022-02-21 16:56:30 +02:00
nathan
9079f97d7e
Fix selectbox values were not set.
...
Paying more attention to the WebComponent life cycle here, rather than what our widgets do - connectedCallback(), requestUpdate(), updated() are more important than loadFromXML(), etc. which are only used when loading from the .xet the first time.
2022-02-18 12:02:27 -07:00
nathan
1776dd9005
Fix some readonly selectboxes were missing options
2022-02-17 16:37:59 -07:00
nathan
b8455e0b8d
Fix Et2DateTimeOnly displayed 00:00 when value was ""
2022-02-17 10:30:35 -07:00
nathan
be4633c9fa
Implement et2-date-duration
2022-02-16 16:45:40 -07:00
nathan
c81183f5f6
Fix incorrect value format in Et2Date
2022-02-16 10:52:37 -07:00
nathan
7cc9006e19
Add missing et2-date-timeonly widget
2022-02-16 10:43:15 -07:00
ralf
3f2c156914
fix missing flatpickr styles, thought you need to run: grunt cssmin
2022-02-16 15:36:06 +02:00
ralf
f29da5e613
fix TypeError with numbers not iterable
...
also problem with strings - thought no error - as they are iterated letter-wise, which is not what we want here
2022-02-16 10:35:09 +02:00
nathan
3ba1fe1416
Fix action pushed infolog edit dialog really wide
2022-02-15 14:01:07 -07:00
nathan
bc801f9c09
Fix missing import in et2 tests
2022-02-15 12:48:01 -07:00
nathan
7196455cbb
Add some colour variables
2022-02-15 11:51:23 -07:00
nathan
8203eb3efd
Use flatpickr for date widget calendar
2022-02-15 11:51:23 -07:00
nathan
d2020727fe
Fix some missing translation problems
2022-02-11 13:02:21 -07:00
Hadi Nategh
a7aee1d3d4
Let the pdfjs deal with new render request
2022-02-11 12:33:28 +01:00
Hadi Nategh
44d632be2a
Implements pdf-player custom element
2022-02-10 17:31:57 +01:00
nathan
650d76bd5c
Common cleaning of r/o select value
2022-02-07 13:51:05 -07:00
nathan
28eb3fdd80
Add Et2DateTimeToday
2022-02-03 14:58:56 -07:00
nathan
b91f66c629
Add some cleanup to find_select_options() make sure we're returning nice arrays instead of objects
2022-02-03 14:45:14 -07:00
nathan
3a1d8dfe11
Hide hidden textboxes
2022-02-03 14:41:58 -07:00
nathan
5b4c93b36a
Fix Et2Description tries to open on click even if href or link are not set
2022-02-03 13:52:14 -07:00
Hadi Nategh
2e5c433ab9
Add a boolean listonly option to vfs-upload widget in order to render only the file list
2022-02-03 15:56:03 +01:00
Hadi Nategh
1929ac02f6
Fix broken file widget's accept option caused by Resumable overriding it on initiation
2022-02-01 13:28:56 +01:00
Hadi Nategh
c7549daa54
Avoid setting an empty default image
2022-01-31 12:17:35 +01:00
Hadi Nategh
8e26062854
Add multi_src option into video widget
2022-01-28 15:51:33 +01:00
Hadi Nategh
66c6a4aef1
Implement custom html multi video element (makes it possible to merge and control multiple videos as one tag)
2022-01-28 13:49:17 +01:00
Hadi Nategh
d3f21bf333
Fix elements inside aligned box right/left don't get alignment properly
2022-01-25 12:43:37 +01:00
Hadi Nategh
4cf9c109d8
Make the ET2Button container accepting external css rules using ::part to get buttons in NM in shape (This should be avoided after NM is a WC)
2022-01-24 13:36:05 +01:00
Hadi Nategh
282c01f62e
Trigger a requestUpdate when setting widget_id in order to get attribute ID updates available for inherited widgets. (e.g. ET2Button=>requestUpdate)
2022-01-24 12:49:59 +01:00
Hadi Nategh
5904ac11b0
Fix button widget can't deal with app specific images e.g. mail/navbar
2022-01-24 11:58:06 +01:00
Ralf Becker
073e7b9d2c
enable et2-date-(duration|since)
...
need to register et2-date-since without _ro prefix, as there is only a r/o variant of the widget (currently)
2022-01-22 11:01:24 +02:00
nathan
f9ba6683be
Read-only date-since and date-duration widgets
2022-01-21 13:46:12 -07:00
Ralf Becker
7e4bdece84
allow to set <overlay legacy="true"> to disable new web-components for the whole xet-file
...
also disable (not working) r/w et2-select web-component again
2022-01-20 22:09:48 +02:00
Hadi Nategh
d02afcbe54
Add more general styling to buttons
2022-01-20 17:34:38 +01:00
Hadi Nategh
c8e16dd3fb
Fix broken alignments in button icon+label
2022-01-20 17:23:30 +01:00
Hadi Nategh
6fd23b631f
Get the right size icon for imageOnly buttons and add right padding for buttons with icon+label
2022-01-20 16:36:51 +01:00
Hadi Nategh
28bcaf9422
WIP styling buttons: another approach to style buttons, keeping the icon slotted
2022-01-20 13:13:04 +01:00
nathan
cc9a6bcf8a
Don't split single values
2022-01-19 15:57:59 -07:00
nathan
2ea15ed399
Fix the error when trying to load tracker
2022-01-19 13:37:40 -07:00
nathan
ac808f96e0
some cleanup
2022-01-19 13:18:41 -07:00
nathan
96c174d483
Implement select-account_ro as web component
2022-01-19 13:17:46 -07:00
Hadi Nategh
d33534e2e1
WIP styling buttons
2022-01-19 18:30:45 +01:00
Ralf Becker
5ec2a233a4
using WCs for simple select, r/o select-* and r/o date(-time)
...
ToDo/Questions Nathan:
- Tracker index gives a client-side TypeError
- <et2-select-account readonly="true" is not registered, but <et2-select type="select-account" readonly="true" works
- <et2-date-time was registered as <et2-datetime, was that a typo of a conscious choice to rename the widget and not just prefix with et2-
- not yet enabled are r/w et2-date(-time)
- still missing are r/o et2-date-(since|duration)
2022-01-19 10:58:01 +02:00
nathan
8eb0f21893
Fix webcomponents did not load value
2022-01-18 14:13:25 -07:00
Hadi Nategh
8b9e81fbfd
WIP styling buttons and color definitions
2022-01-18 15:13:48 +01:00
nathan
32be8200a6
Fix copy/paste error - looks like select-access wasn't implemented in et2
2022-01-17 15:31:25 -07:00
nathan
e07220392d
Select widgets with static options as WebComponents
2022-01-17 15:13:50 -07:00
nathan
09cbc44e67
Get cached server-side options working for webcomponent
2022-01-14 09:29:59 -07:00
nathan
82277c802b
Readonly textbox
2022-01-13 15:31:01 -07:00
nathan
20c82b6d72
Starting on selectboxes with static options.
...
Not entirely sure this is the way to go, but at least we don't have to
1. copy the options
2. inherit the whole editable object for a readonly
2022-01-13 15:28:52 -07:00
nathan
a5f8b6076a
Add some tests for Et2Box.disabled to make sure it behaves.
2022-01-12 14:35:01 -07:00
nathan
19a2b13974
Api: We also need to trigger LitElement update when we change it here, I guess.
...
Fixes disabled attribute didn't change when set_disabled() was called.
2022-01-12 13:55:58 -07:00
nathan
12120b5434
Api: Fix disabled not being correctly set
2022-01-12 11:41:13 -07:00
Ralf Becker
a3b63c9514
implement new "units" parameter to limit used units in date-since widget
...
eg. <date-since units="d" shows age in days
2022-01-12 12:47:49 +02:00
nathan
5a3e54a592
Fix for disabled not being set in some cases, try to deal with type
2022-01-11 15:16:50 -07:00
nathan
2c59914b74
Fix disabled attribute was not getting properly handled
...
In particular Admin -> File Manager -> VFS mounts and versioning had the "Delete all older versions..." block disabled when it shouldn't have been.
2022-01-10 09:32:31 -07:00
Ralf Becker
1f4cb50e74
use $method parameter of Api\Etemplate::exec() plus new et2_process handler as menuaction GET parameter
...
allows determining the called function on the URL to eg. send it to different FPM pool
(before the menuaction of et2 was always "EGroupware\Api\Etemplate::ajax_process_content")
2022-01-09 16:38:14 +02:00
nathan
fd7e7e2828
Basic tests for Et2Select, & fixes for bugs they revealed
2022-01-07 14:13:38 -07:00
nathan
57860e03db
Get onchange working (for select widget)
2022-01-06 16:22:55 -07:00
nathan
4ed888476c
Deal with some IDE warnings
...
better documentation of things tried
2022-01-05 13:14:28 -07:00
nathan
7ab60918f4
Fix missing bits in cssImage() example
2022-01-05 10:24:23 -07:00
nathan
a48e6cf1d3
- Add cssImage() to help with putting our images into LitElement CSS blocks
...
- Some code cleanup
2022-01-05 10:21:18 -07:00
nathan
85f753324d
Remove unused import
2022-01-05 08:07:01 -07:00
nathan
f8ab5c521e
Selectbox webcomponent
2022-01-04 15:38:10 -07:00
nathan
8d5f39b2d3
Add tests for description widget
2022-01-03 09:58:55 -07:00
nathan
0f45aed876
Reflect properties into DOM attributes, it's faster
2021-12-21 11:16:58 -07:00
nathan
5bdf12f1b9
- Detached widgets still need a loadingFinished() for if they are children of legacy widgets
...
- Add description click handler
2021-12-21 10:52:39 -07:00
nathan
602ac44c15
Fix readonly webcomponents inside a legacy widget were not loaded as readonly
2021-12-21 10:50:21 -07:00
nathan
fa707f0627
Fix widget.egw() returning null in some cases when widget parent was not completely in widget tree
2021-12-21 10:45:38 -07:00
nathan
7fcf6f1423
Add some more properties for description
...
activate_links
extra_link_target
extra_link_popup
href
2021-12-20 15:15:32 -07:00
nathan
e1ab343a5d
WIP on Et2Description. Shows improvement in nm render speed.
2021-12-17 14:47:19 -07:00
nathan
4e597b5672
Add date readonly, some class optimizing
2021-12-17 10:06:37 -07:00
nathan
3f71a75c86
Avoid error if expand finds nothing for the value (returns null)
2021-12-16 13:05:13 -07:00
nathan
9a3753eb93
Lets try this fix for the ID problem
2021-12-16 11:28:07 -07:00
Hadi Nategh
170ac4d6e2
Fix error Cannot read properties of null (reading 'split')
2021-12-16 11:39:43 +01:00
nathan
a027649ae5
Fix the failing clone()
2021-12-15 11:49:18 -07:00
nathan
528134cfac
Adapt nextmatch to work with webcomponents + readonly datetime widget
2021-12-14 16:55:57 -07:00
nathan
a7a84df7e5
Etemplate: Set a gap instead of using margin
2021-12-14 08:55:34 -07:00
nathan
d7a001cef0
Documentation fix
2021-12-10 13:42:38 -07:00
nathan
ea2004173f
Etemplate: Fix readonly was still giving a value
2021-12-10 13:24:06 -07:00
nathan
82b3abc290
Etemplate: Some more tests for readonly
2021-12-10 11:15:02 -07:00
nathan
684d0846dc
Api: Attributes can contain multiple translatable substrings wrapped with {}
2021-12-09 11:32:31 -07:00
nathan
081b692dd1
Fix webcomponent children were not fully loaded before et2_ready callback was called
2021-12-09 10:54:37 -07:00
nathan
4fe9f6c614
Api: Stop images inside boxes from stretching
2021-12-09 09:26:58 -07:00
Hadi Nategh
d42f20cf38
Fix issue contact plus button sometimes gets stuck
2021-12-09 15:08:42 +01:00
nathan
50f4b5cd47
Fix missing calendar participant + button
...
set_readonly() was missing, getWindowTitle() was using .options.value instead of get_value()
2021-12-07 13:36:53 -07:00
nathan
d69d57e6e9
Merge branch 'master' into web-components
2021-12-06 10:52:10 -07:00
Hadi Nategh
c115e762b1
Add underline button into html editor's toolbar
2021-12-06 10:14:37 +01:00
nathan
d126834468
* Etemplate: Add link icon overlay to link list
2021-12-03 14:28:54 -07:00
nathan
5af7d0f644
* Etemplate: Add link icon overlay to link list
2021-12-03 14:18:48 -07:00
nathan
32d5bae817
Fix nm left template in wrong place
2021-11-19 11:57:22 -07:00
nathan
105b0705b1
- Fix duplicated row from template above nextmatch
...
- Fix favorite in wrong place
2021-11-18 14:37:23 -07:00
nathan
7831529ecb
Improve warning about parenting for WC widgets into legacy widgets
2021-11-18 14:34:13 -07:00
nathan
b91e1d8a5f
Merge branch 'master' into web-components
2021-11-18 10:28:30 -07:00
nathan
52a2d4e9bb
Clear tree before setting options to avoid duplicates
2021-11-10 15:00:32 -07:00
nathan
d15d7a3426
Implement parent_node attribute
...
Fixes calendar sidebox was not shown
2021-11-10 13:41:23 -07:00
nathan
7b11a25b8d
Fix some legacy parent issues where parent DOM node was not found when needed
...
- Checking & waiting for promises
- Could not get DOM nodes from nm header sub-templates
2021-11-10 11:47:07 -07:00
nathan
c7e6baed69
Fix datetime didn't handle '0' as empty / blank
2021-11-08 13:40:28 -07:00
nathan
b78b7c3960
Fix formatter tests to work independant of timezone when run
2021-11-04 09:25:37 -06:00
nathan
ca429d0fae
Tests for date + time parsing & formatting, and fixing the bugs they revealed
2021-11-03 13:49:39 -06:00
nathan
672ed0aa0e
- DateTime widget to handle dates with times
...
- Time & Date+time parser & formatter functions
- Date widget does not return a time
2021-11-03 09:05:16 -06:00
nathan
312bf62adc
Implement readonly for date widget
2021-11-01 10:21:08 -06:00
nathan
76d7447dab
Merge branch 'master' into web-components
2021-11-01 09:37:26 -06:00
Hadi Nategh
118b9c0e92
Fix onchange event not working for date-range widget
2021-10-22 13:16:33 +02:00
nathan
068e3feff0
Api: Fix setting the date min attribute to a number did not work
...
jQueryUI timepicker checks the type of variable
2021-10-19 14:15:37 -06:00
nathan
2256a26327
Make date widget work a little better WRT timezones
2021-10-18 16:03:05 -06:00
nathan
fbbc466c78
Merge branch 'master' into web-components
2021-10-18 10:56:05 -06:00
Hadi Nategh
b84ef08c29
Set node property for inputWidget as it's expected to contain input node
2021-10-13 15:36:33 +02:00
Hadi Nategh
f454536165
WIP implementing Iframe widget:
...
- Get some styling
- An approach to display label slot
2021-10-13 12:17:07 +02:00
Hadi Nategh
76a1f3c584
WIP implementing Iframe widget:
...
- Add fullscreen option
2021-10-13 11:11:52 +02:00
Hadi Nategh
13e717ce68
Merge pull request 8feac04979
#108 from Alexandros into the master
2021-10-11 10:34:19 +02:00
Hadi Nategh
be57764fa6
WIP implementing Iframe widget
2021-10-08 16:03:09 +02:00
nathan
d43c27a31b
Fix nested placeholders (customfields from other apps) were not being displayed properly
2021-10-07 14:51:16 -06:00
nathan
c73a7beac8
Add placeholder list for calendar & filemanager
2021-10-07 13:47:14 -06:00
nathan
66f5c4bfc2
Add start of Et2Date tests
2021-10-07 08:41:53 -06:00
nathan
02dce82010
Merge branch 'master' into web-components
2021-10-06 14:02:22 -06:00
nathan
6126bc2ac9
Placeholder dialog: Placeholder groups can now have groups
...
References (info_contact)/ customfields to other apps are expanded so all their placeholders are available as well
2021-10-04 14:45:57 -06:00
nathan
4b67e78012
Fix selectbox grouped options were not using value if provided
2021-10-04 14:41:08 -06:00
Hadi Nategh
b52abb9b62
Implement a test for Colorpicker widget
2021-10-04 14:42:30 +02:00
nathan
96bdcd7c0e
Fix some placeholder dialog bugs:
...
- Fix user placeholder does not use selected entry, so looks like a bug. Now hiding entry for user placeholders.
- Fix user & general showed up in entry app selectbox
- Fix insert address dialog was not passing selected entry
2021-10-01 13:35:27 -06:00
Ralf Becker
db83cc437c
refactor client-side form is not valid/submittable check of submit method into an own method isInvalid()
2021-09-30 09:26:36 +02:00
nathan
f6828a8205
Placeholder dialog: Add "name, email, phone snippet", fix some more missing translation issues
2021-09-28 10:16:57 -06:00
nathan
a39eeef7e7
Placeholder dialog: Fix some missing translation issues
2021-09-28 09:49:29 -06:00
Hadi Nategh
ae5e11f7a2
Translate details title before setting it into the DOM
2021-09-28 17:08:36 +02:00
nathan
7f930a6221
Placeholder dialog: Support for other apps, starting with Infolog
2021-09-27 14:46:41 -06:00
Hadi Nategh
6f8fccb1ad
Get mail app working (we use old-box widgets until replacing splitter with a web-component)
2021-09-27 16:14:42 +02:00
nathan
e460ed52d4
Et2Date style improvements
2021-09-24 11:13:14 -06:00
nathan
901bb2b70d
Fix Calendar popup was opening with wrong date
2021-09-23 14:12:15 -06:00
nathan
25773a929f
Merge remote-tracking branch 'origin/master' into web-components
2021-09-23 10:22:18 -06:00
nathan
d512238dc0
* Collabora: Add address insert dialog
2021-09-21 14:07:22 -06:00
nathan
8e67e2efad
WIP on placeholders
...
- Some TS cleanup
- Fix error in preview giving wrong results
2021-09-21 10:19:24 -06:00
nathan
6884902d93
W.I.P on collabora placeholder insert
...
- better button styling
- make entry select app = selected app
2021-09-20 16:28:20 -06:00
nathan
29bd739955
W.I.P on collabora placeholder insert
2021-09-20 15:34:55 -06:00
nathan
fa5dcc2a3c
Fix uneeded remove & re-add of WebComponent widgets to legacy parent
...
This fixes the incorrect vertical ordering of the preferences dialog (was tabs, header, footer )
2021-09-17 13:12:24 -06:00
nathan
d23b55fe6d
Change how boxes justify contents so buttons group on the left again.
...
Children without a max-width should still expand to share space.
2021-09-17 09:16:58 -06:00
nathan
59ee0b57f2
Get translations working in labels & statustext
2021-09-16 14:56:13 -06:00
nathan
e279945953
Try removing width:100% from box to help with sizing nested boxes
...
This should fix the problem with timesheet.edit delete button being pushed off to the right
2021-09-16 13:49:48 -06:00
nathan
abd2e3804a
- Fix default button image was not working
...
- Fix disabled="false" in template sort-of disabled buttons instead of them working normally
This fixes CRM view close button
2021-09-16 13:37:59 -06:00
nathan
d6ad0d986c
Changes from what we learned - using slots & not overriding render() to get all that Lion has
2021-09-16 11:03:46 -06:00
Hadi Nategh
029f75b9bc
Add getValue, setValue, clear button handler and styling for colorpicker
2021-09-16 11:38:09 +02:00
nathan
44fcd07f6b
Hopefully fix some out-of-order children when the first child of a box is a legacy widget
2021-09-15 16:29:17 -06:00
nathan
d68b8fdfe4
Fix disabled property/attribute was not getting reflected down to node, and Et2Box was missing the disabled style
2021-09-15 14:59:31 -06:00
nathan
23f8bc24c2
Fix some button stuff
...
- Submit / Cancel action was not being called correctly, so cancel buttons were not skipping change check
- Implement default image & class based on ID
2021-09-15 11:08:44 -06:00
nathan
d5652c2f7e
Bind app.appname.function context so widget can't lose it
2021-09-15 09:23:15 -06:00
nathan
decd64e7c3
Getter/Setter shenanigans to
...
- get widget's DOM ID to have the instance template as prefix
- keep widget.id as what's in the template, matching legacy
- widget.dom_id gives the DOM ID, matching legacy
2021-09-14 16:01:22 -06:00
nathan
277f465c50
Fix onclick to keep originally bound click handler context.
...
Fixes app.appname.func callbacks had widget as context
2021-09-14 13:23:17 -06:00
nathan
442de20d90
Add missing set_disabled() method
2021-09-14 11:50:10 -06:00
nathan
3c7da204c5
Fix button icons so they don't get space when not there
2021-09-14 11:43:43 -06:00
nathan
6883760d6f
Get Et2Textarea to automatically fill their available space if no width or height attribute is set
2021-09-14 11:12:33 -06:00
nathan
373cf6590d
Merge remote-tracking branch 'origin/master' into web-components
2021-09-13 14:56:08 -06:00
nathan
dd47af5d09
Remove debug
2021-09-13 14:52:28 -06:00
nathan
76ad419420
Fix index templates had nextmatch row nodes below the nextmatch
2021-09-13 14:41:36 -06:00
nathan
6a70efcc34
Fix left/right align CSS to work with out-of-order children
2021-09-13 11:57:23 -06:00
nathan
b7e34ed779
Fix child order when children are a mix of WebComponent & legacy widgets
2021-09-13 11:26:29 -06:00
nathan
6abb239705
Avoid error if widget does not have transformAttributes method
...
This might be an issue with not properly implemented DetachedDOM interface
2021-09-09 13:43:16 -06:00
Hadi Nategh
5dbba31285
Fix toolbar list header taking a while to get opened
2021-09-08 12:07:47 +02:00
Hadi Nategh
91d74767fe
Add an option to configure toolbar's list header style
2021-09-07 16:30:53 +02:00
nathan
6fe2ec6c65
Fix readonly was not hiding buttons
...
in Lion, they already have functionality on readOnly
2021-09-03 14:53:51 -06:00
nathan
347ea25131
Fix webcomponent attributes (class) were causing errors in nextmatch instead of being checked for variables
2021-09-03 14:45:45 -06:00
nathan
968a2d03bb
Fix widget class in .xet file was not showing up on webcomponent element
2021-09-03 14:44:52 -06:00
nathan
4cafdeb359
Fix webcomponent children of webcomponents did not get properly added when cloned.
...
Fixes infolog description was missing
2021-09-03 13:08:49 -06:00
nathan
dccf43f3e3
Fix clone & child handling
...
This gets webcomponents (Et2Box) working in nextmatch
2021-09-03 11:20:53 -06:00
Ralf Becker
582793d52b
Revert "Bring web-component work into master branch"
...
To many things are not working :(
- addressbook, infolog, even timesheet index lacks at least r/o textbox and problably other widgets
- smallPART (with many extra widgets) is completly unusable
- *box widget seems not to skip empty boxes
--> we need more testing and progress, before we can merge that
This reverts commit 9cee681b94
.
2021-09-03 11:28:22 +02:00
nathan
3619bd6ae1
Fix child widget handling to handle both legacy and webcomponent children the same, as much as possible
2021-09-02 13:40:26 -06:00
nathan
9cee681b94
Bring web-component work into master branch
2021-09-02 10:52:10 -06:00
nathan
25ba3e477a
- Set a max-width on buttons so we can let them flex
...
- Fix missing button label
2021-09-02 09:43:00 -06:00
nathan
637bd9fe5b
Style changes on Et2Box, now supporting the align [left|right] property.
2021-09-02 09:39:43 -06:00
Hadi Nategh
53f156a66b
WIP implementing colorpicker widget
2021-09-02 16:47:49 +02:00
nathan
61da5c544a
Merge branch 'master' into web-components
2021-08-27 11:40:22 -06:00
nathan
8a2b717c51
Fix some type issues to make everything play more nicely together
...
(Not complaining about things from parent classes being missing, mostly)
2021-08-27 11:21:40 -06:00
Ralf Becker
fb69cf39fd
replace all "(../)+node_modules/" with bare specifiers
2021-08-27 08:13:36 +02:00
Guy Bedford
2526b0460e
fix: node_modules resolutions
2021-08-27 07:58:30 +02:00
nathan
4218b132f9
- Sort out some type issues to reduce warnings/duplication
...
- Some tests for textbox
2021-08-26 12:59:13 -06:00
nathan
181b1c03ae
Fix imports to work with rollup
2021-08-26 09:20:41 -06:00
Hadi Nategh
3adec01e58
Fix youtube video starts to play automatically after being seeked to a time
2021-08-26 12:11:24 +02:00
nathan
2e712c47bc
Move the rest of the WebComponents into their own directory to get ready for tests
2021-08-25 15:35:06 -06:00
nathan
584d6bf51d
Add some button tests
2021-08-25 15:24:27 -06:00
nathan
ef3848fd3c
- Fix including everything just for a unit test
...
- Start of some tests for Et2Button
2021-08-25 11:32:15 -06:00
nathan
d656eb0e69
Javascript unit testing
...
Runs over all files in api/js/etemplate/<widget>/test and <app>/js/test folders
Run from the commandline with: npm jstest
Can also run & watch for changed files, check package.json for scripts.
2021-08-24 14:52:09 -06:00
nathan
d127cae5c6
Add get_value() to match legacy
2021-08-24 14:44:45 -06:00
nathan
538e483499
Merge branch 'master' into web-components
2021-08-23 15:41:27 -06:00
nathan
b393375823
Fix readonly property to match parent
2021-08-23 15:26:00 -06:00
nathan
8f784cd7b3
Remove setting defaults to undefined. It doesn't help the sizing issue, and it causes problems in the parent's size calculations
2021-08-23 13:09:45 -06:00
nathan
e3e3def64c
Use Lion's SlotMixin to handle button icon instead of managing it ourselves
2021-08-23 11:49:17 -06:00
nathan
17b4278ca2
Implement iterateOver for children
2021-08-23 10:21:51 -06:00
Ralf Becker
0203ce5a1f
also augmenting Promise returned from egw.request() with an abort method and using that in link-widget
2021-08-23 09:37:18 +02:00
nathan
64860e12f1
Better layout for textarea, but it's still not filling
2021-08-20 16:11:59 -06:00
nathan
e34ca22499
Split textarea off from textbox & start implementing
...
Splitting the two made things a lot simpler to deal with
2021-08-20 15:52:22 -06:00
nathan
0c6cd22bcd
Remove debugger
2021-08-20 15:51:14 -06:00
nathan
f00e4fb708
- onclick is fine being an attribute
...
- Avoid error when calling loadingFinished on a webComponent and the parent does not give/have a DOM node
2021-08-20 10:37:41 -06:00
nathan
e6ecdd1b25
Fix onclick context was bound to the widget class instead of the widget instance
...
This caused any onclicks that used "widget" variable to fail.
2021-08-20 10:23:39 -06:00
Hadi Nategh
2125e14b43
Import missing date library
2021-08-20 10:22:15 +02:00
nathan
e0144fcec7
Fix dialog not displaying set value
2021-08-19 15:32:47 -06:00
nathan
381d12dfa2
Get Et2Date loading & formatting value
2021-08-19 15:09:00 -06:00
nathan
b4a13037e2
- Reduce duplication with loadWebComponent() by making it a function & exporting
...
- Start to implement readonly attribute
2021-08-19 10:54:32 -06:00
Ralf Becker
6baf07090e
implement some missing features from old eTemplate:
...
- evaluate class set on a grid cell as done for the widget contained (probably more a bug-fix then a feature)
- allow to preset query for link-entry widget by passing an object with a query attribute
- allow to overwrite not only $readonlys[__ALL__] but also widget readonly attribute with a $readonlys value of false
2021-08-19 10:46:34 +02:00
Ralf Becker
1596bec75c
get form::name() legacy function working by making used et2_form_name function global, if used
2021-08-19 10:22:40 +02:00
nathan
445f394217
Fix some issues
...
- Some legacy widgets can not provide their DOMNode right away, but some give errors when we ask at the wrong time. Now catching those.
- Grid could not set disabled on web components, causing error
- Boxes were trying to work on labels they didn't have, causing error
2021-08-18 17:41:23 -06:00
nathan
39886a149d
* Api: Fix entry list stops scrolling if a row is updated while the tab is not visible
2021-08-17 13:56:52 -06:00
Hadi Nategh
96e960226f
Fix volume gets initiated on a wrong object becuase the youtube object is not yet ready
2021-08-17 12:01:53 +02:00
Hadi Nategh
61764809c8
Add getter/setter for video's mute option and fix volume unit
2021-08-16 17:49:47 +02:00
Hadi Nategh
4c1f398322
Fix volume and playbackrate for both youtube and html video
2021-08-16 13:48:10 +02:00
Hadi Nategh
5f4e910d0d
Do not activate cropper when the widget is set to readonly
2021-08-16 12:29:56 +02:00
nathan
4f225054f8
WIP on Date widget
...
Something's not right with the parser/formatter, they're not getting called.
Times not handled yet
2021-08-13 15:26:18 -06:00
Hadi Nategh
782de6d887
Remove excessive bracket
2021-08-13 12:56:20 +02:00
Hadi Nategh
a7ea5b51bf
Implements volume and playback options for video widget (both for html video and youtube)
2021-08-13 12:39:38 +02:00
nathan
35e5d57b2a
Merge branch 'master' into web-components
2021-08-12 13:22:51 -06:00
nathan
54e5826fc7
Get the link entry app selection menu working again
2021-08-12 11:21:49 -06:00
nathan
fac1dfb8d4
Merge branch 'master' into web-components
2021-08-12 10:35:46 -06:00
nathan
243d769d7c
- Change filenames to match classnames
...
- Change node import syntax
2021-08-12 10:32:05 -06:00
Hadi Nategh
d07a7ab194
WIP of replacing bower-asset packages:
...
- Get jquery-ui and touch event plugin working (although still modular import is not possible becuase of a wierd issue with jquery-ui tooltip plugin)
- Import timepicker-addon plugin as npm package
- Update composer.lock file
2021-08-12 14:51:38 +02:00
Ralf Becker
72699fad30
fix ESM module import (no currly brackets) as suggested by Guy Bedford
2021-08-11 19:28:01 +02:00
Hadi Nategh
8743bf64b0
Replace nm column jquery-ui sorting with sortablejs
2021-08-11 16:49:51 +02:00
Hadi Nategh
572908e300
Get favorites list sorting working with Sortablejs
2021-08-11 16:49:29 +02:00
Hadi Nategh
5777ebeb75
Get et2_grid sortable working with sortablejs
2021-08-11 16:49:16 +02:00
nathan
db7828ad1d
Add et2-box (& et2-hbox & et2-vbox) WebComponent
...
Box can have legacy & webcomponent children.
Used here in infolog edit created & modified row
2021-08-10 15:02:52 -06:00
Hadi Nategh
93c390139b
Fix error TypeError: Cannot read property 'length' of undefined
2021-07-26 10:10:30 +02:00
nathan
30d835fa39
- Get label "for" attribute working when target is a WebComponent
...
- Remove requirement that tooltip target be jQuery, get tooltips working on WebComponents
2021-07-23 10:18:45 -06:00
nathan
5fee9fcafe
Make et2-textbox as a WebComponent
...
Not all attributes are handled yet, but value cycle is working
2021-07-22 14:54:10 -06:00
nathan
ad00156113
Merge branch 'master' into web-components
2021-07-19 14:15:52 -06:00
nathan
610d8e1547
Try out Lion as base for button.
...
Much easier to customize, though not without its issues:
- Lion give us some stuff to handle validation, forms & input that I haven't looked into
- Slightly different mixin structure, I might be missing out on something
- Properties in extending class cause TypeScript error, but still work
2021-07-19 11:57:06 -06:00
Ralf Becker
0a1e784f2e
egw.getCache(name) function to get a cache-object shared between all EGroupware windows and popups
...
used to share server-side generated options for et2_selectbox
also removed nextmatch specific code from et2_selectbox which seems no longer necessary
2021-07-19 17:02:37 +02:00
Ralf Becker
87694e660c
seems to be no need to send a synchronous request
2021-07-16 12:03:29 +02:00
Ralf Becker
50b8839609
fix not working InfoLog index: synchronous request must return fulfilled promise
2021-07-16 11:49:53 +02:00
Ralf Becker
b780c7ebd8
replace jQuery.ajax with fetch (or XMLHttpRequest for synchronous requests)
2021-07-16 08:47:22 +02:00
nathan
47e296c947
Get to the point where a button will submit. Yay.
...
Most other input widgets can build off this base.
It doesn't validate yet because of the server side, but the client side is working.
2021-07-15 10:08:26 -06:00
nathan
1294bc99c6
Some cleanup
...
- Add but comment out decorators plugin so we know about it, but don't use it yet
- Better instanciation of button image node
- Remove previous mixin experiments
- Start on trying to get click handler parsing & working
2021-07-14 16:11:20 -06:00
nathan
b0322c549a
Attribute parsing & basics of WebComponents looking like et2 widgets
2021-07-14 09:49:36 -06:00