Skip to content

Commit 7a0807e

Browse files
authored
Merge pull request #192 from aktos-io/dev
Dev branch changes
2 parents 4415d16 + d44aba1 commit 7a0807e

File tree

22 files changed

+198
-131
lines changed

22 files changed

+198
-131
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,6 @@
1313
[submodule "tools/download.sh"]
1414
path = tools/download.sh
1515
url = https://github.com/ceremcem/download.sh
16+
[submodule "tools/debug-ls"]
17+
path = tools/debug-ls
18+
url = https://github.com/ceremcem/debug-ls

Makefile

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ update-deps: __c
2020
update-app-version:
2121
touch lib/app-version.json
2222

23-
production: __c __prepare_release_dir __production __release_commit
23+
release: __c __prepare_release_dir __production __release_commit
2424

2525
__production: __app
2626
gulp --webapp $(APP) --production
@@ -55,6 +55,9 @@ create-venv:
5555
$(eval NODE_VERSION := $(shell echo `grep "^#node@" nodeenv.txt | cut -d@ -f2` | sed 's/^$$/system/'))
5656
nodeenv --requirement=./nodeenv.txt --node=$(NODE_VERSION) --prompt="($(VENV_NAME))" --jobs=4 nodeenv
5757

58+
use-venv:
59+
./venv
60+
5861
__prepare_release_dir:
5962
@( if [ ! -d release/$(APP) ]; then \
6063
mkdir -p release; \
@@ -64,7 +67,14 @@ __prepare_release_dir:
6467
)
6568

6669
__release_commit:
67-
( cd release/$(APP) && git add . && git commit )
70+
( cd release/$(APP) && git add . && git commit -m "unattended commit")
6871

6972
release-push:
7073
@( cd release/$(APP) && git push )
74+
75+
list-modules:
76+
@find . -name package.json -and -not -path "*/node_modules/*" | xargs dirname | sort
77+
78+
npm-audit-all:
79+
@$(MAKE) list-modules --no-print-directory | xargs -I '{}' bash -c \
80+
'cd {}; echo -e "-----------\nAudit for {}:\n-----------\n\n"; npm i --package-lock-only; npm audit'

components/debug-obj/index.ls

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
Ractive.components['json-edit'] = Ractive.extend do
2-
template: require('./json-edit.pug')
3-
isolated: true
4-
data: ->
5-
objStr: null
6-
objFormatted: null
7-
computed:
8-
objFormatted:
9-
get: ->
10-
if @get \objTmp
11-
return that
12-
else
13-
return JSON.stringify @get('value'), null, 2
14-
15-
set: (objStr) ->
16-
try
17-
obj = JSON.parse(objStr)
18-
@set('value', obj)
19-
@set('objTmp', null)
20-
catch
21-
return @set 'objTmp', objStr
22-
231
Ractive.components['debug-obj'] = Ractive.extend do
242
template: require('./index.pug')
253
data: ->

components/debug-obj/index.pug

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,4 @@
33
icon.bug
44

55
modal(title="{{title}}" basedon="{{mymodal1}}")
6-
.ui.segment(style="width: 80vw; height: calc(80vh - 80px)")
7-
json-edit(value="{{obj || null}}" style="width: 100%; height: 100%;")
6+
json-edit(value="{{obj}}" style="width: 80vw; height: calc(80vh - 120px)")

components/debug-obj/json-edit.pug

Lines changed: 0 additions & 3 deletions
This file was deleted.

components/dropdown/index.ls

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ Ractive.components['dropdown'] = Ractive.extend do
6565
selected-key-observer = null
6666
update-dropdown = (_new) ~>
6767
if @get \debug
68-
@actor.log.log "#{@_guid}: selected key is changed to: ", _new
68+
@actor.log.log "#{@_guid}: selected key is _being_ changed to: ", _new
6969
<~ set-immediate
7070
external-change := yes
7171
<~ :lo(op) ~>
@@ -113,6 +113,7 @@ Ractive.components['dropdown'] = Ractive.extend do
113113
# button action. When selected key is cleared, all
114114
# necessary actions are handled in the listener.
115115
@fire \select, c, {}, (err) ~>
116+
debugger if @get \debug
116117
if err and typeof! err is \String
117118
@actor.v-err err
118119
return op!
@@ -150,13 +151,16 @@ Ractive.components['dropdown'] = Ractive.extend do
150151
if @get \async
151152
selected-key-observer.silence!
152153
@fire \select, c, selected, (err) ~>
154+
debugger if @get \debug
153155
unless err
154156
@set \emptyReduced, no
155157
update-dropdown selected[keyField]
156158
else
157159
curr = @get \selected-key
158160
if typeof! err is \String
159-
@actor.v-err err
161+
@actor.v-err """#{err}
162+
Dropdown, called #{@get 'selected'}
163+
"""
160164
@actor.c-warn "Error reported for dropdown callback: ", err,
161165
"falling back to #{curr}"
162166
@set \emptyReduced, yes
@@ -204,7 +208,9 @@ Ractive.components['dropdown'] = Ractive.extend do
204208
#@actor.c-log "Dropdown (#{@_guid}) : searchTerm is empty"
205209
@set \dataReduced, small-part-of data
206210
on-change: (value, text, selected) ~>
207-
return if external-change
211+
if external-change and not @get('listen-external')
212+
if @get \debug => @actor.c-log "Dropdown: Exiting from on-change handler as this is an external change."
213+
return
208214
if @get \debug => @actor.c-log "Dropdown: #{@_guid}: dropdown is changed: ", value
209215
if @get \multiple
210216
set-item unless value? => [] else value.split ','
@@ -251,6 +257,8 @@ Ractive.components['dropdown'] = Ractive.extend do
251257
update-dropdown _new
252258

