@p4ulcristian/iris-layout 0.2.0 → 0.2.2
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/cljs-runtime/cljs.core.js +38746 -0
- package/dist/cljs-runtime/cljs.core.js.map +1 -0
- package/dist/cljs-runtime/cljs.pprint.js +8400 -0
- package/dist/cljs-runtime/cljs.pprint.js.map +1 -0
- package/dist/cljs-runtime/cljs.stacktrace.js +561 -0
- package/dist/cljs-runtime/cljs.stacktrace.js.map +1 -0
- package/dist/cljs-runtime/cljs_env.js +1286 -0
- package/dist/cljs-runtime/clojure.data.js +295 -0
- package/dist/cljs-runtime/clojure.data.js.map +1 -0
- package/dist/cljs-runtime/clojure.set.js +382 -0
- package/dist/cljs-runtime/clojure.set.js.map +1 -0
- package/dist/cljs-runtime/clojure.string.js +480 -0
- package/dist/cljs-runtime/clojure.string.js.map +1 -0
- package/dist/cljs-runtime/clojure.walk.js +132 -0
- package/dist/cljs-runtime/clojure.walk.js.map +1 -0
- package/dist/cljs-runtime/devtools.async.js +90 -0
- package/dist/cljs-runtime/devtools.async.js.map +1 -0
- package/dist/cljs-runtime/devtools.context.js +11 -0
- package/dist/cljs-runtime/devtools.context.js.map +1 -0
- package/dist/cljs-runtime/devtools.core.js +175 -0
- package/dist/cljs-runtime/devtools.core.js.map +1 -0
- package/dist/cljs-runtime/devtools.defaults.js +20 -0
- package/dist/cljs-runtime/devtools.defaults.js.map +1 -0
- package/dist/cljs-runtime/devtools.format.js +631 -0
- package/dist/cljs-runtime/devtools.format.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.budgeting.js +182 -0
- package/dist/cljs-runtime/devtools.formatters.budgeting.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.core.js +220 -0
- package/dist/cljs-runtime/devtools.formatters.core.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.helpers.js +228 -0
- package/dist/cljs-runtime/devtools.formatters.helpers.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.js +261 -0
- package/dist/cljs-runtime/devtools.formatters.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.markup.js +1174 -0
- package/dist/cljs-runtime/devtools.formatters.markup.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.printing.js +313 -0
- package/dist/cljs-runtime/devtools.formatters.printing.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.state.js +325 -0
- package/dist/cljs-runtime/devtools.formatters.state.js.map +1 -0
- package/dist/cljs-runtime/devtools.formatters.templating.js +666 -0
- package/dist/cljs-runtime/devtools.formatters.templating.js.map +1 -0
- package/dist/cljs-runtime/devtools.hints.js +193 -0
- package/dist/cljs-runtime/devtools.hints.js.map +1 -0
- package/dist/cljs-runtime/devtools.munging.js +1058 -0
- package/dist/cljs-runtime/devtools.munging.js.map +1 -0
- package/dist/cljs-runtime/devtools.prefs.js +87 -0
- package/dist/cljs-runtime/devtools.prefs.js.map +1 -0
- package/dist/cljs-runtime/devtools.preload.js +11 -0
- package/dist/cljs-runtime/devtools.preload.js.map +1 -0
- package/dist/cljs-runtime/devtools.protocols.js +98 -0
- package/dist/cljs-runtime/devtools.protocols.js.map +1 -0
- package/dist/cljs-runtime/devtools.reporter.js +81 -0
- package/dist/cljs-runtime/devtools.reporter.js.map +1 -0
- package/dist/cljs-runtime/devtools.toolbox.js +141 -0
- package/dist/cljs-runtime/devtools.toolbox.js.map +1 -0
- package/dist/cljs-runtime/devtools.util.js +517 -0
- package/dist/cljs-runtime/devtools.util.js.map +1 -0
- package/dist/cljs-runtime/devtools.version.js +9 -0
- package/dist/cljs-runtime/devtools.version.js.map +1 -0
- package/dist/cljs-runtime/goog.array.array.js +659 -0
- package/dist/cljs-runtime/goog.array.array.js.map +9 -0
- package/dist/cljs-runtime/goog.asserts.asserts.js +133 -0
- package/dist/cljs-runtime/goog.asserts.asserts.js.map +9 -0
- package/dist/cljs-runtime/goog.asserts.dom.js +90 -0
- package/dist/cljs-runtime/goog.asserts.dom.js.map +9 -0
- package/dist/cljs-runtime/goog.async.nexttick.js +93 -0
- package/dist/cljs-runtime/goog.async.nexttick.js.map +9 -0
- package/dist/cljs-runtime/goog.base.js +1261 -0
- package/dist/cljs-runtime/goog.base.js.map +9 -0
- package/dist/cljs-runtime/goog.collections.maps.js +82 -0
- package/dist/cljs-runtime/goog.collections.maps.js.map +9 -0
- package/dist/cljs-runtime/goog.debug.entrypointregistry.js +44 -0
- package/dist/cljs-runtime/goog.debug.entrypointregistry.js.map +9 -0
- package/dist/cljs-runtime/goog.debug.error.js +30 -0
- package/dist/cljs-runtime/goog.debug.error.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.asserts.js +40 -0
- package/dist/cljs-runtime/goog.dom.asserts.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.browserfeature.js +21 -0
- package/dist/cljs-runtime/goog.dom.browserfeature.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.dom.js +1087 -0
- package/dist/cljs-runtime/goog.dom.dom.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.element.js +69 -0
- package/dist/cljs-runtime/goog.dom.element.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.htmlelement.js +7 -0
- package/dist/cljs-runtime/goog.dom.htmlelement.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.nodetype.js +6 -0
- package/dist/cljs-runtime/goog.dom.nodetype.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.safe.js +277 -0
- package/dist/cljs-runtime/goog.dom.safe.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.tagname.js +147 -0
- package/dist/cljs-runtime/goog.dom.tagname.js.map +9 -0
- package/dist/cljs-runtime/goog.dom.tags.js +10 -0
- package/dist/cljs-runtime/goog.dom.tags.js.map +9 -0
- package/dist/cljs-runtime/goog.flags.flags.js +12 -0
- package/dist/cljs-runtime/goog.flags.flags.js.map +9 -0
- package/dist/cljs-runtime/goog.fs.blob.js +38 -0
- package/dist/cljs-runtime/goog.fs.blob.js.map +9 -0
- package/dist/cljs-runtime/goog.fs.url.js +37 -0
- package/dist/cljs-runtime/goog.fs.url.js.map +9 -0
- package/dist/cljs-runtime/goog.functions.functions.js +211 -0
- package/dist/cljs-runtime/goog.functions.functions.js.map +9 -0
- package/dist/cljs-runtime/goog.html.safehtml.js +321 -0
- package/dist/cljs-runtime/goog.html.safehtml.js.map +9 -0
- package/dist/cljs-runtime/goog.html.safescript.js +65 -0
- package/dist/cljs-runtime/goog.html.safescript.js.map +9 -0
- package/dist/cljs-runtime/goog.html.safestyle.js +175 -0
- package/dist/cljs-runtime/goog.html.safestyle.js.map +9 -0
- package/dist/cljs-runtime/goog.html.safestylesheet.js +99 -0
- package/dist/cljs-runtime/goog.html.safestylesheet.js.map +9 -0
- package/dist/cljs-runtime/goog.html.safeurl.js +231 -0
- package/dist/cljs-runtime/goog.html.safeurl.js.map +9 -0
- package/dist/cljs-runtime/goog.html.trustedresourceurl.js +123 -0
- package/dist/cljs-runtime/goog.html.trustedresourceurl.js.map +9 -0
- package/dist/cljs-runtime/goog.html.trustedtypes.js +16 -0
- package/dist/cljs-runtime/goog.html.trustedtypes.js.map +9 -0
- package/dist/cljs-runtime/goog.html.uncheckedconversions.js +52 -0
- package/dist/cljs-runtime/goog.html.uncheckedconversions.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.browser.js +352 -0
- package/dist/cljs-runtime/goog.labs.useragent.browser.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.engine.js +73 -0
- package/dist/cljs-runtime/goog.labs.useragent.engine.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.highentropy.highentropydata.js +14 -0
- package/dist/cljs-runtime/goog.labs.useragent.highentropy.highentropydata.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.highentropy.highentropyvalue.js +74 -0
- package/dist/cljs-runtime/goog.labs.useragent.highentropy.highentropyvalue.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.platform.js +147 -0
- package/dist/cljs-runtime/goog.labs.useragent.platform.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.useragent.js +21 -0
- package/dist/cljs-runtime/goog.labs.useragent.useragent.js.map +9 -0
- package/dist/cljs-runtime/goog.labs.useragent.util.js +81 -0
- package/dist/cljs-runtime/goog.labs.useragent.util.js.map +9 -0
- package/dist/cljs-runtime/goog.math.coordinate.js +97 -0
- package/dist/cljs-runtime/goog.math.coordinate.js.map +9 -0
- package/dist/cljs-runtime/goog.math.integer.js +445 -0
- package/dist/cljs-runtime/goog.math.integer.js.map +9 -0
- package/dist/cljs-runtime/goog.math.long.js +437 -0
- package/dist/cljs-runtime/goog.math.long.js.map +9 -0
- package/dist/cljs-runtime/goog.math.math.js +158 -0
- package/dist/cljs-runtime/goog.math.math.js.map +9 -0
- package/dist/cljs-runtime/goog.math.size.js +76 -0
- package/dist/cljs-runtime/goog.math.size.js.map +9 -0
- package/dist/cljs-runtime/goog.object.object.js +284 -0
- package/dist/cljs-runtime/goog.object.object.js.map +9 -0
- package/dist/cljs-runtime/goog.reflect.reflect.js +32 -0
- package/dist/cljs-runtime/goog.reflect.reflect.js.map +9 -0
- package/dist/cljs-runtime/goog.string.const.js +35 -0
- package/dist/cljs-runtime/goog.string.const.js.map +9 -0
- package/dist/cljs-runtime/goog.string.internal.js +119 -0
- package/dist/cljs-runtime/goog.string.internal.js.map +9 -0
- package/dist/cljs-runtime/goog.string.string.js +462 -0
- package/dist/cljs-runtime/goog.string.string.js.map +9 -0
- package/dist/cljs-runtime/goog.string.stringbuffer.js +32 -0
- package/dist/cljs-runtime/goog.string.stringbuffer.js.map +9 -0
- package/dist/cljs-runtime/goog.string.typedstring.js +9 -0
- package/dist/cljs-runtime/goog.string.typedstring.js.map +9 -0
- package/dist/cljs-runtime/goog.structs.structs.js +199 -0
- package/dist/cljs-runtime/goog.structs.structs.js.map +9 -0
- package/dist/cljs-runtime/goog.uri.uri.js +628 -0
- package/dist/cljs-runtime/goog.uri.uri.js.map +9 -0
- package/dist/cljs-runtime/goog.uri.utils.js +326 -0
- package/dist/cljs-runtime/goog.uri.utils.js.map +9 -0
- package/dist/cljs-runtime/goog.useragent.useragent.js +139 -0
- package/dist/cljs-runtime/goog.useragent.useragent.js.map +9 -0
- package/dist/cljs-runtime/iris_layout.components.entity_card_group.js +202 -0
- package/dist/cljs-runtime/iris_layout.components.entity_card_group.js.map +1 -0
- package/dist/cljs-runtime/iris_layout.components.entity_tile.js +295 -0
- package/dist/cljs-runtime/iris_layout.components.entity_tile.js.map +1 -0
- package/dist/cljs-runtime/iris_layout.components.entity_tile_group.js +33 -0
- package/dist/cljs-runtime/iris_layout.components.entity_tile_group.js.map +1 -0
- package/dist/cljs-runtime/iris_layout.components.resizer.js +91 -0
- package/dist/cljs-runtime/iris_layout.components.resizer.js.map +1 -0
- package/dist/cljs-runtime/iris_layout.components.touch_drag.js +399 -0
- package/dist/cljs-runtime/iris_layout.components.touch_drag.js.map +1 -0
- package/dist/cljs-runtime/iris_layout.core.js +1372 -0
- package/dist/cljs-runtime/iris_layout.core.js.map +1 -0
- package/dist/cljs-runtime/iris_layout.layout.js +328 -0
- package/dist/cljs-runtime/iris_layout.layout.js.map +1 -0
- package/dist/cljs-runtime/reagent.core.js +993 -0
- package/dist/cljs-runtime/reagent.core.js.map +1 -0
- package/dist/cljs-runtime/reagent.debug.js +75 -0
- package/dist/cljs-runtime/reagent.debug.js.map +1 -0
- package/dist/cljs-runtime/reagent.impl.batching.js +270 -0
- package/dist/cljs-runtime/reagent.impl.batching.js.map +1 -0
- package/dist/cljs-runtime/reagent.impl.component.js +758 -0
- package/dist/cljs-runtime/reagent.impl.component.js.map +1 -0
- package/dist/cljs-runtime/reagent.impl.input.js +175 -0
- package/dist/cljs-runtime/reagent.impl.input.js.map +1 -0
- package/dist/cljs-runtime/reagent.impl.protocols.js +99 -0
- package/dist/cljs-runtime/reagent.impl.protocols.js.map +1 -0
- package/dist/cljs-runtime/reagent.impl.template.js +660 -0
- package/dist/cljs-runtime/reagent.impl.template.js.map +1 -0
- package/dist/cljs-runtime/reagent.impl.util.js +748 -0
- package/dist/cljs-runtime/reagent.impl.util.js.map +1 -0
- package/dist/cljs-runtime/reagent.ratom.js +1668 -0
- package/dist/cljs-runtime/reagent.ratom.js.map +1 -0
- package/dist/cljs-runtime/shadow.esm.esm_import$react.js +5 -0
- package/dist/cljs-runtime/shadow.module.iris-layout.append.js +2 -0
- package/dist/cljs-runtime/shadow.module.iris-layout.prepend.js +2 -0
- package/dist/iris-layout.js +375 -355
- package/dist/styles.css +287 -9
- package/package.json +1 -1
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
import "./cljs_env.js";
|
|
2
|
+
import "./cljs.core.js";
|
|
3
|
+
import "./goog.string.string.js";
|
|
4
|
+
import "./goog.string.stringbuffer.js";
|
|
5
|
+
goog.provide('clojure.string');
|
|
6
|
+
clojure.string.seq_reverse = (function clojure$string$seq_reverse(coll){
|
|
7
|
+
return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,cljs.core.List.EMPTY,coll);
|
|
8
|
+
});
|
|
9
|
+
clojure.string.re_surrogate_pair = (new RegExp("([\\uD800-\\uDBFF])([\\uDC00-\\uDFFF])","g"));
|
|
10
|
+
/**
|
|
11
|
+
* Returns s with its characters reversed.
|
|
12
|
+
*/
|
|
13
|
+
clojure.string.reverse = (function clojure$string$reverse(s){
|
|
14
|
+
return s.replace(clojure.string.re_surrogate_pair,"$2$1").split("").reverse().join("");
|
|
15
|
+
});
|
|
16
|
+
clojure.string.replace_all = (function clojure$string$replace_all(s,re,replacement){
|
|
17
|
+
var r = (new RegExp(re.source,(function (){var G__8014 = "g";
|
|
18
|
+
var G__8014__$1 = (cljs.core.truth_(re.ignoreCase)?[G__8014,"i"].join(''):G__8014);
|
|
19
|
+
var G__8014__$2 = (cljs.core.truth_(re.multiline)?[G__8014__$1,"m"].join(''):G__8014__$1);
|
|
20
|
+
if(cljs.core.truth_(re.unicode)){
|
|
21
|
+
return [G__8014__$2,"u"].join('');
|
|
22
|
+
} else {
|
|
23
|
+
return G__8014__$2;
|
|
24
|
+
}
|
|
25
|
+
})()));
|
|
26
|
+
return s.replace(r,replacement);
|
|
27
|
+
});
|
|
28
|
+
clojure.string.replace_with = (function clojure$string$replace_with(f){
|
|
29
|
+
return (function() {
|
|
30
|
+
var G__8186__delegate = function (args){
|
|
31
|
+
var matches = cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2((2),args);
|
|
32
|
+
if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(matches),(1))){
|
|
33
|
+
var G__8020 = cljs.core.first(matches);
|
|
34
|
+
return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__8020) : f.call(null,G__8020));
|
|
35
|
+
} else {
|
|
36
|
+
var G__8022 = cljs.core.vec(matches);
|
|
37
|
+
return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__8022) : f.call(null,G__8022));
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var G__8186 = function (var_args){
|
|
41
|
+
var args = null;
|
|
42
|
+
if (arguments.length > 0) {
|
|
43
|
+
var G__8193__i = 0, G__8193__a = new Array(arguments.length - 0);
|
|
44
|
+
while (G__8193__i < G__8193__a.length) {G__8193__a[G__8193__i] = arguments[G__8193__i + 0]; ++G__8193__i;}
|
|
45
|
+
args = new cljs.core.IndexedSeq(G__8193__a,0,null);
|
|
46
|
+
}
|
|
47
|
+
return G__8186__delegate.call(this,args);};
|
|
48
|
+
G__8186.cljs$lang$maxFixedArity = 0;
|
|
49
|
+
G__8186.cljs$lang$applyTo = (function (arglist__8197){
|
|
50
|
+
var args = cljs.core.seq(arglist__8197);
|
|
51
|
+
return G__8186__delegate(args);
|
|
52
|
+
});
|
|
53
|
+
G__8186.cljs$core$IFn$_invoke$arity$variadic = G__8186__delegate;
|
|
54
|
+
return G__8186;
|
|
55
|
+
})()
|
|
56
|
+
;
|
|
57
|
+
});
|
|
58
|
+
/**
|
|
59
|
+
* Replaces all instance of match with replacement in s.
|
|
60
|
+
*
|
|
61
|
+
* match/replacement can be:
|
|
62
|
+
*
|
|
63
|
+
* string / string
|
|
64
|
+
* pattern / (string or function of match).
|
|
65
|
+
*
|
|
66
|
+
* See also replace-first.
|
|
67
|
+
*
|
|
68
|
+
* The replacement is literal (i.e. none of its characters are treated
|
|
69
|
+
* specially) for all cases above except pattern / string.
|
|
70
|
+
*
|
|
71
|
+
* For pattern / string, $1, $2, etc. in the replacement string are
|
|
72
|
+
* substituted with the string that matched the corresponding
|
|
73
|
+
* parenthesized group in the pattern.
|
|
74
|
+
*
|
|
75
|
+
* Example:
|
|
76
|
+
* (clojure.string/replace "Almost Pig Latin" #"\b(\w)(\w+)\b" "$2$1ay")
|
|
77
|
+
* -> "lmostAay igPay atinLay"
|
|
78
|
+
*/
|
|
79
|
+
clojure.string.replace = (function clojure$string$replace(s,match,replacement){
|
|
80
|
+
if(typeof match === 'string'){
|
|
81
|
+
return s.replace((new RegExp(goog.string.regExpEscape(match),"g")),replacement);
|
|
82
|
+
} else {
|
|
83
|
+
if((match instanceof RegExp)){
|
|
84
|
+
if(typeof replacement === 'string'){
|
|
85
|
+
return clojure.string.replace_all(s,match,replacement);
|
|
86
|
+
} else {
|
|
87
|
+
return clojure.string.replace_all(s,match,clojure.string.replace_with(replacement));
|
|
88
|
+
}
|
|
89
|
+
} else {
|
|
90
|
+
throw ["Invalid match arg: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(match)].join('');
|
|
91
|
+
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
/**
|
|
96
|
+
* Replaces the first instance of match with replacement in s.
|
|
97
|
+
*
|
|
98
|
+
* match/replacement can be:
|
|
99
|
+
*
|
|
100
|
+
* string / string
|
|
101
|
+
* pattern / (string or function of match).
|
|
102
|
+
*
|
|
103
|
+
* See also replace.
|
|
104
|
+
*
|
|
105
|
+
* The replacement is literal (i.e. none of its characters are treated
|
|
106
|
+
* specially) for all cases above except pattern / string.
|
|
107
|
+
*
|
|
108
|
+
* For pattern / string, $1, $2, etc. in the replacement string are
|
|
109
|
+
* substituted with the string that matched the corresponding
|
|
110
|
+
* parenthesized group in the pattern.
|
|
111
|
+
*
|
|
112
|
+
* Example:
|
|
113
|
+
* (clojure.string/replace-first "swap first two words"
|
|
114
|
+
* #"(\w+)(\s+)(\w+)" "$3$2$1")
|
|
115
|
+
* -> "first swap two words"
|
|
116
|
+
*/
|
|
117
|
+
clojure.string.replace_first = (function clojure$string$replace_first(s,match,replacement){
|
|
118
|
+
return s.replace(match,replacement);
|
|
119
|
+
});
|
|
120
|
+
/**
|
|
121
|
+
* Returns a string of all elements in coll, as returned by (seq coll),
|
|
122
|
+
* separated by an optional separator.
|
|
123
|
+
*/
|
|
124
|
+
clojure.string.join = (function clojure$string$join(var_args){
|
|
125
|
+
var G__8031 = arguments.length;
|
|
126
|
+
switch (G__8031) {
|
|
127
|
+
case 1:
|
|
128
|
+
return clojure.string.join.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
|
|
129
|
+
|
|
130
|
+
break;
|
|
131
|
+
case 2:
|
|
132
|
+
return clojure.string.join.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
133
|
+
|
|
134
|
+
break;
|
|
135
|
+
default:
|
|
136
|
+
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
|
|
137
|
+
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
|
|
141
|
+
(clojure.string.join.cljs$core$IFn$_invoke$arity$1 = (function (coll){
|
|
142
|
+
var sb = (new goog.string.StringBuffer());
|
|
143
|
+
var coll__$1 = cljs.core.seq(coll);
|
|
144
|
+
while(true){
|
|
145
|
+
if((!((coll__$1 == null)))){
|
|
146
|
+
var G__8218 = sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));
|
|
147
|
+
var G__8219 = cljs.core.next(coll__$1);
|
|
148
|
+
sb = G__8218;
|
|
149
|
+
coll__$1 = G__8219;
|
|
150
|
+
continue;
|
|
151
|
+
} else {
|
|
152
|
+
return sb.toString();
|
|
153
|
+
}
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
}));
|
|
157
|
+
|
|
158
|
+
(clojure.string.join.cljs$core$IFn$_invoke$arity$2 = (function (separator,coll){
|
|
159
|
+
var sb = (new goog.string.StringBuffer());
|
|
160
|
+
var coll__$1 = cljs.core.seq(coll);
|
|
161
|
+
while(true){
|
|
162
|
+
if((!((coll__$1 == null)))){
|
|
163
|
+
sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));
|
|
164
|
+
|
|
165
|
+
var coll__$2 = cljs.core.next(coll__$1);
|
|
166
|
+
if((coll__$2 == null)){
|
|
167
|
+
} else {
|
|
168
|
+
sb.append(separator);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
var G__8229 = sb;
|
|
172
|
+
var G__8230 = coll__$2;
|
|
173
|
+
sb = G__8229;
|
|
174
|
+
coll__$1 = G__8230;
|
|
175
|
+
continue;
|
|
176
|
+
} else {
|
|
177
|
+
return sb.toString();
|
|
178
|
+
}
|
|
179
|
+
break;
|
|
180
|
+
}
|
|
181
|
+
}));
|
|
182
|
+
|
|
183
|
+
(clojure.string.join.cljs$lang$maxFixedArity = 2);
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Converts string to all upper-case.
|
|
187
|
+
*/
|
|
188
|
+
clojure.string.upper_case = (function clojure$string$upper_case(s){
|
|
189
|
+
return s.toUpperCase();
|
|
190
|
+
});
|
|
191
|
+
/**
|
|
192
|
+
* Converts string to all lower-case.
|
|
193
|
+
*/
|
|
194
|
+
clojure.string.lower_case = (function clojure$string$lower_case(s){
|
|
195
|
+
return s.toLowerCase();
|
|
196
|
+
});
|
|
197
|
+
/**
|
|
198
|
+
* Converts first character of the string to upper-case, all other
|
|
199
|
+
* characters to lower-case.
|
|
200
|
+
*/
|
|
201
|
+
clojure.string.capitalize = (function clojure$string$capitalize(s){
|
|
202
|
+
return goog.string.capitalize(s);
|
|
203
|
+
});
|
|
204
|
+
clojure.string.pop_last_while_empty = (function clojure$string$pop_last_while_empty(v){
|
|
205
|
+
var v__$1 = v;
|
|
206
|
+
while(true){
|
|
207
|
+
if(("" === cljs.core.peek(v__$1))){
|
|
208
|
+
var G__8238 = cljs.core.pop(v__$1);
|
|
209
|
+
v__$1 = G__8238;
|
|
210
|
+
continue;
|
|
211
|
+
} else {
|
|
212
|
+
return v__$1;
|
|
213
|
+
}
|
|
214
|
+
break;
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
clojure.string.discard_trailing_if_needed = (function clojure$string$discard_trailing_if_needed(limit,v){
|
|
218
|
+
if(((((0) === limit)) && (((1) < cljs.core.count(v))))){
|
|
219
|
+
return clojure.string.pop_last_while_empty(v);
|
|
220
|
+
} else {
|
|
221
|
+
return v;
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
clojure.string.split_with_empty_regex = (function clojure$string$split_with_empty_regex(s,limit){
|
|
225
|
+
if((((limit <= (0))) || ((limit >= ((2) + cljs.core.count(s)))))){
|
|
226
|
+
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons("",cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s)))),"");
|
|
227
|
+
} else {
|
|
228
|
+
var pred__8053 = cljs.core._EQ__EQ_;
|
|
229
|
+
var expr__8054 = limit;
|
|
230
|
+
if(cljs.core.truth_((pred__8053.cljs$core$IFn$_invoke$arity$2 ? pred__8053.cljs$core$IFn$_invoke$arity$2((1),expr__8054) : pred__8053.call(null,(1),expr__8054)))){
|
|
231
|
+
return (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[s],null));
|
|
232
|
+
} else {
|
|
233
|
+
if(cljs.core.truth_((pred__8053.cljs$core$IFn$_invoke$arity$2 ? pred__8053.cljs$core$IFn$_invoke$arity$2((2),expr__8054) : pred__8053.call(null,(2),expr__8054)))){
|
|
234
|
+
return (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,["",s],null));
|
|
235
|
+
} else {
|
|
236
|
+
var c = (limit - (2));
|
|
237
|
+
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons("",cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s))),(0),c))),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,c));
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
/**
|
|
243
|
+
* Splits string on a regular expression. Optional argument limit is
|
|
244
|
+
* the maximum number of parts. Not lazy. Returns vector of the parts.
|
|
245
|
+
* Trailing empty strings are not returned - pass limit of -1 to return all.
|
|
246
|
+
*/
|
|
247
|
+
clojure.string.split = (function clojure$string$split(var_args){
|
|
248
|
+
var G__8073 = arguments.length;
|
|
249
|
+
switch (G__8073) {
|
|
250
|
+
case 2:
|
|
251
|
+
return clojure.string.split.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
252
|
+
|
|
253
|
+
break;
|
|
254
|
+
case 3:
|
|
255
|
+
return clojure.string.split.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
|
|
256
|
+
|
|
257
|
+
break;
|
|
258
|
+
default:
|
|
259
|
+
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
|
|
260
|
+
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
(clojure.string.split.cljs$core$IFn$_invoke$arity$2 = (function (s,re){
|
|
265
|
+
return clojure.string.split.cljs$core$IFn$_invoke$arity$3(s,re,(0));
|
|
266
|
+
}));
|
|
267
|
+
|
|
268
|
+
(clojure.string.split.cljs$core$IFn$_invoke$arity$3 = (function (s,re,limit){
|
|
269
|
+
return clojure.string.discard_trailing_if_needed(limit,((("/(?:)/" === cljs.core.str.cljs$core$IFn$_invoke$arity$1(re)))?clojure.string.split_with_empty_regex(s,limit):(((limit < (1)))?cljs.core.vec(cljs.core.str.cljs$core$IFn$_invoke$arity$1(s).split(re)):(function (){var s__$1 = s;
|
|
270
|
+
var limit__$1 = limit;
|
|
271
|
+
var parts = cljs.core.PersistentVector.EMPTY;
|
|
272
|
+
while(true){
|
|
273
|
+
if(((1) === limit__$1)){
|
|
274
|
+
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);
|
|
275
|
+
} else {
|
|
276
|
+
var m = cljs.core.re_find(re,s__$1);
|
|
277
|
+
if((!((m == null)))){
|
|
278
|
+
var index = s__$1.indexOf(m);
|
|
279
|
+
var G__8271 = s__$1.substring((index + cljs.core.count(m)));
|
|
280
|
+
var G__8272 = (limit__$1 - (1));
|
|
281
|
+
var G__8273 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1.substring((0),index));
|
|
282
|
+
s__$1 = G__8271;
|
|
283
|
+
limit__$1 = G__8272;
|
|
284
|
+
parts = G__8273;
|
|
285
|
+
continue;
|
|
286
|
+
} else {
|
|
287
|
+
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
break;
|
|
291
|
+
}
|
|
292
|
+
})())));
|
|
293
|
+
}));
|
|
294
|
+
|
|
295
|
+
(clojure.string.split.cljs$lang$maxFixedArity = 3);
|
|
296
|
+
|
|
297
|
+
/**
|
|
298
|
+
* Splits s on \n or \r\n. Trailing empty lines are not returned.
|
|
299
|
+
*/
|
|
300
|
+
clojure.string.split_lines = (function clojure$string$split_lines(s){
|
|
301
|
+
return clojure.string.split.cljs$core$IFn$_invoke$arity$2(s,/\n|\r\n/);
|
|
302
|
+
});
|
|
303
|
+
/**
|
|
304
|
+
* Removes whitespace from both ends of string.
|
|
305
|
+
*/
|
|
306
|
+
clojure.string.trim = (function clojure$string$trim(s){
|
|
307
|
+
return goog.string.trim(s);
|
|
308
|
+
});
|
|
309
|
+
/**
|
|
310
|
+
* Removes whitespace from the left side of string.
|
|
311
|
+
*/
|
|
312
|
+
clojure.string.triml = (function clojure$string$triml(s){
|
|
313
|
+
return goog.string.trimLeft(s);
|
|
314
|
+
});
|
|
315
|
+
/**
|
|
316
|
+
* Removes whitespace from the right side of string.
|
|
317
|
+
*/
|
|
318
|
+
clojure.string.trimr = (function clojure$string$trimr(s){
|
|
319
|
+
return goog.string.trimRight(s);
|
|
320
|
+
});
|
|
321
|
+
/**
|
|
322
|
+
* Removes all trailing newline \n or return \r characters from
|
|
323
|
+
* string. Similar to Perl's chomp.
|
|
324
|
+
*/
|
|
325
|
+
clojure.string.trim_newline = (function clojure$string$trim_newline(s){
|
|
326
|
+
var index = s.length;
|
|
327
|
+
while(true){
|
|
328
|
+
if((index === (0))){
|
|
329
|
+
return "";
|
|
330
|
+
} else {
|
|
331
|
+
var ch = cljs.core.get.cljs$core$IFn$_invoke$arity$2(s,(index - (1)));
|
|
332
|
+
if(((("\n" === ch)) || (("\r" === ch)))){
|
|
333
|
+
var G__8292 = (index - (1));
|
|
334
|
+
index = G__8292;
|
|
335
|
+
continue;
|
|
336
|
+
} else {
|
|
337
|
+
return s.substring((0),index);
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
break;
|
|
341
|
+
}
|
|
342
|
+
});
|
|
343
|
+
/**
|
|
344
|
+
* True if s is nil, empty, or contains only whitespace.
|
|
345
|
+
*/
|
|
346
|
+
clojure.string.blank_QMARK_ = (function clojure$string$blank_QMARK_(s){
|
|
347
|
+
return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(s));
|
|
348
|
+
});
|
|
349
|
+
/**
|
|
350
|
+
* Return a new string, using cmap to escape each character ch
|
|
351
|
+
* from s as follows:
|
|
352
|
+
*
|
|
353
|
+
* If (cmap ch) is nil, append ch to the new string.
|
|
354
|
+
* If (cmap ch) is non-nil, append (str (cmap ch)) instead.
|
|
355
|
+
*/
|
|
356
|
+
clojure.string.escape = (function clojure$string$escape(s,cmap){
|
|
357
|
+
var buffer = (new goog.string.StringBuffer());
|
|
358
|
+
var length = s.length;
|
|
359
|
+
var index = (0);
|
|
360
|
+
while(true){
|
|
361
|
+
if((length === index)){
|
|
362
|
+
return buffer.toString();
|
|
363
|
+
} else {
|
|
364
|
+
var ch = s.charAt(index);
|
|
365
|
+
var replacement = (cmap.cljs$core$IFn$_invoke$arity$1 ? cmap.cljs$core$IFn$_invoke$arity$1(ch) : cmap.call(null,ch));
|
|
366
|
+
if((!((replacement == null)))){
|
|
367
|
+
buffer.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(replacement));
|
|
368
|
+
} else {
|
|
369
|
+
buffer.append(ch);
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
var G__8307 = (index + (1));
|
|
373
|
+
index = G__8307;
|
|
374
|
+
continue;
|
|
375
|
+
}
|
|
376
|
+
break;
|
|
377
|
+
}
|
|
378
|
+
});
|
|
379
|
+
/**
|
|
380
|
+
* Return index of value (string or char) in s, optionally searching
|
|
381
|
+
* forward from from-index or nil if not found.
|
|
382
|
+
*/
|
|
383
|
+
clojure.string.index_of = (function clojure$string$index_of(var_args){
|
|
384
|
+
var G__8132 = arguments.length;
|
|
385
|
+
switch (G__8132) {
|
|
386
|
+
case 2:
|
|
387
|
+
return clojure.string.index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
388
|
+
|
|
389
|
+
break;
|
|
390
|
+
case 3:
|
|
391
|
+
return clojure.string.index_of.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
|
|
392
|
+
|
|
393
|
+
break;
|
|
394
|
+
default:
|
|
395
|
+
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
|
|
396
|
+
|
|
397
|
+
}
|
|
398
|
+
});
|
|
399
|
+
|
|
400
|
+
(clojure.string.index_of.cljs$core$IFn$_invoke$arity$2 = (function (s,value){
|
|
401
|
+
var result = s.indexOf(value);
|
|
402
|
+
if((result < (0))){
|
|
403
|
+
return null;
|
|
404
|
+
} else {
|
|
405
|
+
return result;
|
|
406
|
+
}
|
|
407
|
+
}));
|
|
408
|
+
|
|
409
|
+
(clojure.string.index_of.cljs$core$IFn$_invoke$arity$3 = (function (s,value,from_index){
|
|
410
|
+
var result = s.indexOf(value,from_index);
|
|
411
|
+
if((result < (0))){
|
|
412
|
+
return null;
|
|
413
|
+
} else {
|
|
414
|
+
return result;
|
|
415
|
+
}
|
|
416
|
+
}));
|
|
417
|
+
|
|
418
|
+
(clojure.string.index_of.cljs$lang$maxFixedArity = 3);
|
|
419
|
+
|
|
420
|
+
/**
|
|
421
|
+
* Return last index of value (string or char) in s, optionally
|
|
422
|
+
* searching backward from from-index or nil if not found.
|
|
423
|
+
*/
|
|
424
|
+
clojure.string.last_index_of = (function clojure$string$last_index_of(var_args){
|
|
425
|
+
var G__8161 = arguments.length;
|
|
426
|
+
switch (G__8161) {
|
|
427
|
+
case 2:
|
|
428
|
+
return clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
429
|
+
|
|
430
|
+
break;
|
|
431
|
+
case 3:
|
|
432
|
+
return clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
|
|
433
|
+
|
|
434
|
+
break;
|
|
435
|
+
default:
|
|
436
|
+
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
|
|
437
|
+
|
|
438
|
+
}
|
|
439
|
+
});
|
|
440
|
+
|
|
441
|
+
(clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2 = (function (s,value){
|
|
442
|
+
var result = s.lastIndexOf(value);
|
|
443
|
+
if((result < (0))){
|
|
444
|
+
return null;
|
|
445
|
+
} else {
|
|
446
|
+
return result;
|
|
447
|
+
}
|
|
448
|
+
}));
|
|
449
|
+
|
|
450
|
+
(clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$3 = (function (s,value,from_index){
|
|
451
|
+
var result = s.lastIndexOf(value,from_index);
|
|
452
|
+
if((result < (0))){
|
|
453
|
+
return null;
|
|
454
|
+
} else {
|
|
455
|
+
return result;
|
|
456
|
+
}
|
|
457
|
+
}));
|
|
458
|
+
|
|
459
|
+
(clojure.string.last_index_of.cljs$lang$maxFixedArity = 3);
|
|
460
|
+
|
|
461
|
+
/**
|
|
462
|
+
* True if s starts with substr.
|
|
463
|
+
*/
|
|
464
|
+
clojure.string.starts_with_QMARK_ = (function clojure$string$starts_with_QMARK_(s,substr){
|
|
465
|
+
return goog.string.startsWith(s,substr);
|
|
466
|
+
});
|
|
467
|
+
/**
|
|
468
|
+
* True if s ends with substr.
|
|
469
|
+
*/
|
|
470
|
+
clojure.string.ends_with_QMARK_ = (function clojure$string$ends_with_QMARK_(s,substr){
|
|
471
|
+
return goog.string.endsWith(s,substr);
|
|
472
|
+
});
|
|
473
|
+
/**
|
|
474
|
+
* True if s includes substr.
|
|
475
|
+
*/
|
|
476
|
+
clojure.string.includes_QMARK_ = (function clojure$string$includes_QMARK_(s,substr){
|
|
477
|
+
return goog.string.contains(s,substr);
|
|
478
|
+
});
|
|
479
|
+
|
|
480
|
+
//# sourceMappingURL=clojure.string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["clojure/string.cljs"],"mappings":"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","names":["clojure.string/seq-reverse","coll","cljs.core.reduce","cljs.core/conj","clojure.string/re-surrogate-pair","js/RegExp","clojure.string/reverse","s","clojure.string/replace-all","re","replacement","r","G__8014","clojure.string/replace-with","f","args","matches","cljs.core.drop_last","cljs.core._EQ_","cljs.core/count","G__8020","cljs.core/first","G__8022","cljs.core/vec","clojure.string/replace","match","goog.string/regExpEscape","clojure.string/replace-first","var_args","G__8031","clojure.string/join","js/Error","sb","js/goog.string.StringBuffer","cljs.core/seq","cljs.core/next","separator","clojure.string/upper-case","clojure.string/lower-case","clojure.string/capitalize","goog.string/capitalize","clojure.string/pop-last-while-empty","v","cljs.core/peek","cljs.core/pop","clojure.string/discard-trailing-if-needed","limit","clojure.string/split-with-empty-regex","cljs.core.conj","cljs.core/cons","cljs.core.map","cljs.core/str","pred__8053","expr__8054","cljs.core/==","cljs.core/PersistentVector","c","cljs.core.subvec","cljs.core.subs","G__8073","clojure.string/split","clojure.string.split","parts","m","cljs.core/re-find","index","clojure.string/split-lines","clojure.string/trim","goog.string/trim","clojure.string/triml","goog.string/trimLeft","clojure.string/trimr","goog.string/trimRight","clojure.string/trim-newline","ch","cljs.core.get","clojure.string/blank?","goog.string/isEmptyOrWhitespace","goog.string/makeSafe","clojure.string/escape","cmap","buffer","length","G__8132","clojure.string/index-of","value","result","from-index","G__8161","clojure.string/last-index-of","clojure.string/starts-with?","substr","goog.string/startsWith","clojure.string/ends-with?","goog.string/endsWith","clojure.string/includes?","goog.string/contains"],"sourcesContent":["; Copyright (c) Rich Hickey. All rights reserved.\n; The use and distribution terms for this software are covered by the\n; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)\n; which can be found in the file epl-v10.html at the root of this distribution.\n; By using this software in any fashion, you are agreeing to be bound by\n; the terms of this license.\n; You must not remove this notice, or any other, from this software.\n\n(ns clojure.string\n (:refer-clojure :exclude [replace reverse])\n (:require [goog.string :as gstring])\n (:import [goog.string StringBuffer]))\n\n(defn- seq-reverse\n [coll]\n (reduce conj () coll))\n\n(def ^:private re-surrogate-pair\n (js/RegExp. \"([\\\\uD800-\\\\uDBFF])([\\\\uDC00-\\\\uDFFF])\" \"g\"))\n\n(defn ^string reverse\n \"Returns s with its characters reversed.\"\n [s]\n (-> (.replace s re-surrogate-pair \"$2$1\")\n (.. (split \"\") (reverse) (join \"\"))))\n\n(defn- replace-all\n [s re replacement]\n (let [r (js/RegExp. (.-source re)\n (cond-> \"g\"\n (.-ignoreCase re) (str \"i\")\n (.-multiline re) (str \"m\")\n (.-unicode re) (str \"u\")))]\n (.replace s r replacement)))\n\n(defn- replace-with\n [f]\n (fn [& args]\n (let [matches (drop-last 2 args)]\n (if (= (count matches) 1)\n (f (first matches))\n (f (vec matches))))))\n\n(defn ^string replace\n \"Replaces all instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace-first.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace \\\"Almost Pig Latin\\\" #\\\"\\\\b(\\\\w)(\\\\w+)\\\\b\\\" \\\"$2$1ay\\\")\n -> \\\"lmostAay igPay atinLay\\\"\"\n [s match replacement]\n (cond\n (string? match)\n (.replace s (js/RegExp. (gstring/regExpEscape match) \"g\") replacement)\n\n (instance? js/RegExp match)\n (if (string? replacement)\n (replace-all s match replacement)\n (replace-all s match (replace-with replacement)))\n\n :else (throw (str \"Invalid match arg: \" match))))\n\n(defn ^string replace-first\n \"Replaces the first instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace-first \\\"swap first two words\\\"\n #\\\"(\\\\w+)(\\\\s+)(\\\\w+)\\\" \\\"$3$2$1\\\")\n -> \\\"first swap two words\\\"\"\n [s match replacement]\n (.replace s match replacement))\n\n(defn join\n \"Returns a string of all elements in coll, as returned by (seq coll),\n separated by an optional separator.\"\n ([coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (recur (. sb (append (str (first coll)))) (next coll))\n ^string (.toString sb))))\n ([separator coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (do\n (. sb (append (str (first coll))))\n (let [coll (next coll)]\n (when-not (nil? coll)\n (. sb (append separator)))\n (recur sb coll)))\n ^string (.toString sb)))))\n\n(defn ^string upper-case\n \"Converts string to all upper-case.\"\n [s]\n (.toUpperCase s))\n\n(defn ^string lower-case\n \"Converts string to all lower-case.\"\n [s]\n (.toLowerCase s))\n\n(defn ^string capitalize\n \"Converts first character of the string to upper-case, all other\n characters to lower-case.\"\n [s]\n (gstring/capitalize s))\n\n;; The JavaScript split function takes a limit argument but the return\n;; value is not the same as the Java split function.\n;;\n;; Java: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b-c\"]\n;; JavaScript: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b\"]\n;;\n;; For consistency, the three arg version has been implemented to\n;; mimic Java's behavior.\n\n(defn- pop-last-while-empty\n [v]\n (loop [v v]\n (if (identical? \"\" (peek v))\n (recur (pop v))\n v)))\n\n(defn- discard-trailing-if-needed\n [limit v]\n (if (and (== 0 limit) (< 1 (count v)))\n (pop-last-while-empty v)\n v))\n\n(defn- split-with-empty-regex\n [s limit]\n (if (or (<= limit 0) (>= limit (+ 2 (count s))))\n (conj (vec (cons \"\" (map str (seq s)))) \"\")\n (condp == limit\n 1 (vector s)\n 2 (vector \"\" s)\n (let [c (- limit 2)]\n (conj (vec (cons \"\" (subvec (vec (map str (seq s))) 0 c))) (subs s c))))))\n\n(defn split\n \"Splits string on a regular expression. Optional argument limit is\n the maximum number of parts. Not lazy. Returns vector of the parts.\n Trailing empty strings are not returned - pass limit of -1 to return all.\"\n ([s re]\n (split s re 0))\n ([s re limit]\n (discard-trailing-if-needed limit\n (if (identical? \"/(?:)/\" (str re))\n (split-with-empty-regex s limit)\n (if (< limit 1)\n (vec (.split (str s) re))\n (loop [s s\n limit limit\n parts []]\n (if (== 1 limit)\n (conj parts s)\n (let [m (re-find re s)]\n (if-not (nil? m)\n (let [index (.indexOf s m)]\n (recur (.substring s (+ index (count m)))\n (dec limit)\n (conj parts (.substring s 0 index))))\n (conj parts s))))))))))\n\n(defn split-lines\n \"Splits s on \\\\n or \\\\r\\\\n. Trailing empty lines are not returned.\"\n [s]\n (split s #\"\\n|\\r\\n\"))\n\n(defn ^string trim\n \"Removes whitespace from both ends of string.\"\n [s]\n (gstring/trim s))\n\n(defn ^string triml\n \"Removes whitespace from the left side of string.\"\n [s]\n (gstring/trimLeft s))\n\n(defn ^string trimr\n \"Removes whitespace from the right side of string.\"\n [s]\n (gstring/trimRight s))\n\n(defn ^string trim-newline\n \"Removes all trailing newline \\\\n or return \\\\r characters from\n string. Similar to Perl's chomp.\"\n [s]\n (loop [index (.-length s)]\n (if (zero? index)\n \"\"\n (let [ch (get s (dec index))]\n (if (or (identical? \\newline ch)\n (identical? \\return ch))\n (recur (dec index))\n (.substring s 0 index))))))\n\n(defn ^boolean blank?\n \"True if s is nil, empty, or contains only whitespace.\"\n [s]\n (gstring/isEmptyOrWhitespace (gstring/makeSafe s)))\n\n(defn ^string escape\n \"Return a new string, using cmap to escape each character ch\n from s as follows:\n\n If (cmap ch) is nil, append ch to the new string.\n If (cmap ch) is non-nil, append (str (cmap ch)) instead.\"\n [s cmap]\n (let [buffer (StringBuffer.)\n length (.-length s)]\n (loop [index 0]\n (if (== length index)\n (. buffer (toString))\n (let [ch (.charAt s index)\n replacement (cmap ch)]\n (if-not (nil? replacement)\n (.append buffer (str replacement))\n (.append buffer ch))\n (recur (inc index)))))))\n\n(defn index-of\n \"Return index of value (string or char) in s, optionally searching\n forward from from-index or nil if not found.\"\n ([s value]\n (let [result (.indexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.indexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn last-index-of\n \"Return last index of value (string or char) in s, optionally\n searching backward from from-index or nil if not found.\"\n ([s value]\n (let [result (.lastIndexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.lastIndexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn ^boolean starts-with?\n \"True if s starts with substr.\"\n [s substr]\n (gstring/startsWith s substr))\n\n(defn ^boolean ends-with?\n \"True if s ends with substr.\"\n [s substr]\n (gstring/endsWith s substr))\n\n(defn ^boolean includes?\n \"True if s includes substr.\"\n [s substr]\n (gstring/contains s substr))\n"],"x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import "./cljs_env.js";
|
|
2
|
+
import "./cljs.core.js";
|
|
3
|
+
goog.provide('clojure.walk');
|
|
4
|
+
/**
|
|
5
|
+
* Traverses form, an arbitrary data structure. inner and outer are
|
|
6
|
+
* functions. Applies inner to each element of form, building up a
|
|
7
|
+
* data structure of the same type, then applies outer to the result.
|
|
8
|
+
* Recognizes all Clojure data structures. Consumes seqs as with doall.
|
|
9
|
+
*/
|
|
10
|
+
clojure.walk.walk = (function clojure$walk$walk(inner,outer,form){
|
|
11
|
+
if(cljs.core.list_QMARK_(form)){
|
|
12
|
+
var G__8648 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));
|
|
13
|
+
return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__8648) : outer.call(null,G__8648));
|
|
14
|
+
} else {
|
|
15
|
+
if(cljs.core.map_entry_QMARK_(form)){
|
|
16
|
+
var G__8651 = (new cljs.core.MapEntry((function (){var G__8653 = cljs.core.key(form);
|
|
17
|
+
return (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__8653) : inner.call(null,G__8653));
|
|
18
|
+
})(),(function (){var G__8655 = cljs.core.val(form);
|
|
19
|
+
return (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__8655) : inner.call(null,G__8655));
|
|
20
|
+
})(),null));
|
|
21
|
+
return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__8651) : outer.call(null,G__8651));
|
|
22
|
+
} else {
|
|
23
|
+
if(cljs.core.seq_QMARK_(form)){
|
|
24
|
+
var G__8658 = cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));
|
|
25
|
+
return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__8658) : outer.call(null,G__8658));
|
|
26
|
+
} else {
|
|
27
|
+
if(cljs.core.record_QMARK_(form)){
|
|
28
|
+
var G__8662 = cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (r,x){
|
|
29
|
+
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(x) : inner.call(null,x)));
|
|
30
|
+
}),form,form);
|
|
31
|
+
return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__8662) : outer.call(null,G__8662));
|
|
32
|
+
} else {
|
|
33
|
+
if(cljs.core.coll_QMARK_(form)){
|
|
34
|
+
var G__8665 = cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.empty(form),cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));
|
|
35
|
+
return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__8665) : outer.call(null,G__8665));
|
|
36
|
+
} else {
|
|
37
|
+
return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(form) : outer.call(null,form));
|
|
38
|
+
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
/**
|
|
46
|
+
* Performs a depth-first, post-order traversal of form. Calls f on
|
|
47
|
+
* each sub-form, uses f's return value in place of the original.
|
|
48
|
+
* Recognizes all Clojure data structures. Consumes seqs as with doall.
|
|
49
|
+
*/
|
|
50
|
+
clojure.walk.postwalk = (function clojure$walk$postwalk(f,form){
|
|
51
|
+
return clojure.walk.walk(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(clojure.walk.postwalk,f),f,form);
|
|
52
|
+
});
|
|
53
|
+
/**
|
|
54
|
+
* Like postwalk, but does pre-order traversal.
|
|
55
|
+
*/
|
|
56
|
+
clojure.walk.prewalk = (function clojure$walk$prewalk(f,form){
|
|
57
|
+
return clojure.walk.walk(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(clojure.walk.prewalk,f),cljs.core.identity,(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(form) : f.call(null,form)));
|
|
58
|
+
});
|
|
59
|
+
/**
|
|
60
|
+
* Recursively transforms all map keys from strings to keywords.
|
|
61
|
+
*/
|
|
62
|
+
clojure.walk.keywordize_keys = (function clojure$walk$keywordize_keys(m){
|
|
63
|
+
var f = (function (p__8680){
|
|
64
|
+
var vec__8681 = p__8680;
|
|
65
|
+
var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__8681,(0),null);
|
|
66
|
+
var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__8681,(1),null);
|
|
67
|
+
if(typeof k === 'string'){
|
|
68
|
+
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(k),v], null);
|
|
69
|
+
} else {
|
|
70
|
+
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
return clojure.walk.postwalk((function (x){
|
|
74
|
+
if(cljs.core.map_QMARK_(x)){
|
|
75
|
+
return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,x));
|
|
76
|
+
} else {
|
|
77
|
+
return x;
|
|
78
|
+
}
|
|
79
|
+
}),m);
|
|
80
|
+
});
|
|
81
|
+
/**
|
|
82
|
+
* Recursively transforms all map keys from keywords to strings.
|
|
83
|
+
*/
|
|
84
|
+
clojure.walk.stringify_keys = (function clojure$walk$stringify_keys(m){
|
|
85
|
+
var f = (function (p__8696){
|
|
86
|
+
var vec__8700 = p__8696;
|
|
87
|
+
var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__8700,(0),null);
|
|
88
|
+
var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__8700,(1),null);
|
|
89
|
+
if((k instanceof cljs.core.Keyword)){
|
|
90
|
+
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.name(k),v], null);
|
|
91
|
+
} else {
|
|
92
|
+
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
return clojure.walk.postwalk((function (x){
|
|
96
|
+
if(cljs.core.map_QMARK_(x)){
|
|
97
|
+
return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,x));
|
|
98
|
+
} else {
|
|
99
|
+
return x;
|
|
100
|
+
}
|
|
101
|
+
}),m);
|
|
102
|
+
});
|
|
103
|
+
/**
|
|
104
|
+
* Recursively transforms form by replacing keys in smap with their
|
|
105
|
+
* values. Like clojure/replace but works on any data structure. Does
|
|
106
|
+
* replacement at the root of the tree first.
|
|
107
|
+
*/
|
|
108
|
+
clojure.walk.prewalk_replace = (function clojure$walk$prewalk_replace(smap,form){
|
|
109
|
+
return clojure.walk.prewalk((function (x){
|
|
110
|
+
if(cljs.core.contains_QMARK_(smap,x)){
|
|
111
|
+
return (smap.cljs$core$IFn$_invoke$arity$1 ? smap.cljs$core$IFn$_invoke$arity$1(x) : smap.call(null,x));
|
|
112
|
+
} else {
|
|
113
|
+
return x;
|
|
114
|
+
}
|
|
115
|
+
}),form);
|
|
116
|
+
});
|
|
117
|
+
/**
|
|
118
|
+
* Recursively transforms form by replacing keys in smap with their
|
|
119
|
+
* values. Like clojure/replace but works on any data structure. Does
|
|
120
|
+
* replacement at the leaves of the tree first.
|
|
121
|
+
*/
|
|
122
|
+
clojure.walk.postwalk_replace = (function clojure$walk$postwalk_replace(smap,form){
|
|
123
|
+
return clojure.walk.postwalk((function (x){
|
|
124
|
+
if(cljs.core.contains_QMARK_(smap,x)){
|
|
125
|
+
return (smap.cljs$core$IFn$_invoke$arity$1 ? smap.cljs$core$IFn$_invoke$arity$1(x) : smap.call(null,x));
|
|
126
|
+
} else {
|
|
127
|
+
return x;
|
|
128
|
+
}
|
|
129
|
+
}),form);
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
//# sourceMappingURL=clojure.walk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["clojure/walk.cljs"],"mappings":"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","names":["clojure.walk/walk","inner","outer","form","cljs.core/list?","G__8648","cljs.core.apply","cljs.core/list","cljs.core.map","cljs.core/map-entry?","G__8651","cljs.core/MapEntry","G__8653","cljs.core/key","G__8655","cljs.core/val","cljs.core/seq?","G__8658","cljs.core.doall","cljs.core/record?","G__8662","cljs.core.reduce","r","x","cljs.core.conj","cljs.core/coll?","G__8665","cljs.core.into","cljs.core/empty","clojure.walk/postwalk","f","cljs.core.partial","clojure.walk/prewalk","cljs.core/identity","clojure.walk/keywordize-keys","m","p__8680","vec__8681","cljs.core.nth","k","v","cljs.core.keyword","cljs.core/map?","clojure.walk/stringify-keys","p__8696","vec__8700","cljs.core/Keyword","cljs.core/name","clojure.walk/prewalk-replace","smap","cljs.core/contains?","clojure.walk/postwalk-replace"],"sourcesContent":["; Copyright (c) Rich Hickey. All rights reserved.\n; The use and distribution terms for this software are covered by the\n; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)\n; which can be found in the file epl-v10.html at the root of this distribution.\n; By using this software in any fashion, you are agreeing to be bound by\n; the terms of this license.\n; You must not remove this notice, or any other, from this software.\n\n;;; walk.cljs - generic tree walker with replacement\n\n;; by Stuart Sierra\n;; Jul5 17, 2011\n\n;; CHANGE LOG:\n;;\n;; * July 17, 2011: Port to ClojureScript\n;; \n;; * December 15, 2008: replaced 'walk' with 'prewalk' & 'postwalk'\n;;\n;; * December 9, 2008: first version\n\n\n(ns \n ^{:author \"Stuart Sierra\",\n :doc \"This file defines a generic tree walker for Clojure data\nstructures. It takes any data structure (list, vector, map, set,\nseq), calls a function on every element, and uses the return value\nof the function in place of the original. This makes it fairly\neasy to write recursive search-and-replace functions, as shown in\nthe examples.\n\nNote: \\\"walk\\\" supports all Clojure data structures EXCEPT maps\ncreated with sorted-map-by. There is no (obvious) way to retrieve\nthe sorting function.\"}\n clojure.walk)\n\n(defn walk\n \"Traverses form, an arbitrary data structure. inner and outer are\n functions. Applies inner to each element of form, building up a\n data structure of the same type, then applies outer to the result.\n Recognizes all Clojure data structures. Consumes seqs as with doall.\"\n\n {:added \"1.1\"}\n [inner outer form]\n (cond\n (list? form) (outer (apply list (map inner form)))\n (map-entry? form)\n (outer (MapEntry. (inner (key form)) (inner (val form)) nil))\n (seq? form) (outer (doall (map inner form)))\n (record? form) (outer (reduce (fn [r x] (conj r (inner x))) form form))\n (coll? form) (outer (into (empty form) (map inner form)))\n :else (outer form)))\n\n(defn postwalk\n \"Performs a depth-first, post-order traversal of form. Calls f on\n each sub-form, uses f's return value in place of the original.\n Recognizes all Clojure data structures. Consumes seqs as with doall.\"\n {:added \"1.1\"}\n [f form]\n (walk (partial postwalk f) f form))\n\n(defn prewalk\n \"Like postwalk, but does pre-order traversal.\"\n {:added \"1.1\"}\n [f form]\n (walk (partial prewalk f) identity (f form)))\n\n(defn keywordize-keys\n \"Recursively transforms all map keys from strings to keywords.\"\n {:added \"1.1\"}\n [m]\n (let [f (fn [[k v]] (if (string? k) [(keyword k) v] [k v]))]\n ;; only apply to maps\n (postwalk (fn [x] (if (map? x) (into {} (map f x)) x)) m)))\n\n(defn stringify-keys\n \"Recursively transforms all map keys from keywords to strings.\"\n {:added \"1.1\"}\n [m]\n (let [f (fn [[k v]] (if (keyword? k) [(name k) v] [k v]))]\n ;; only apply to maps\n (postwalk (fn [x] (if (map? x) (into {} (map f x)) x)) m)))\n\n(defn prewalk-replace\n \"Recursively transforms form by replacing keys in smap with their\n values. Like clojure/replace but works on any data structure. Does\n replacement at the root of the tree first.\"\n {:added \"1.1\"}\n [smap form]\n (prewalk (fn [x] (if (contains? smap x) (smap x) x)) form))\n\n(defn postwalk-replace\n \"Recursively transforms form by replacing keys in smap with their\n values. Like clojure/replace but works on any data structure. Does\n replacement at the leaves of the tree first.\"\n {:added \"1.1\"}\n [smap form]\n (postwalk (fn [x] (if (contains? smap x) (smap x) x)) form))\n"],"x_google_ignoreList":[0]}
|