1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-30 13:29:56 +00:00
Commit Graph

4077 Commits

Author SHA1 Message Date
Jeremy Ruston
bf773eb39a
Add "average" filter operator for arithmetic mean (#5612) 2021-04-27 10:09:13 +01:00
jeremy@jermolene.com
4a99e0cc7d Change "index" attribute of list widget to "counter", and use 1-based counting
Extends #5611
2021-04-26 14:41:26 +01:00
Saq Imtiaz
e2379b599e
Fixes Action-listops bug (#5644) 2021-04-26 11:29:16 +01:00
Saq Imtiaz
8203ee06c3
Allow suffixes for filter runs (#5252)
* Make filter run prefixes extensible

* Make filter run prefixes extensible

* Support rich suffixes for filter runs

* merged conflicts

* Pass suffixes to filterrunprefix
2021-04-25 19:37:47 +01:00
Mario Pietsch
ac15334bb0
Add support for disabled editor toolbar buttons & docs (#5294)
* add dynamic toolbar buttons + HowTo

* remove some whitespace.

* move howto and improve shortcut logic

* move howto

* add whitespace so it can be removed in an other PR.
2021-04-25 16:17:32 +01:00
Mario Pietsch
8849ed0d46
Fix refreshing of select widget when attributes change (#5635) 2021-04-25 16:05:02 +01:00
Simon Baird
5e236d35a5
Revise the TiddlySpot Saver settings form (#5628)
Mention TiddlyHost and link to some documentation on the
configuration options.

Also remove the TiddlySpot control panel and backups links since
they no longer work.

Notes:
* The last three fields are no use for TiddlySpot or TiddlyHost, but
  it's possible that someone, somewhere is still using the old
  store.php from Bidix's UploadPlugin, and would miss them if they
  were removed.

  I'd be happy to remove them in a future PR, if it's decided they
  can be retired.

  (If they were removed, I could delete the last row here:)
  https://github.com/simonbaird/tiddlyhost/wiki/TiddlySpot-Saver-configuration-for-Tiddlyhost-and-Tiddlyspot

* It's still called "TiddlySpot Saver" which I think is fine for
  now. TiddlyHost might use a different saving method in future
  so keeping the existing name seems best.
2021-04-24 08:54:44 +01:00
Jeremy Ruston
85ba7ac041
Extend list widget with "index" attribute (#5611)
* Extend list widget with "index" attribute

* Fix refreshing bug

* Clarify performance note
2021-04-20 09:15:11 +01:00
jeremy@jermolene.com
c325380231 Run the SVG optimiser on the new plus/minus icons 2021-04-16 09:25:07 +01:00
jeremy@jermolene.com
a6a2535c3a Add plus/minus icons 2021-04-16 09:21:47 +01:00
jeremy@jermolene.com
89546b3357 Add a hidden setting to control HTML sandboxing 2021-04-11 10:10:16 +01:00
Saq Imtiaz
eced60853f
Extend Dropzone widget (#5597)
* Extend dropzone widget with optional actions invoked after tm-import-tiddlers message has been sent. Allows triggering an alternative UX for the import

* Allow restricting a dropzone to specific mimeTypes via mimeTypes and mimeTypesPrefix attributes

* Use a mimeTypesFilter instead of the mimeTypes and mimeTypesPrefix attributes

* Updated refresh handling

* Syntax cleanup

* Replace references to mimeType with content type for consistency with existing documentation. Update documentation for DropZone widget
2021-04-10 09:48:50 +01:00
jeremy@jermolene.com
b9647b2c48 Ensure Fieldmangler widget doesn't propogate events that it traps
Fixes #5593
2021-04-08 16:56:36 +01:00
jeremy@jermolene.com
28521d82f3 Revert "Extend transclude widget to optionally set variables"
Actually a partial reversion, because we're keeping the minor refactoring of makeChildWidget() in widget.js

This reverts commit 80ee5adb14.
2021-04-02 09:47:38 +01:00
Cameron Fischer
ef6307a64e
Do not escape double quotes in tiddler DIVs to save space (#5383)
* double quotes are no longer escaped in html bodies

* changed tiddlyweb's html-div-tiddler; documentation

French version still needs a translation though
2021-04-02 09:32:32 +01:00
cdruan
3b35411aba
Change css-escape-polyfill to a tw uitility method (#5552)
* Replace css-escape-polyfill.js with escapecss.js utility module

* Add $tw.utils.escapeCSS() method and invoke that function within the
  escapecss operator.

* Add test cases for the "escapecss" filter operator

* Fix $tw.boot.doesTaskMatchPlatform() so it works as expected if
  a module's export.platforms contains more than one values

* Add missed files to the last commit
2021-04-02 09:25:01 +01:00
jeremy@jermolene.com
d6ea369f5e Edit text widgets should use default text for missing fields 2021-03-31 14:15:01 +01:00
Saq Imtiaz
860568136f
ViewSwitcher : use Button widget instead of LinkWidget (#5573) 2021-03-29 09:02:47 +01:00
Mario Pietsch
85835ebe42
fix 5424 add button is in new line (#5425) 2021-03-26 09:32:12 +00:00
Joshua Fontany
3d608892bd
targeted fix for 5366 (#5416) 2021-03-26 08:42:31 +00:00
Joshua Fontany
5be647b610
Fix 4461 (#5522) 2021-03-26 08:41:41 +00:00
Joshua Fontany
a2e7cc51b5
Fix 5483 & 3483 (#5504) 2021-03-26 08:39:32 +00:00
jeremy@jermolene.com
226df2ad7d Fix exporting of tiddlers that begin and end with double quotes 2021-03-23 09:27:16 +00:00
jeremy@jermolene.com
7f202f35b4 Minor refactoring for clarity
See 9af68297cd (r48540814)
2021-03-22 09:50:54 +00:00
jeremy@jermolene.com
9c31ff1fb1 Use window.setTimeout(fn,0) for $tw.utils.nextTick in the browser
It seems that best practice has now moved to using zero:

https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout
2021-03-22 09:08:32 +00:00
jeremy@jermolene.com
8aad7b00ab Render command: fix bug with multiple variable usage 2021-03-19 18:35:10 +00:00
jeremy@jermolene.com
a38dc17300 Extend render command to allow multiple variables to be passed 2021-03-19 17:09:53 +00:00
jeremy@jermolene.com
9af68297cd Fix transclusion refreshing
Missed off 80ee5adb14
2021-03-19 16:14:15 +00:00
jeremy@jermolene.com
80ee5adb14 Extend transclude widget to optionally set variables
Partially fixes #5199
2021-03-19 15:37:59 +00:00
jeremy@jermolene.com
a6958bfe85 Fix css-escape-polyfill.js on old iOS
Fixes #5546
2021-03-14 10:34:41 +00:00
jeremy@jermolene.com
7b1a0c6e6a Fix ES5 issue
Fixes #5545
2021-03-14 10:27:05 +00:00
jeremy@jermolene.com
e157d16b72 Add data-tag-title attribute to tag pills
Fixes #5543
2021-03-13 13:19:12 +00:00
Mario Pietsch
05acf3dce4
fix wiki.search options invert init problem (#5542) 2021-03-12 21:12:06 +00:00
jeremy@jermolene.com
9eda02868f Introduce messagecatcher widget 2021-03-09 18:07:07 +00:00
jeremy@jermolene.com
5e4430dbf9 Fix Radio widget to refresh selectively, and use the checked attribute properly 2021-03-07 15:49:07 +00:00
jeremy@jermolene.com
d56e8764a1 Button widget: apply aria-expanded attribute when controlling a popup
Addresses (1) and (5) from #5519
2021-03-01 17:59:29 +00:00
jeremy@jermolene.com
ef76349c37 Add support for utils-browser modules 2021-02-22 12:11:39 +00:00
jeremy@jermolene.com
50d0b6ee50 Modals: don't crash if options.event is missing
Raised here:

https://groups.google.com/d/msgid/tiddlywiki/3E83D2D3-42B2-4AA1-A042-52AB1D7B9B15%40gmail.com
2021-02-13 10:28:31 +00:00
Cameron Fischer
c0dc2669c0
Preallocating in LinkedList's toArray method (#5488) 2021-02-11 13:39:50 +00:00
Joshua Fontany
bfa062f23d
Fix filesystem (#5465) 2021-02-04 16:11:07 +00:00
jeremy@jermolene.com
9f9ce6595b Make it easier to subclass the wikitext parser with a custom rule set
We can now pass arrays of rule classes to the parser constructor, overriding the rules that would normally be used by the parser.

This allows us to create custom variants of the wikitext parser with their own content type.

It could also provide a basis for a new Markdown parser based on our existing wikitext parser but with new rules.
2021-02-03 15:13:56 +00:00
Simon Baird
12f1847475
Support upload saver without username/password (#5455)
The default behaviour is unchanged, but if you write "yes" to
$:/UploadWithUrlOnly then it will assume it's possible to upload
with a blank username and password, as long as the host is set.

The motivation is to support a upload plugin compatible upload
service that uses some method to authenticate other than the legacy
upload plugin user/password params.

Without this patch, the user would need to enter something random in
the user and password fields for TW to decide the upload plugin can
be used.
2021-01-31 15:32:18 +00:00
Dyllon Gagnier
3eefb3cce6
Fix backtracking issue with regex (#5401)
There was an unnecessary
2021-01-29 15:26:25 +00:00
Cameron Fischer
4c7dcb83d1
Fix for #3306, inline/block widget glitch (#5452)
* Fix for #3306, inline/block widget glitch

* Just realized we don't need to set lastIndex anymore

* Forgot that parseBlocks doesn't use options
2021-01-29 14:57:30 +00:00
Cameron Fischer
45355a7fcf
Wikirules now use better macrocall parser (#5451)
* wikirules now use better macrocall parser

Before, wikirules would use a deficient macrocall parser which couldn't
handle certain types of arguments. Now it uses the same one that the
widget parser uses. Less code!

* style changes and removing weird switch statement

That switch statement made more sense in an earlier iteration.

* comment improvements

* oops, wikirule macrocalls could do ONE thing better

* '=' wasn't allowed for widget macros, but why?

Now they're allowed for both widget macros and macrocall macros.
2021-01-29 13:26:31 +00:00
FlashSystems
2e47f277ac
Fix blank favicon if root-tiddler=$:/core/save/lazy-images is set (#5423)
If image lazy loading is used with node.js the favicon is blank. The
line `-[!is[system]is[image]]` excludes only non system images from
begin saved as full tiddlers. But the `[is[image]]` line includes system
images as skinny tiddlers. The created HTML file has all system image
tiddlers (as the favicon) listed twice. And the skinny tiddler seems to
win in this case and breaks the display of the favicon.

This patch fixes this issue by excluding system images from the skinny
tiddlers list.
2021-01-21 17:07:28 +00:00
jeremy@jermolene.com
36de5f65ff Core plugin images: Add missing classes 2021-01-16 15:39:05 +00:00
Nicolas Petton
b205da2007
Minor cleanup of startup.js (#5409)
* Remove unused var declaration
* Remove trailing whitespaces
2021-01-15 16:55:52 +00:00
Nicolas Petton
17b4f53ba2
Add server sent events (#5279)
* Create server-sent-events.js

* Create sse-change-listener.js

* Implement server sent events

* Convert to ES5 and wrap in function

* Use the host string from tiddlyweb

* Improve comments in sse-server.js

* Can't use object reference as key

* Add retry timeout

* Fix a bug

* bug fix

* Fix formatting

* Fix ES5 compat

* capitalize comments

* more fixes

* Refactor tiddlywek/sse-server.js

* Extract helper functions for handling wikis and connections.
* Replace JSDoc comments.
* Fix formatting according to TW core.
* Simplify the logic for adding and removing connections.

* Fix formatting of tiddlyweb/sse-client.js

Fix formatting according to TW core.

* Fix formatting of server-sent-events.js

Fix formatting and comments following TW core guidelines.

* Extract a debounce function in sse-client.js

* Avoid using startsWith in server-sent-events.js

startsWith is part of ES2015, while TiddlyWiki uses the 5.1 dialect.

* New sse-enabled WebServer parameter

* If not set to "yes", disabled SSE request handling.
* Add documentation for the parameter in core/language/en-GB/Help/listen.tid
* Add new tiddler editions/tw5.com/tiddlers/webserver/WebServer Parameter_ sse-enabled.tid

* Disable polling for changes if SSE is enabled

* Add sse_enabled to /status JSON response
* Store syncer polling status in $:/config/SyncDisablePolling
* Handled disabling polling in core/modules/syncer.js

* Simply boolean logic in syncer.js

* Delete trailing whitespaces in syncer.js

Co-authored-by: Arlen22 <arlenbee@gmail.com>
2021-01-15 10:37:55 +00:00
jeremy@jermolene.com
ca95f1069f Fixed comment parsers to match end marker correctly
Fixes #5396
2021-01-13 11:48:42 +00:00
Nicolas Petton
65ffe96cc2
Fix broken aria-label in $:/PaletteManager (#5397) 2021-01-13 10:18:27 +00:00
Cameron Fischer
65932a9b21
Memory efficient linked list (#5380)
* Outlines of the mem efficient linked list

Need to stop for now. Found problem with $tw.utils.pushTop that I need
consultation for.

* Link list throws when given non-string vals

* Think I got rid of the last LinkList infinite loops

* LinkedList push better; fixed coding conventions

* Cleaning up LinkedList code and tests

* Ready to ship new mem efficient Linked List

* Switching to double quotes in LinkedList
2021-01-09 20:52:34 +00:00
jeremy@jermolene.com
af897361c7 Fix name of default branch for GitHub saver
Fixes #5317

Missed off 8cd13e2f89
2021-01-09 13:34:21 +00:00
Simon Huber
4858b24cfe
Fix #5308 - WidgetSubclassingMechanism not working with widgets that add EventListeners (or logic ?) in constructor (#5382)
* add EventListeners in the render() method instead of the constructor

* scrollable widget: add EventListeners in render() method instead of constructor +

... move logic from constructor to render()

* linkcatcher: add EventListeners in render() instead of constructor

* fieldmangler: add EventListeners in render() instead of constructor

* edit-bitmap: initialise editorOperations in render() instead of constructor

* list-widget: initialise storyviews in render() instead of constructor

* vars widget: execute Widget.call(this) in render() instead of constructor

... not shure what this should do

* Update fieldmangler.js

* Update edit-bitmap.js

* Update linkcatcher.js

* Update navigator.js

* Update scrollable.js

* Update list.js

* Update vars.js
2021-01-09 13:25:48 +00:00
Cameron Fischer
b632cea6b7
Fixed issue where [lookup[]] could emit undefined (#5376) 2021-01-07 18:19:50 +00:00
Cameron Fischer
e280f89ca5
Converting [links[]] to use better LinkedList (#5369) 2021-01-05 17:36:18 +00:00
Mohammad Rahmani
87b9dbcda1
Remove extra dashes in page title (#5370)
When Tiddlywiki has no subtitle you see extra dashes!
2021-01-05 17:35:26 +00:00
Cameron Fischer
be70e5851d
Taking advantage of linkedLists in all operator (#5362)
* Taking advantage of linkedLists in all operator

* Test to confirm [all[]] with LinkList is the same
2021-01-04 08:38:50 +00:00
Simon Huber
ac40ee4246
Fix #5318 - remove-tag-button not having the correct fill color (#5326) 2021-01-03 11:51:30 +00:00
Joshua Fontany
03626bc142
always test ext in tiddler title and remove it (#5329)
* always test ext in tiddler title and remove it

* patch custom ext length vulernability
2021-01-03 11:50:14 +00:00
jeremy@jermolene.com
fecf622616 It's 2021! 2021-01-03 10:05:02 +00:00
jeremy@jermolene.com
d25e540dd2 Add support for image/vnd.microsoft.icon content type
Fixes #5357
2021-01-03 10:04:52 +00:00
jeremy@jermolene.com
1e1b52088f Preparing for v5.1.24 as new prerelease
The new release banner is a placeholder; we'll run the competition once the release has taken shape a little.
2020-12-29 12:06:30 +00:00
jeremy@jermolene.com
2f8a100bab Clarify TiddlySpot warning text 2020-12-22 15:42:21 +00:00
jeremy@jermolene.com
a9a36b641a Filename for action-confirm widget should be 'action-confirm.js' for consistency 2020-12-22 11:50:26 +00:00
Saq Imtiaz
1e9cc2b747
Fix refresh for all attributes of droppable widget. Add disabled class (#5280) 2020-12-15 11:09:32 +00:00
Joshua Fontany
d50f6b406e
filesystem cleaup around hook (#5276) 2020-12-14 09:50:53 +00:00
jed
c1a1e272cc
Add a hook to allow modifying the the behaviour creating tiddler paths (#5267)
* Add a hook to allow modifying the the behaviour creating tiddler paths

This is needed for Bob to use the core to generate tiddler fileInfo 

I don't know if this is the best way to make the hook, but it works for what I need

* update th-make-tiddler-path arguments

the value is the current path, the parameter passed in is the original unmodified path so it is available to subsequent hooks
2020-12-13 23:24:23 +00:00
Xavier Cazin
88e29b4558
tabsState should hold a tiddler name rather than a list singleton (#5263)
* tabsState should hold a tiddler name rather than a list singleton

* tabsState should hold a tiddler name rather than a list singleton
2020-12-13 16:15:16 +00:00
Saq Imtiaz
0911d99813
URGENT: Reveal widget - fixed problem with previous patch of refresh handling (#5260)
* Fixed problem with previous patch of refresh handling

* Update reveal.js
2020-12-11 23:24:27 +00:00
jeremy@jermolene.com
93309b0b7d Sort plugins in control panel by name instead of title
Fixes #5256
2020-12-11 16:13:14 +00:00
Saq Imtiaz
c0dd13d446
Reveal widget should update on changed class and style attributes (#5258) 2020-12-11 15:36:00 +00:00
Robin Munn
f60d0ef109
reduce and :reduce handle empty input identically (#5255)
Fixes #5246. Now the reduce operator and :reduce filter run prefix will
both return empty output when their input is empty, so that both can be
chained together with the else operator or :else prefix.
2020-12-11 10:07:52 +00:00
Cameron Fischer
6ca89304a1
Fix for LinkedLists when using bad filter prefix (#5251) 2020-12-10 18:25:53 +00:00
Simon Huber
0d2b6cf837
Rename control-panel-button to advanced-search-button in advanced-search button (#5242) 2020-12-10 17:09:28 +00:00
Cameron Fischer
cd5d9bd5b9
Code cleanup of Linked Lists (#5241)
* made private methods limited to module scope
* moved private methods to file bottom
* changed tests to run comperable array functions in parallel
* added comments
2020-12-09 09:46:35 +00:00
jeremy@jermolene.com
1e1aeefd93 Fix add plugins modal
Fixes #5235
2020-12-09 09:07:48 +00:00
jeremy@jermolene.com
1d7091e637 Hide .tid exporter when more than one tiddler to export
Fixes #5237
2020-12-08 17:48:58 +00:00
jeremy@jermolene.com
bb6d41f3dd Macrocall widget: ensure we separately cache inline vs block parse trees
Fixes a bug in #5205
2020-12-07 16:05:34 +00:00
Joshua Fontany
a878d82c7a
Ignore edition filters if not running on node (#5222) 2020-12-07 15:59:32 +00:00
Joshua Fontany
85ff47366c
fix viewtemplate quirks (#5224) 2020-12-07 15:58:28 +00:00
Saq Imtiaz
ce5d20b8fc
Logging widgets :Fixed issue on Firefox where logging does not work (#5223)
* Fixed issue on Firefox where logging does not work properly due to column names

* Remove second argument to utils.logTable
2020-12-07 15:53:49 +00:00
Joshua Fontany
c3e34b469c
typo (#5221) 2020-12-06 22:59:48 +00:00
Simon Huber
958f57f2c0
Make editTiddler in sidebarsegments/search available as variable (#5218) 2020-12-06 17:15:40 +00:00
jeremy@jermolene.com
005f7c55b6 Restore accidental commenting in 0b1a05d10 2020-12-06 10:50:59 +00:00
Simon Huber
122306fc24
Update GruvboxDark, CupertinoDark and Nord palettes to work better with TiddlyDesktop (#5214)
* Update CupertinoDark.tid

* Update GruvBoxDark.tid

* Update Nord.tid
2020-12-06 09:58:02 +00:00
Jeremy Ruston
0b1a05d10d
Cache result of parsing macro calls which don't use text subsitution (#5205) 2020-12-06 09:43:06 +00:00
Joshua Fontany
b0f6d50b60
fix filesystem bugs (#5213) 2020-12-06 09:41:03 +00:00
Simon Huber
a3a7d6450d
CodeMirror: Ensure linenumber-gutter has a right border (#5212)
* Ensure linenumber-gutter has a right border

* Update GruvBoxDark.tid

* Update Nord.tid
2020-12-06 08:56:06 +00:00
Cameron Fischer
a857b4ab9a
use a linked list for filter runs. (#5206)
* Changed the filterrunprefixes to use LinkedList

* Testing for Linked List

* Finishing touches to LinkedList

* Minor corrections to link-list coding style

* Corrected for sneaky bug in linkedList
2020-12-06 08:54:57 +00:00
Saq Imtiaz
7fd24de372
Tests for filter prefixes (#5209) 2020-12-05 23:10:51 +00:00
Simon Huber
396703c478
An even faster version of the TagPickerTagTemplate (#5207) 2020-12-05 17:38:39 +00:00
Simon Huber
bfc4b447da
Add selection-background/foreground to GruvboxDark and Nord palettes (#5204)
* Update GruvBoxDark.tid

* Update Nord.tid

* Update Nord.tid

* Update Nord.tid

* Update Nord.tid
2020-12-05 16:38:08 +00:00
Cameron Fischer
fbe5bb229a
Fix for filterrunprefixes using $tw.wiki (#5202)
* Fixed runprefix 'and' to use widget wiki

* Made widget arg of filterTiddlers optional again

* Switched to passing {wiki: wiki} to prefixes
2020-12-05 16:12:40 +00:00
Saq Imtiaz
9825b5b4a0
Ensure new variables are strings (#5197) 2020-12-04 19:02:05 +00:00
Saq Imtiaz
8799911162
Reduce operator: second optional parameter instead of suffix (#5193)
* Tweak reduce operator to use an optional second parameter instead of a suffix

* Updated docs
2020-12-04 18:31:23 +00:00
Simon Huber
813e28e1ea
Make the tag-picker tags-dropdown more performant (#5195)
* Replace macrocall for tag-button with transclusion of a TagPickerTagTemplate

* Create TagPickerTagTemplate.tid
2020-12-04 18:28:36 +00:00
Simon Huber
911e23ee6d
Make sidebarsegments/search button display the count of ALL search results (de-duplicated) (#5194) 2020-12-04 18:27:40 +00:00
Saq Imtiaz
046746ba20
Add :reduce filter run prefix (#5196) 2020-12-04 18:23:50 +00:00
Robin Munn
8ffe138942
Add rawunicode suffix to (json)stringify operators (#5191)
Default with no suffix is pre-5.1.23 behavior, escaping all Unicode
characters for maximum compatibility (avoids encoding issues). New
"rawunicode" suffix allows passing through Unicode characters U+0080
and up unchanged, for cases where you know your tools are handling
encoding correctly and you want less verbose escaping.
2020-12-04 13:19:59 +00:00