253259
selected-key-observer = @observe \selected-key, ((val) ~>
260+
unless val?
261+
dd.dropdown 'clear'
254262
if @get \async
255263
console.log "this is async mode and item is changed: ", val
256264
set-item val
@@ -259,7 +267,9 @@ Ractive.components['dropdown'] = Ractive.extend do
259267
), {-init}
260268

261269
# first update should be silent
262-
set-immediate ~>
270+
sleep 100ms, ~>
271+
if @get \debug
272+
@actor.c-log "Setting initial dropdown value: ", @get 'selected-key'
263273
dd.dropdown 'set selected', @get('selected-key')
264274
dd.dropdown 'refresh'
265275

@@ -270,7 +280,8 @@ Ractive.components['dropdown'] = Ractive.extend do
270280
'_add': (ctx) ->
271281
c.button = ctx.component
272282
sleep 10, -> dd.dropdown 'show'
273-
err <~ @fire \add, c, @get \search-term
283+
newKey = @get \search-term
284+
err <~ @fire \add, c, newKey
274285
# dropdown should only be closed if there is
275286
# no error returned
276287
unless err
@@ -279,6 +290,10 @@ Ractive.components['dropdown'] = Ractive.extend do
279290
@set \search-term, ''
280291
# clear the dropdown search field
281292
$('.ui.dropdown').find(".search").val("")
293+
<~ set-immediate
294+
dd.dropdown 'set selected', newKey
295+
dd.dropdown 'refresh'
296+
282297
data: ->
283298
'search-fields': <[ description ]>
284299
'search-term': ''
@@ -303,3 +318,4 @@ Ractive.components['dropdown'] = Ractive.extend do
303318
'selected-key': null
304319
'selected-name': null
305320
'load-first': 100
321+
'listen-external': yes # listen external key changes by default

components/dropdown/index.pug

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,17 @@
3636
span.text -------
3737
+endif
3838
.menu
39+
//turn off autocomplete
40+
input(type="hidden" value="something")
3941
.ui.icon.search.input
4042
i.search.icon
41-
input(type="text" placeholder="Search...")
43+
input(type="search" autocomplete="off" placeholder="Search...")
4244

4345
+each('dataReduced as item')
4446
.item(
4547
data-value!="{{item[keyField]}}"
4648
class-disabled="blacklist == item[keyField]"
49+
title="{{._tooltip}}"
4750
) {{item[nameField]}}
4851

4952
+if('emptyReduced && ~/["allow-addition"]')
@@ -72,7 +75,7 @@
7275
.default.text {{ placeholder }}
7376
.menu
7477
+each('dataReduced')
75-
.item(data-value!="{{.[keyField]}}") {{.[nameField]}}
78+
.item(data-value!="{{.[keyField]}}" title="{{._tooltip}}") {{.[nameField]}}
7679

7780
+if('@this.getContext().hasListener("add", true) && ~/["search-term"]')
7881
+iff("@this.partials.addNew ")

components/index.ls

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ require! './data-table'
4141
require! './date-picker'
4242
require! './db-img'
4343
require! './debug-obj'
44+
require! './json-edit'
4445
require! './example-component'
4546
require! './export-to-csv'
4647
require! './file-button'

components/json-edit/index.ls

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,33 @@
11
require! 'relaxed-json': rjson
22

3-
fixJSON = (x) -> rjson.parse(x)
4-
53
Ractive.components['json-edit'] = Ractive.extend do
6-
template: '''
7-
<textarea lazy="true"
8-
style="{{style}}; white-space: pre-wrap; border: {{#if err}}2px dashed red{{else}}1px solid green{{/if}}"
9-
title="{{err}}"
10-
class="{{class}}"
11-
>{{ objFormatted }}</textarea>
12-
'''
4+
template: require('./index.pug')
135
isolated: yes
146
data: ->
157
objTmp: null
168
value: null
179
err: null
10+
timeout: 500ms
11+
readonly: no
12+
title: null
1813

1914
computed:
2015
objFormatted:
2116
get: ->
2217
if @get \objTmp
23-
return that
18+
that
2419
else
25-
return JSON.stringify(@get('value'), null, 2)
20+
JSON.stringify (@get('value') or null), null, 2
2621

2722
set: (objStr) ->
23+
objStr ?= null
24+
return if @get \readonly
2825
try
29-
obj = fixJSON objStr
26+
obj = rjson.parse objStr
3027
@set \value, obj
3128
@set \objTmp, null
3229
@set \err, null
3330
catch
34-
console.warn "json-edit error was: ", e
31+
#console.warn "json-edit error was: ", e
3532
@set \err, e.message
3633
@set \objTmp, objStr

components/json-edit/index.pug

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
.ui.form(style="height: 100%; width: 100%;")
2+
.field(style="height: 100%; width: 100%")
3+
+if('title')
4+
label {{title}}
5+
6+
//- lazy="xxx" : Update the content only when the mouse out of editing area
7+
or timeout of xxx milliseconds is over.
8+
textarea(
9+
readonly="{{readonly}}"
10+
lazy="{{timeout}}"
11+
style="height: 100%; width: 100%; {{style}}; white-space: pre-wrap; border: {{#if err}}2px dashed red{{else}}1px solid green{{/if}};"
12+
title="{{err}}"
13+
class="{{class}}"
14+
) {{ objFormatted }}

0 commit comments

Comments
 (0)